centos(minimal)7.4 mysql8.0インストールおよびマスターコピー構築

10314 ワード

公式サイトのチュートリアル:https://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html
1.ファイアウォールを閉じる
systemctl stop firewalld.service #  firewall
systemctl disable firewalld.service #  firewall    

2.MySQL Yum Repositoryのダウンロード
公式サイトのアドレス:https://dev.mysql.com/downloads/repo/yum/
ダウンロード先:https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
設置倉庫:yum localinstall mysql 80-community-release-el 7-1.noarch.rpm
3.MySQLサービスのインストール
sudo yum install mysql-community-server

4.MySQLサービスの起動
sudo service mysqld start
sudo service mysqld status

5.rootパスワードの取得
sudo grep 'temporary password' /var/log/mysqld.log

6.ログインrootパスワードの変更
mysql -uroot -p
#          

# WITH mysql_native_password                   ,       caching_sha2_password                
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Root2018@';

7.クラスタ構成:my.confファイルの変更
vim /etc/my.cnf
#     ID,bin log  ,MySQL8      bin log 
server-id=1    #    id   
log-bin=mysql-bin   #         

# esc       ,shift+:   wq     
#   MySQL  
service mysqld restart 


8.マスターマスターマスターマスター同期ユーザの作成
#     
CREATE USER 'zmhslave'@'%' IDENTIFIED  WITH mysql_native_password BY 'Root2018@';
#     
GRANT REPLICATION SLAVE ON *.* TO 'zmhslave'@'%';
#    flush privileges             user privilige       /     mysql (MySQL       )       
flush privileges;

#     master   , file   position       
show master status;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |     1605 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+

master       


9.ライブラリからインストール
1~6ステップを繰り返してMySQLサービスをインストールし、パスワードの変更にログインします.
10.ライブラリからmy.conf構成
vim /etc/my.cnf
server-id=2    #    id       


11.マスターの設定
#    master         3306  
CHANGE MASTER TO MASTER_HOST='10.211.55.9', MASTER_USER='zmhslave', MASTER_PASSWORD='Root2018@',MASTER_LOG_FILE='mysql-bin.000001',  MASTER_LOG_POS=1605;  

12.slaveの起動
start slave    
#    stop slave
#    reset slave

13.slaveステータスの表示
show slave status\G

#       
# Slave_IO_Running: Yes
# Slave_SQL_Running: Yes
#     :https://www.jianshu.com/p/3c4d7c6c6205

14.マスターテストに行けます
#    master             
#     
CREATE USER 'minghui'@'%' IDENTIFIED WITH mysql_native_password BY 'Root2018@';

#       
GRANT ALL PRIVILEGES ON *.* TO 'minghui'@'%';
#            ,     
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON *.* TO 'minghui'@'%';

#           ,     

15.マスターコピーモードの構築(スレーブノードもマスターノードに変更)
vim /etc/my.cnf
#   bin log  ,MySQL8      bin log 
log-bin=mysql-bin   #         
#     
service mysqld restart

16.ノードからのレプリケーション・ユーザーの作成
#     
CREATE USER 'zmhslave'@'%' IDENTIFIED  WITH mysql_native_password BY 'Root2018@';
#     
GRANT REPLICATION SLAVE ON *.* TO 'zmhslave'@'%';
#    flush privileges             user privilige       /     mysql (MySQL       )       
flush privileges;

#     master   , file   position       
show master status;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000002 |     2162 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+


17.マスターノード設定
#    master         3306  
CHANGE MASTER TO MASTER_HOST='10.211.55.10', MASTER_USER='zmhslave', MASTER_PASSWORD='Root2018@',MASTER_LOG_FILE='mysql-bin.000002',  MASTER_LOG_POS=2162;  

#   slave
start slave 

#     
show slave status\G