MySQL因锁定错误而无法创建表(错误号:147)

时间:2012-12-20 10:28:45

标签: mysql locking innodb

当我尝试通过import sql为项目创建各种表时,MySQL会返回此错误:

#1005 - Can't create table 'mybase.mytable' (errno: 147) 

在Google上查看147,我发现:

  

MySQL错误代码147:锁定表已满;使用更大的锁定表重新启动程序

嗯,好吧,但我不知道该怎么做,要修改什么(有很多锁变量)。

我应该修改什么?什么?

这是我所有“锁定”变量的结果:

innodb_autoinc_lock_mode          1
innodb_lock_wait_timeout          50
innodb_locks_unsafe_for_binlog    OFF
innodb_table_locks                ON
key_cache_block_size              1024
locked_in_memory                  OFF
max_write_lock_count              18446744073709551615
query_alloc_block_size            8192
query_cache_wlock_invalidate      OFF
range_alloc_block_size            4096
skip_external_locking             ON
table_lock_wait_timeout           50
transaction_alloc_block_size      8192

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我终于找到了如何做到这一点,在创建表格之前我将innodb_table_locks关闭了,然后重新启用它。

SET innodb_table_locks = 0;

// Create tables

SET innodb_table_locks = 1;