Mysql(AliSQL)マスタースレーブレプリケーション

1.マスターサーバーを構成します

  1. /etc/my.cnfの次のコンテンツを変更または追加します
server_id = 22
log-bin=master-bin
log-slave-updates=true
  1. MySQLサービスを再起動します
 service mysql restart
  1. AliSQLプログラムにログインし、サーバーを承認します
mysql -u root -p
GRANT REPLICATION SLAVE ON *.* TO 'root'@'192.168.199.203' IDENTIFIED BY '1234abcd';
FLUSH PRIVILEGES;
show master status;

次に、スレーブサーバーを構成します

  1. /etc/my.cnfの次のコンテンツを変更または追加します
server_id = 33
relay-log=relay-log-bin
relay-log-index=slave-relay-bin.index
  1. MySQLサービスを再起動します
 service mysql restart
  1. AliSQLプログラムにログインし、同期を構成します
mysql -u root -p
master_log_file 和 master_log_pos 根据主服务器“show master status;”给出的参数自行修改
  1. 同期を開始します
start slave;
  1. スレーブステータスの表示
show slave status\G;
确保以下两个值为 YES: Slave_IO_Running: Yes 
 Slave_SQL_Running: Yes
  1. (補足)エラーが報告された場合は、auto.cnfファイルを変更してください
Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have 
equal MySQL server UUIDs; 
these UUIDs must be different for replication to work.
rm -rf /data/server/mysql/data/auto.cnf
service mysql restart
  1. (補足)スレーブを再起動します
mysql -u root -p stop slave;
start slave;
change master to 
master_host='192.168.199.205',master_user='root',master_password='1234ab
cd',master_log_file='master-bin.000001',master_log_pos=120;
  1. (補足)メインサーバーにすでにアプリケーションデータがある場合は、マスタースレーブレプリケーション中にテーブルをロックする必要があり
    ますメインデータベースはテーブルロック操作を実行し、データが書き込まれないようにします。
FLUSH TABLES WITH READ LOCK;
解锁:UNLOCK TABLES;

(実はこれも初期の私の主人のメモですが、怠惰にインターネットに投稿してくれたので送ってくれました。恥ずかしいと思いますが、マスター・カオへのオマージュです、ははは、まだまだとても細心の注意を払って完全なマスター牛革!!! hhhhh)

おすすめ

転載: blog.csdn.net/weixin_42345596/article/details/109329020