● 新しいプロジェクトのセキュリティを確保するためにクラウド データを購入する予定でした。 Alibaba Cloud と Tencent Cloud を比較検討した結果、どちらも高すぎるという結論に達しました。データがバックアップされているだけではないでしょうか?それなら自分でバックアップを取ったほうがいいかもしれません。 ● 自宅に Raspberry Pi が 2 台あるので、そこに MySQL をバックアップすればいいんです。ネットにチュートリアルがあるので、早速始めます。 segmentfault mysql に関するいくつかの記事を検索し、そこに書かれていることを実行しましたが、もちろん失敗しました。成功していたら、この記事を書いていなかったでしょう。 ps: 彼らのチュートリアルはすべて正しいです。 ● ここで、オンライン チュートリアルに従って、マスター サーバーとスレーブ サーバーの構成を開始します。 1. マスター設定(マスター) mysql設定ファイル(通常は/etc/mysql/my.conf)を変更します。 server-id=1 //mysql の ID 識別子を設定します。log-bin=/var/lib/mysql/mysql-bin //log-bin ログ ファイル。このログ レコードを使用してマスター スレーブ バックアップが実装されます。#binlog-do-db=mysql1 #バックアップするデータベースの名前。複数のデータベースをバックアップする場合は、このオプションを繰り返し設定します。#binlog-ignore-db=mysql2 #バックアップする必要のないデータベースの名前。複数のデータベースをバックアップする場合は、このオプションを繰り返し設定します。#log-slave-updates=1 #スレーブ ライブラリが他のスレーブ ライブラリのマスター ライブラリでもある場合は、このパラメータを追加する必要があります。そうしないと、更新されたレコードが binglog のバイナリ ファイルに書き込まれません。#slave-skip-errors=1 #エラーをスキップしてレプリケーション操作を続行します (オプション) メインのmysqlに同期用のアカウントを2つ追加する mysql> '123456' で識別される 'sync-1'@'%' に *.* 上のレプリケーション スレーブを許可します。 mysql> '123456' で識別される 'sync-2'@'%' に *.* 上のレプリケーションスレーブを許可します。 msqlを再起動する mysql>show master status; //マスターmysqlのステータスを表示できます 2. スレーブ設定 MySQL 構成ファイル my.conf を変更します。2 つのスレーブ ノードの構成方法は同じです。 サーバーID=2 #log-bin=/var/lib/mysql/mysql-bi //mysqlからログファイルを設定する必要はありません mysql にコマンドパラメータを追加すると、master_log_file と master_log_pos は、show master status を使用してマスター mysql で照会できるようになります。 mysql>マスターをmaster_host='192.168.145.222'、master_user='sync-1'、master_password='123456'、master_log_file='mysql-bin.000001'、master_log_pos=308に変更します。 mysql>start slave //Startmysql>show slave status\G //クエリステータス。Slave_IO_RunningとSlave_IO_Runningの両方がyesの場合は成功を意味します。 3. セットアップ中に発生した問題 最終エラー番号: 1146 スレーブをセットアップしたとき、マスター MySQL にはすでにテーブルがありました。テーブルが作成されたとき、binlog バイナリ ログに記録がなかったため、スレーブ MySQL はデータを書き込むことができませんでした。このとき、データベース ファイルをスレーブ MySQL に手動でインポートする必要がありました。その理由は、オンライン チュートリアルではすべて新しくインストールされたマスター MySQL とスレーブ MySQL が示されていたため、既存のデータに問題はなかったからです。 最終エラー番号: 1062 クエリでエラー「キー 'PRIMARY' のエントリ 'xxxxx' が重複しています」 主キーの競合。この問題はより複雑です。テーブル設定が間違っている可能性があります。後で、Stack Overflow でこの問題の解決策を見つけました。 # スレーブ上 mysql> スレーブを停止します。 mysql> 権限をフラッシュします。 # マスターレストマスター mysql> マスターをリセットします。 # スレーブ上; mysql> スレーブをリセットします。 mysql> スレーブを起動します。 これで、MySQL マスタースレーブ構成の勉強ノートに関する記事は終了です。MySQL マスタースレーブ構成のより詳しい情報については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Vue の vue.$set() メソッドのソースコード例の詳細な説明
>>: DockerをインストールしてAlibaba Cloud Image Acceleratorを構成する方法
CSS3 のボックス サイズ設定 (content-box と border-box) CSS3 の...
仮想マシンをインストールするときに、「VMware ワークステーションはデバイス/資格情報ガードと互...
1. ダウンロードしたファイルを以下のように解凍します。 。 2. 環境変数に解凍ディレクトリを追加...
前回の記事では、Zabbix のパッシブ、アクティブ、Web 監視に関するトピックについて学習しまし...
CSSは複数のクラスにマッチする次の HTML タグ li、クラスはオープン スタイルです。私の要件...
この記事では、ウェブ計算機のマインスイーパゲームを実装するためのJavaScriptの具体的なコード...
1. Nginx ステータス監視Nginx には、Nginx の全体的なアクセス ステータスを監視す...
シナリオ1. ID番号のフィールドを備えた市民システムを維持する2. ビジネス コードでは、重複する...
Tomcat自体の最適化Tomcat メモリ最適化起動時に大きなメモリ ブロックが必要であることを ...
効果画像: 実装コード: <テンプレート> <div id="map&q...
イメージをプルし、コンテナを作成してコンテナを実行するだけです。 docker run -d --r...
目次序文面接官は適切な質問をしていますか? § React は setState をどのように制御し...
主要な Web サイトと個人的な習慣に従って、Docker ソースを追加するには次の方法を使用します...
コンテンツ1. 読者に留まる理由を与える。ウェブページを面白く魅力的なものにしましょう。しかし、まず...
1. 設置環境Dockerは次のCentOSバージョンをサポートしていますCentOS 6.5 (6...