我有 innodb 表(它们都在同一个文件中,这个文件变得非常大,大约 8GB) 当我在这个表中插入一行时(这个表包含大约 100 万条记录),这个插入语句大约需要 30 秒!!! 无论如何要改善这个问题? 任何想法都受到高度赞赏
CREATE TABLE userdata ( userno blob NOT NULL, amount double(11,2), active enum('0','1') default '0', used enum('0','1') default '0', ActionTime timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, Bonus enum('0','1') default '0', UserType enum('Perm','Temp') NOT NULL default 'Perm', serial_number bigint(20) NOT NULL default '0', PRIMARY KEY (userno(50)), KEY AIX (active), KEY UIX (used), KEY Id (userno(20),active), KEY UI (userno(50)), KEY SNI (serial_number) ) ENGINE=InnoDB DEFAULT CHARSET=latin1
最佳答案
将 BLOB
作为 PRIMARY KEY
并不是最好的主意。
你能把它的数据类型改成INT
吗?
关于mysql innodb 插入语句需要很长时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4076784/