innobackupex を使用してスレーブ データベースに基づいて mysql マスター/スレーブ アーキテクチャを構築する

黄舟
リリース: 2017-02-15 10:43:20
オリジナル
1630 人が閲覧しました

マスター/スレーブ MySQL を構築するには多くの方法があり、従来の mysqldump メソッドは多くの人にとって選択肢の 1 つです。ただし、大規模なデータベースの場合、この方法は理想的な選択ではありません。 Xtrabackup を使用すると、mysql マスター/スレーブ アーキテクチャを迅速かつ簡単に構築または修復できます。この記事では、既存のスレーブ ライブラリに基づいて、つまり元のマスター ライブラリの新しいスレーブ ライブラリとしてマスター/スレーブ ライブラリを迅速に構築する方法について説明します。この方法の利点は、メイン データベースのバックアップ期間に関連したパフォーマンスのプレッシャーが必要ないことです。構築プロセスでは、マスター/スレーブ構築を高速化するために高速ストリーミング バックアップ方式が使用され、ストリーミング バックアップを高速化するためのいくつかのパラメータが参考のために説明されました。


ストリーミング バックアップの詳細については、次を参照してください: Xtrabackup ストリーミング バックアップとリカバリ


1 バックアップ スレーブ データベース
### で同等のものが使用されます。リモートバックアップの性別を確認するため、最初に対応する設定を行う必要があります。ここでは mysql ユーザー

$ innobackupex --user=root --password=xxx --slave-info --safe-slave-backup 
\--compress-threads=3 --parallel=3 --stream=xbstream \--compress /log | ssh -p50021 mysql@172.16.16.10 "xbstream -x -C /log/recover"
ログイン後にコピー



### を使用しています。safe-slave-backup パラメータはバックアップ中に使用されます。 SQL スレッドが停止され、完了後に開始されたことがわかります

$ mysql -uroot -p -e "show slave status \G"|egrep 'Slave_IO_Running|Slave_SQL_Running'
Enter password: 
             Slave_IO_Running: Yes
            Slave_SQL_Running: No
      Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it
ログイン後にコピー



###my.cnf ファイルを新しいスレーブ ライブラリにコピーします

$ scp -P50021 /etc/my.cnf mysql@172.16.16.10:/log/recover
ログイン後にコピー



2. マスター ライブラリが新しいスレーブ ライブラリ レプリケーション アカウントを付与します

master@MySQL> grant replication slave,replication client on *.* to repl@'172.16.%.%' identified by 'repl';
ログイン後にコピー



3. 新しいスレーブ ライブラリを準備するには、まず解凍する必要があります
###ダウンロードアドレス
http://www.php.cn/

# tar -xvf qpress-11-linux-x64.tar qpress# cp qpress /usr/bin/
$ innobackupex --decompress /log/recover                               
###解压$ innobackupex --apply-log --use-memory=2G /log/recover    
###prepare备份
ログイン後にコピー



4. ライブラリから始める準備をする設定ファイル my.cnf
### ここでの変更は次のとおりです。から開始ライブラリと変更マスター
# chown -R mysql:mysql /log/recover
# /app/soft/mysql/bin/mysqld_safe --defaults-file=/log/recover/my.cnf &

skip-slave-start
datadir = /log/recover
port = 3307
server_id = 24                     
socket = /tmp/mysql3307.sock
pid-file=/log/recover/mysql3307.pid
log_error=/log/recover/recover.err
ログイン後にコピー


mysql> start smile;

クエリ OK、影響を受ける行は 0 (0.02 秒)

6. スレーブ データベース バックアップ関連パラメータと高速ストリーム バックアップ パラメータに基づく

mysql> system more /log/recover/xtrabackup_slave_info
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000658', MASTER_LOG_POS=925384099
mysql> CHANGE MASTER TO
    -> MASTER_HOST='172.16.16.10',       
### Author: Leshami
    -> MASTER_USER='repl',                    
 ### Blog  : 
http://www.php.cn/
    -> MASTER_PASSWORD='repl',
    -> MASTER_PORT=3306,
    -> MASTER_LOG_FILE='mysql-bin.000658',
    -> MASTER_LOG_POS=925384099;
Query OK, 0 rows affected, 2 warnings (0.31 sec)
ログイン後にコピー

警告: table-checksum のソースとして使用する前に、スレーブがマスターの真のレプリカであることを確認してください。


--compress

The --slave-info option This option is useful when backing up a replication slave server. It prints the binary
log position and name of the master server. It also writes this information to the xtrabackup_slave_info file
as a CHANGE MASTER statement.
This is useful for setting up a new slave for this master can be set up by starting a slave server on this backup and
issuing the statement saved in the xtrabackup_slave_info file.
ログイン後にコピー

###compress メソッドは比較的大まかな圧縮方法であり、gzip 圧縮率ほど高くはなく、.gp ファイルに圧縮されることに注意してください



--compress-threads

   This option specifies the number of worker threads that will be used
        for parallel compression. It is passed directly to the xtrabackup
        child process. Try 'xtrabackup --help' for more details.
ログイン後にコピー



--decompress

   Decompresses all files with the .qp extension in a backup previously
        made with the --compress option.
ログイン後にコピー



--parallel=NUMBER-OF-THREADS

   On backup, this option specifies the number of threads the        
   xtrabackup child process should use to back up files concurrently.        
   The option accepts an integer argument. It is passed directly to        
   xtrabackup's --parallel option. See the xtrabackup documentation for        
   details.
        On --decrypt or --decompress it specifies the number of parallel       
         forks that should be used to process the backup files.
ログイン後にコピー


以上就是使用innobackupex基于从库搭建mysql主从架构的内容,更多相关内容请关注PHP中文网(www.php.cn)!

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート