2012-12-20 47 views
1

當我試圖創建各種表,通過導入SQL的一個項目中,MySQL返回此錯誤:MySQL不能創建因爲鎖錯誤(錯誤號:147)的表

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

在谷歌展望對於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

我終於找到了方法,在創建我的表之前,我將innodb_table_locks關閉,然後重新啓用它。

SET innodb_table_locks = 0; 

// Create tables 

SET innodb_table_locks = 1;