Mysql マスタースレーブ同期 Last_IO_Errno:1236 エラー解決

Mysql マスタースレーブ同期 Last_IO_Errno:1236 エラー解決

Mysql マスタースレーブ同期の Last_IO_Errno:1236 エラーの原因は何ですか? この問題を解決するにはどうすればよいでしょうか? エディターを使用してこの問題の記録と解決策を見てみましょう。

<script>ec(2);</script>

サーバーからのエラーコード:

最終IOエラー番号: 1236
Last_IO_Error: バイナリ ログからデータを読み取るときに、マスターから致命的なエラー 1236 が発生しました: 「スレーブは、マスターがログに記録するように設定されているチェックサムでレプリケーション イベントを処理できません。最初のイベントは 'mysql-bin.000005' で 16750821、最後のイベントは '/usr/local/mysql/Binlog/mysql-bin.000005' から 16750821 に読み取られ、最後のバイトは '/usr/local/mysql/Binlog/mysql-bin.000005' から 120 に読み取られました。」

理由を大まかに分析した結果、個人的には、最も可能性が高い要因は、① MySQL のバージョンが異なること、② バックアップが不完全であることであると考えます。この問題は、同じバージョンの以前の MySQL 構成では発生しませんでした。 (時間の問題、特定のテスト理由なし)

メイン サーバーは、前回の PHP によるダウンタイムのため、MySQL の最新バージョン (5.6.29) にアップグレードされましたが、スレーブ サーバーはコンパイル時に 5.5.49 バージョンの DB を使用していました。したがって、この問題が原因である可能性があると推測します。公式ドキュメントを読んでおらず、これは単なる個人的な推測です。

バージョンの違いによって発生するもう 1 つの問題は次のとおりです。

[root@バックアップ tmp]# /usr/local/mysql/bin/mysql -uroot -p <./all.sql 
パスワードを入力してください: 
279 行目のエラー 1064 (42000): SQL 構文にエラーがあります。11 行目の 'STATS_PERSISTENT=0' 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

私は怠け者だったので、同じバージョンの MySQL を再コンパイルしました。バージョンが異なっていたため、具体的な理由を注意深く調べませんでした。

スレーブはエラーメソッドを一時的にスキップします:

マイグレーション

mysql>スレーブ停止; #スレーブを停止する
mysql> グローバル SQL_SLAVE_SKIP_COUNTER を 1 に設定します。
mysql>スレーブ開始; #スレーブを開始

スレーブでエラーを永続的にスキップする方法:

vi /etc/my.cnf
[mysqld]
slave-skip-errors=1062,1053,1146 #指定されたエラー番号タイプのエラーをスキップします #slave-skip-errors=all #すべてのエラーをスキップします

要約する

以上が、Mysql マスター スレーブ同期におけるエラー Last_IO_Errno:1236 の解決方法に関するこの記事の内容のすべてです。皆様のお役に立てれば幸いです。もっと良い解決策がありましたら、メッセージを残して一緒に話し合いましょう。

興味のある方は、「MySQL テーブルのソート規則におけるさまざまなエラー問題の分析」、「エンタープライズ プロダクション MySQL 最適化の概要」、「MYSQL サブクエリとネストされたクエリの最適化例の分析」などを参照してください。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。このサイトをサポートしてくれた友人たちに感謝します!

以下もご興味があるかもしれません:
  • MySQL マスタースレーブ同期、トランザクションロールバックの実装原理
  • MySQLデータベースのマスタースレーブ同期の実際のプロセスの詳細な説明
  • MySQL マスタースレーブ同期における server-id の例の詳細な説明
  • Centos7 システムでの MySQL マスター スレーブ同期構成スキーム
  • MySQL マスタースレーブ同期遅延の原因と解決策
  • MySQL マスタースレーブ同期メカニズムと同期遅延問題追跡プロセス
  • MySQLデータベースのマスタースレーブ同期構成と読み取り書き込み分離
  • Mysqlマスタースレーブ同期の実装原理
  • Mysql マスタースレーブ同期構成の実践の詳細な説明
  • Windows での MySQL マスター スレーブ同期の詳細な説明
  • MySQLデータベースでマスタースレーブ同期を設定する方法の詳細な説明
  • Mysql データベースのマスタースレーブ同期構成

<<:  js キャンバスはランダムなパーティクル効果を実現します

>>:  Linux および Unix サーバーのセキュリティを強化する方法

推薦する

VMware Workstationはデバイス/資格情報ガードと互換性がありません

仮想マシンをインストールするときに、「VMware ワークステーションはデバイス/資格情報ガードと互...

Ubuntu での MySQL および MySQL Workbench のインストール チュートリアル

Ubuntu に jdk をインストールする: [リンク] UbuntuにEclipseをインストー...

MySQLインストール後のデフォルトデータベースの役割の詳細な説明

MySQL を学習すると、インストール後にいくつかのデフォルトのデータベースが付属していることに気付...

JSにおける4つのデータ型判定方法

目次1. 型2. インスタンス3. コンストラクター4.toString() この記事では、4 つの...

ウェブサイトデザインに関するヒント

実は、最近はウェブデザインについてよく耳にするようになりました。インターネット業界は今とても発展して...

VMware仮想マシンの起動時に黒い画面が表示される問題を解決する

# VMware ハードディスクの起動優先順位を調整するステップ 1: 電源をオンにすると、BIOS...

MySql ページングで limit+order by を使用する場合のデータ重複の解決策

目次まとめ問題の説明問題を分析する問題を解決するまとめ複雑な知識をシンプルに説明できることは重要です...

WeChatミニプログラムマップの使い方を詳しく解説

この記事の例では、WeChatアプレットマップで使用される具体的な実装コードを参考までに共有していま...

指定したディレクトリに nginx をインストールする方法の例

会社の要件により、異なる場所にある 2 つの nginx サーバーを同じマシンにインストールする必要...

Vue カプセル化 TabBar コンポーネントの完全なステップ記録

目次実装のアイデア:ステップ 1: TabBar と TabBarItem のコンポーネント カプセ...

フロントエンドJavaScriptは関数のカリー化を完全に理解している

目次1. カレーとは何か2. カレーの用途3. カリー化ユーティリティ関数をカプセル化する方法 1....

HTML 順序なしリスト 箇条書き 画像を使用した CSS の記述

少なくとも 5 冊のベストセラー書籍の順序なしリストを含む HTML ページを作成します。各書籍の前...

初心者がソースコードからMySQLのデッドロック問題を理解する

夜遅くまで何度も困難なシングルステップデバッグを行った後、ようやく理想的なブレークポイントを見つけま...

Vueは小さなカウントダウン機能を実装します

多くのプロジェクトでは、検証コードの送信など、カウントダウン機能を実装する必要があります。ここで、簡...

Dockerはdockerfileを使用してnode.jsアプリケーションを起動します

Dockerfileの作成expressによって自動的に作成されたディレクトリを例にとると、ディレク...