MySQL マスター スレーブ レプリケーション環境を設定する場合、マスター データベースとスレーブ データベースの両方でユーザーのアカウント パスワードを初期化する必要があるシナリオに遭遇することがよくあります。通常の状況では、ユーザー情報をインポートする前に、マスター データベースとスレーブ データベースの両方でセッション レベルの binlog をオフにする必要があります。 ただし、セッションレベルのバイナリログを閉じるという事前アクションが無視される場合もあります。たとえば、GTIDベースのレプリケーションモードでは、マスターライブラリとスレーブライブラリがユーザーのアカウントとパスワード情報を直接インポートします。マスターライブラリとスレーブライブラリは、アカウントとパスワードのトランザクションを独自のGTIDに記録します。このとき、GTID方式を使用してレプリケーションを構築すると、エラーが発生します。スレーブライブラリにはすでにアカウントがあるため、マスターライブラリからスレーブライブラリに同期されたユーザー情報にエラーが発生し、ユーザーがすでに存在することを示します。この場合、マスターライブラリからコピーされたユーザーをスレーブライブラリに作成するためのSQL文をスキップする必要があります。 GTID モードでは、次の方法でトランザクションをスキップできます。 奴隷を停止します。 gtid_next=xxxxx を設定します。 始める; 専念; gtid_next=自動を設定します。 スレーブを起動します。 ただし、トランザクションが多数ある場合は、1 つずつスキップすることはできません。同じエラーを一括でスキップする必要があります。これを処理する方法はいくつかあります。 MySQL レプリケーション問題の 3 つのパラメータの紹介 それぞれslave_skip_errorsパラメータまたはslave_exec_modeパラメータを調整します。 今日は、pt-slave-restart ツールを使用してトランザクションをスキップする別の方法を見ていきます。コマンドは次のとおりです。 ./pt-スレーブ再起動 -uroot -proot123 --error-numbers=1062 このコマンドは分かりやすいです。エラー コードを明確に記述してスキップするだけです。多くの情報が出力されます。デフォルトでは、出力される内容は、タイムスタンプ、接続情報、リレー ログ ファイル、リレー ログの位置、および最後のエラー番号です。例えば:
--verbose オプションを使用してさらに情報を追加したり、--quiet オプションを使用してすべての出力を抑制したりできます。 注記: マルチスレッド レプリケーション (slave_parallel_workers > 0) を使用する場合、pt-slave-restart はトランザクションをスキップできません。 pt-slave-restart は、GTID イベントの失敗したトランザクションを実行した特定のスレーブ スレッドを特定できません。 使用する必要がある場合は、マルチスレッドレプリケーションのワーカーを一時的にシャットダウンしてください。 pt-slave-restart のその他のパラメータについては、pt-slave-restart --help コマンドを使用して表示するか、次の共通パラメータ リストを参照してください。 --always : 手動で停止した場合でも、スレーブ スレッドを停止しません --ask-pass : パスワード入力が背後の開発者に覗き見されるのを防ぐために、-p コマンドを置き換えます --error-numbers : スキップするエラーを指定します。, で区切ることができます --error-text : エラー メッセージに基づいて一致してスキップします --log : ファイルに出力します --recurse : マスター側で実行し、スレーブ側を監視します --runtime : ツールが終了する前に実行される時間。デフォルトは秒、m=分、h=時間、d=日 --slave-user --slave-password : マスター側から実行するときに使用するスレーブ データベースのアカウントとパスワード --skip-count : 一度にスキップするエラーの数。大胆であれば、より大きな数を設定できます。指定しない場合、デフォルトは 1 です --master-uuid : カスケード レプリケーションの場合、上位または上位トランザクションのエラーをスキップするように指定します --until-master : 指定された master_log_pos、ファイル位置に到達したら停止します。形式: "file:pos" --until-relay : 上記と同じですが、relay_logの位置に基づいて停止します 上記は、MySQL pt-slave-restart ツールの使用方法の紹介の詳細な内容です。MySQL pt-slave-restart ツールの使用方法の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: flex-grow、flex-shrink、flex-basis、9グリッドレイアウトを理解する
>>: クラウドネイティブテクノロジーKubernetesスケジューリングユニットポッドの使用の詳細な説明
目次序文1. xinetdサービスに基づく起動管理(1)Telnetサービスのインストール(2)Te...
なお、これはvue-cliで作成したプロジェクトではありません。vue.jsを参照して記述したHTM...
著者は最近、仕事でパフォーマンスのボトルネックの問題に遭遇しました。MySQL テーブルには毎日約 ...
この記事では、MySQL 8.0.16 winx64のインストールと設定の具体的な方法を記載します。...
現在、新しいアプリプロジェクトを開発中です。私にとっても初めてのアプリ開発です。チームで調査と検討を...
目次1. 短絡判定2. オプション連鎖演算子 (?) 3. ヌル合体演算子 (??) 4. 終了関数...
1. 改行を強制せず、省略記号で終了します。コードをコピーコードは次のとおりです。 <div ...
目次1. 制約の概念と分類2. 5つの制約の追加と削除2.1 制約を追加する6つの方法2.2 制約を...
最悪の選択肢は、結果を時間順に並べ替えて最初のものを取ることです。 *から選択 ここで、create...
1. 概要Promise オブジェクトは、ES6 で提案された非同期プログラミングの仕様です。非同期...
目次序文1. 共通オブジェクトを反復処理するには for...of を使用します2. 通常のオブジェ...
1. Yumのインストール yum でサブバージョンをインストール 2. 構成1. 倉庫を作る/ho...
Linux バージョンに関する情報を表示および解釈するのは、見た目よりも少し複雑です。単純なバージョ...
目次必要:ドライブ:アイデア:成し遂げる:個人的には、実際の開発ではストアド プロシージャの使用はお...
mysql 5.6.35 winx64無料インストールバージョン構成チュートリアルwin10、具体的...