mariaDBレプリケーションエラー Table ‘mysql.gtid_slave_pos’ doesn’t exist in engine にはまったので記録しておきます。
1 |
mysql> show slave status; |
1 2 3 |
で以下のようなエラーが。 Last_Error:Unable to load replication GTID slave state from mysql.gtid_slave_pos: Table 'mysql.gtid_slave_pos' doesn't exist in engine Last_SQL_Error:Unable to load replication GTID slave state from mysql.gtid_slave_pos: Table 'mysql.gtid_slave_pos' doesn't exist in engine |
mysql.gtid_slave_pos テーブルがないとの事なのですが
1 2 |
mysql> use mysql; mysql> show tables; |
で確認するとある
dropしてみようとしてみてもダメ
1 2 |
<span class="crayon-e">Drop </span><span class="crayon-e">table table_name</span><span class="crayon-sy">;</span> <span class="crayon-o">-></span> <span class="crayon-i">ERROR</span> <span class="crayon-cn">1051</span> <span class="crayon-sy">(</span><span class="crayon-cn">42S02</span><span class="crayon-sy">)</span><span class="crayon-o">:</span> <span class="crayon-e">Unknown </span><span class="crayon-i">table</span> <span class="crayon-s">'db.table_name'</span> |
createしてみてもダメ
1 |
<span class="crayon-s">'TableName'</span> <span class="crayon-e">already </span><span class="crayon-v">exists</span> |
結果
1 |
/var/lib/mysql/mysql/ |
にある
1 |
gtid_slave_pos.ibd |
を退避するとdrop可能となった。
その後createしたら出来た。
masterとslave両方なったので両方やった。