1

インポート 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
4

1 に答える 1

0

私はついにそれを行う方法を見つけましたinnodb_table_locks。テーブルを作成する前にオフに切り替えてから、再度有効にしました。

SET innodb_table_locks = 0;

// Create tables

SET innodb_table_locks = 1;
于 2012-12-20T15:29:48.733 に答える