まとまりのないブログ

something which something is something

mysql

mysqlのレプリケーションでのエラー

投稿日:

[ERROR] Slave: Error ‘You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘sql’ at line 1′ on query. Default database: ‘auc’. Query: ‘sql’, Error_code: 1064
090327 10:51:03 [ERROR] Error running query, slave SQL thread aborted. Fix the problem, and restart the slave SQL thread with “SLAVE START”. We stopped at log ‘mysql-bin.000006’ position 79696519

おかしい。マスターでは問題ないのに、レプリケーションしているスレーブでエラーが発生している。エラーメッセージを見る限りではsqlのシンタックスエラーが起こっているということになっている。仮に、本当にsqlシンタックスエラーがあるのならば、マスターでそれは感知しないといけないことだけれど、それがないということはレプリケーションが取得するマスターのログに問題がありそうな気配が濃厚になってくる。もう一度マスターのレプリケーションの設定を見直す必要があるかもしれない。

とりあえずの対処法は、このエラーが発生した箇所をスキップする。

mysql> set global sql_slave_skip_counter = 1;
Query OK, 0 rows affected (0.00 sec)
mysql> start slave;

sql_slave_skip_counterに1を入れることで現在止まっているエラー箇所を飛ばす、ということになるのかな。start slaveでまたスレーブ動作を開始する。

その後

もう少し調べ見ると、マスターで作られたログファイルと、スレーブが取得したログファイルの内容が微妙に違っているということが判明した。問題が起こっているのはスレーブがマスターから取得してきたはずのログファイルで、どういうわけかsqlのシンタックスエラーがところどころ発生するような形でリレーログを作成している。

-mysql

執筆者:


comment

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

no image

mysqlのmy.iniの標準値のメモ

mysqlのmy.iniファイルのサンプルの設定ファイルの値がどのように設定されているかチェック。mysqldの設定例を抜き出してみる。設定するときの参考にはなるだろうと思うので。

no image

マシンスペックとデータベースのパフォーマンスの関係

マシンが高性能であればあるほど良いに越したことはないが、データベースソフトウェアのパフォーマンスにおいてはマシンの高性能化はあまり意味があるとはいえない。データベースのパフォーマンスを向上させるために …

no image

mysqlの運用時のトラブルと試行錯誤のメモ

条件 1分間にクエリの実行が30回〜60回程度発生する。 結果のテーブルは7フィールドの数千〜10万件レコード程度のテーブル mysqlのスペックはCPUがcore2duo,メモリが8GB,他のサービ …

no image

UbuntuのMySQLの起動と停止

UbuntuにMySQLをソースから/usr/local/mysqlにインストールした場合。

no image

Wrong bytesec: 49-48-48 at linkstart: 14313808772

またテーブルのクラッシュ。mysqlのテーブルがクラッシュする頻度が激増してきた。以前はこんなことなかったのだが・・・。今は一日一回発生して絶えず見張っていなければならないという状態になってしまってい …