読者です 読者をやめる 読者になる 読者になる

BIGINTを使う

MogileFS

MOG_FIDSIZEにbigを指定する。

$ MOG_FIDSIZE="big" mogdbsetup

作成されるスキーマは次のようになる。

mysql> show create table file\G
*************************** 1. row ***************************
       Table: file
Create Table: CREATE TABLE `file` (
  `fid` bigint(20) unsigned NOT NULL,
  `dmid` smallint(5) unsigned NOT NULL,
  `dkey` varchar(255) default NULL,
  `length` int(10) unsigned default NULL,
  `classid` tinyint(3) unsigned NOT NULL,
  `devcount` tinyint(3) unsigned NOT NULL,
  PRIMARY KEY  (`fid`),
  UNIQUE KEY `dkey` (`dmid`,`dkey`),
  KEY `devcount` (`dmid`,`classid`,`devcount`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.01 sec)

Via.