mysql innodb 插入语句需要很长时间

标签 mysql innodb

我有 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/

相关文章:

java - MySQL:更新表列,同时将日期格式格式化为其他格式不起作用

mysql - InnoDB:启动mamp时无法锁定错误45

MySQL auto_increment innodb_autoinc_lock_mode = 2 但有时仍按顺序填充

mysql - 当 MYSQL 中 BEFORE DELETE ON "table"触发器失败时会发生什么?

php - friend ,我尝试将HTML表单中的数据插入Mysql数据库,但它不起作用,也找不到错误

java - 从java调用sql过程

php - 通过接口(interface)向mysql插入数据出错

mysql - 使用 grails 将数据从一个数据库表导入到另一个数据库表

mysql - 为什么 MySQL InnoDB 插入这么慢?

mysql - 将引擎类型从 MyISAM 更改为 InnoDB