MySQL Binlog ログの読み取り時によくある 3 つのエラー

MySQL Binlog ログの読み取り時によくある 3 つのエラー

1. mysqlbinlog: [エラー] 不明な変数 'default-character-set=utf8mb4'

my.cnf に default-character-set=utf8mb4 オプションを追加すると、mysqlbinlog で binlog を表示するときにエラーが報告されます。

解決策: .mysqlbinlogの後に--no-defaultsオプションを追加します。

例えば:

mysql bin 実行ファイル パス /bin/mysqlbinlog --no-defaults binlog ディレクトリ /mysql_bin.000005

2. 24 行目の ERROR 1840 (HY000): @@GLOBAL.GTID_PURGED は、@@GLOBAL.GTID_EXECUTED が空の場合にのみ設定できます。

mysqldump を使用してデータをエクスポートし、データベースを移行します。移行時に上記のエラーが報告されました。

クエリの理由は、現在の GTID_EXECUTED パラメータにはすでに値があり、ソース データベースのダンプ ファイルに SET @@GLOBAL.GTID_PURGED 操作が含まれていることです。

解決:

方法1: マターをリセットする

この操作により、現在のライブラリのGTID_EXECUTED値をクリアできます。

方法 2: --set-gtid-purged=off

ダンプするときに、gtid 情報のエクスポートを回避するために --set-gtid-purged=off パラメータを追加します。

mysqldump --set-gtid-purged=off -d dbtest > dbtest.sql

3. 23 行目のエラー 1782 (HY000): @@GLOBAL.GTID_MODE = ON の場合、@@SESSION.GTID_NEXT を ANONYMOUS に設定することはできません。

mysqlbinlog ツールを使用して、リカバリ (部分リカバリ) に --stop-position と --start-position を指定すると、エラーが報告されます。

たとえば、binlog のデータは次のようになります。

Gtid (648) に対応する Pos ではなく、Query (713) に対応する開始点を選択すると、エラーが報告されます。

次の記述エラー:

インストールパス/ bin/mysqlbinlog --no-defaults --start-position=713 --stop-position=1646

次の記述ではエラーは報告されません。

インストール パス/bin/mysqlbinlog --no-defaults --start-position=648 --stop-position=1646 .........

要約する

上記は、私がご紹介した MySQL Binlog ログの読み取り時によくある 3 つのエラーです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • MySQLデータベースのbinlogクリーンアップコマンドの詳細な説明
  • mysql binlog (バイナリログ) を表示する方法
  • mysql binlog ログを正しくクリーンアップする 2 つの方法
  • MySQL の binlog ログと、binlog ログを使用してデータを回復する方法を説明します。
  • MySQL データベースの Binlog 使用法の概要 (必読)
  • MySQL binlog ログを自動的にクリーンアップする方法
  • MySQLデータベースのログファイル(binlog)を自動的に復元する方法を説明します
  • [MySQL binlog] MySQL の混合ログ形式の binlog を徹底的に解析する方法
  • mysql binlog バイナリログの詳細な説明
  • MySQL binlog の解析

<<:  Linuxオペレーティングシステムは、タスクマネージャーの視覚化機能を実装するためにPythonを使用しています。

>>:  JavaScriptはeコマースプラットフォームの製品詳細を実装します

推薦する

Mysql のいくつかの複雑な SQL ステートメント (重複行のクエリと削除)

1. 重複行を見つける blog_user_relation a から * を選択 WHERE (...

Linux システムで Vim を使用してリモート ファイルを読み書きするコマンドの詳細な説明

vim の動作モードを設定する (一時的) :set (モード情報) :set nu — 行番号を表...

JS のあらゆる場所で絶対等価演算子の使用をやめる

目次概要1. NULL値のテスト2. ユーザー入力を読み取る導入事実の根源はどこにあるのでしょうか?...

負荷分散の基礎知識とnginxを使用した負荷分散の簡単な例

Nginx は、一般的に 7 層の負荷分散に使用できます。この記事では、負荷分散に関する基本的な知識...

Dockerスペースがいっぱいでコンテナに入れない場合の解決策

トラブル発生が突然で、業務も迫っていたため、現場のスクリーンショットを撮る時間がありませんでしたので...

Centos7 で keepalived ログを別のパスに設定する方法の詳細な説明

Keepalived のインストール: cd <keepalived_sourcecode_p...

vuexプロジェクトにおけるログインステータス管理の実践プロセス

目次道具:ログインシナリオ:練習する:シナリオ1: 思考と実践シナリオ2: 思考と実践要約する道具:...

Dockerのヘルス検出メカニズム

コンテナの場合、最も単純なヘルスチェックはプロセス レベルのヘルスチェックであり、プロセスが稼働して...

HTMLシールドの右クリックメニューと左クリック入力機能の例

右クリックメニューを無効にする <body oncontextmenu=self.event....

CSS3を使用してボタンホバーフラッシュダイナミック特殊効果コードを実装する

CSS3 の列シリーズ属性を使用してウォーターフォールレイアウトを作成する方法を紹介しました。興味の...

Vue+elementUI コンポーネントは、折りたたみ可能な動的レンダリングのマルチレベル サイドバー ナビゲーションを再帰的に実装します。

かなり前に実装された機能ですが、クリックすると選択したメニュー項目の背景色が白くなることに気付きまし...

バックエンドから返される 100,000 個のデータをフロントエンドでより適切に表示するにはどうすればよいですか?

目次予備作業バックエンド構築フロントエンドページダイレクトレンダリングsetTimeout ページン...

vue3+electron12+dll 開発のためのクライアント構成の詳細な説明

目次リポジトリソースを変更する起動するvue-devtoolsを置き換える予防ボーダーレスウィンドウ...

Linux運用保守ツールSupervisor(プロセス管理ツール)のインストールと使用

1. はじめにSupervisor は Python で開発された汎用プロセス管理プログラムです。通...

js はランダムロールコールを実装します

この記事では、ランダムロールコールを実装するためのjsの具体的なコードを参考までに共有します。具体的...