欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL9.1.0實現(xiàn)GTID模式的項目實踐

 更新時間:2025年02月24日 09:27:29   作者:妍妍的寶貝  
本文主要介紹了在MySQL 9.1.0中實現(xiàn)GTID模式的主從復制,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

本章節(jié)實現(xiàn)MySQL主從復制GTID模式

主機IP地址端口
mysql-master192.168.239.1003306
mysql-slave1192.168.239.1103306
mysql-slave2192.168.239.1203306

1 實驗準備工作

1.1 下載并安裝官方MySQL的rpm包

[root@master mysql_rpm]#  yum localinstall mysql-community-server-9.1.0-1.el7.x86_64.rpm \
 mysql-community-common-9.1.0-1.el7.x86_64.rpm \
 mysql-community-client-9.1.0-1.el7.x86_64.rpm \
 mysql-community-icu-data-files-9.1.0-1.el7.x86_64.rpm \
 mysql-community-libs-9.1.0-1.el7.x86_64.rpm \
 mysql-community-client-plugins-9.1.0-1.el7.x86_64.rpm

1.2 設置DNS解析

 [root@master ~]# cat >> /etc/hosts <<EOF
 > 192.168.239.100 master
 > 192.168.239.110 slave1
 > 192.168.239.120 slave2
 > EOF
 ?
 [root@slave1 ~]# cat >> /etc/hosts <<EOF
 > 192.168.239.100 master
 > 192.168.239.110 slave1
 > 192.168.239.120 slave2
 > EOF
 ?
 [root@slave2 ~]# cat >> /etc/hosts <<EOF
 > 192.168.239.100 master
 > 192.168.239.110 slave1
 > 192.168.239.120 slave2
 > EOF

1.3 修改密碼

MASTER SLAVE1 SLAVE2 均是以下這樣設置

 # 改變密碼策略
 [root@master ~]# cat >> /etc/my.cnf <<EOF
 validate_password.policy=LOW
 validate_password.length=0
 EOF
 ?
 # 啟動MySQL服務
 [root@master ~]# systemctl start mysqld
 [root@master ~]# grep password /var/log/mysqld.log 
 2024-12-14T14:29:20.406601Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: (:lt/hLIW4da
 [root@master ~]# mysql -uroot -p'(:lt/hLIW4da'
 ?
 # 修改數(shù)據(jù)庫密碼
 mysql> alter user 'root'@'localhost' identified by '123456';
 mysql> flush privileges;

2 GTID模式實現(xiàn)主從復制

2.1 增加配置文件內(nèi)容

 [root@master ~]# cat >> /etc/my.cnf <<EOF
 log_bin=mysql-bin
 symbolic-links=0    # 禁用符號鏈接
 server_id=10 # 設置serverID 為機器的標識符
 ?
 log_bin=mysql-bin # 開啟 log_bin 日志
 # 開啟GTID的前提
 gtid_mode=ON
 enforce-gtid-consistency=ON
 EOF
 ?
 ?
 [root@slave1 ~]# cat >> /etc/my.cnf <<EOF
 log_bin=mysql-bin
 symbolic-links=0    # 禁用符號鏈接
 server_id=20 # 設置serverID 為機器的標識符
 ?
 # 開啟GTID的前提
 gtid_mode=ON
 enforce-gtid-consistency=ON
 EOF
 ?
 ?
 [root@slave2 ~]# cat >> /etc/my.cnf <<EOF
 log_bin=mysql-bin
 symbolic-links=0    # 禁用符號鏈接
 server_id=30 # 設置serverID 為機器的標識符
 ?
 # 開啟GTID的前提
 gtid_mode=ON
 enforce-gtid-consistency=ON
 EOF
 ?
 # 重啟 MySQL 服務重新加載
 [root@master ~]# systemctl restart mysqld
 [root@slave1 ~]# systemctl restart mysqld
 [root@slave2 ~]# systemctl restart mysqld

2.2 創(chuàng)建主從復制賬號

MASTER

 mysql> set sql_log_bin=0;    # 關閉二進制SQL日志寫入
 Query OK, 0 rows affected (0.00 sec)
 ?
 mysql> show variables like 'sql_log_bin';
 +---------------+-------+
 | Variable_name | Value |
 +---------------+-------+
 | sql_log_bin   | OFF   |
 +---------------+-------+
 ?
 mysql> CREATE USER 'repl'@'%' IDENTIFIED BY '123456';
 ?
 # 賦予所有庫所有表 repl 用戶 REPLICATION SLAVE 的權限
 mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
 mysql> FLUSH PRIVILEGES;
 mysql> set sql_log_bin=1;

SLAVE1

 mysql> set sql_log_bin=0;
 Query OK, 0 rows affected (0.00 sec)
 ?
 mysql> show variables like 'sql_log_bin';
 +---------------+-------+
 | Variable_name | Value |
 +---------------+-------+
 | sql_log_bin   | OFF   |
 +---------------+-------+
 ?
 mysql> CREATE USER 'repl'@'%' IDENTIFIED BY '123456';
 mysql> FLUSH PRIVILEGES;
 mysql> set sql_log_bin=1;

SLAVE2

 mysql> set sql_log_bin=0;
 Query OK, 0 rows affected (0.00 sec)
 ?
 mysql> show variables like 'sql_log_bin';
 +---------------+-------+
 | Variable_name | Value |
 +---------------+-------+
 | sql_log_bin   | OFF   |
 +---------------+-------+
 ?
 mysql> CREATE USER 'repl'@'%' IDENTIFIED BY '123456';
 mysql> FLUSH PRIVILEGES;
 mysql> set sql_log_bin=1;

2.3 實現(xiàn)GTID的自動定位

SLAVE1 && SLAVE2

 mysql> SET SQL_LOG_BIN=0;   # 關閉語句記錄
 ?
 # 指定主服務器的IP端口以及授權過的用戶repl,并開啟自動定位
 mysql> CHANGE REPLICATION SOURCE TO 
 SOURCE_HOST='192.168.239.100',
 SOURCE_PORT=3306,
 SOURCE_USER='repl',
 SOURCE_PASSWORD='123456',
 GET_SOURCE_PUBLIC_KEY=1,    # 信任證書
 SOURCE_AUTO_POSITION=1;     # 開啟自動定位功能
 ?
 mysql> START REPLICA;
 ?
 # 假如說失敗需要執(zhí)行     STOP REPLICA;   停止復制
 # 之后再執(zhí)行     RESET REPLICA;  刪除配置的語句
 ?
 # 查看連接 master 是否正常
 mysql> SHOW REPLICA STATUS\G
 *************************** 1. row ***************************
              Replica_IO_State: Waiting for source to send event
                   Source_Host: 192.168.239.100
                   Source_User: repl
                   Source_Port: 3306
                 Connect_Retry: 60
               Source_Log_File: mysql-bin.000001
           Read_Source_Log_Pos: 158
                Relay_Log_File: slave2-relay-bin.000002
                 Relay_Log_Pos: 375
         Relay_Source_Log_File: mysql-bin.000001
            Replica_IO_Running: Yes      # IO表示鏈接網(wǎng)絡沒有問題
           Replica_SQL_Running: Yes      # SQL表示本地同步?jīng)]有問題,如有問題基本上就是配置文件的問題
 ?
 ?
 mysql> SET SQL_LOG_BIN=0; # 開啟語句記錄

3 導入數(shù)據(jù)查看是否成功

3.1 主服務器導入SQL腳本

 [root@master ~]# mysql -uroot -p123456 
 mysql> create database gtid;
 Query OK, 1 row affected (0.00 sec)
 ?
 mysql> use gtid
 Database changed
 mysql> source gtid.sql;
 Query OK, 0 rows affected (0.00 sec)
 ?
 Query OK, 0 rows affected (0.00 sec)
 ?
 ?
 mysql> show tables;
 +----------------------------------------+
 | Tables_in_gtid                         |
 +----------------------------------------+
 | aaa                                    |
 | abi_http_log                           |
 | act_app_appdef                         |
 | act_app_databasechangelog              |
 | act_app_databasechangeloglock          |
 +----------------------------------------+

3.2 兩個從服務器查看是否復制同步

[root@ slave1 && slave2]# mysql -uroot -p123456
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| gtid               |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.01 sec)

mysql> use gtid 
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables
+----------------------------------------+
| Tables_in_gtid                         |
+----------------------------------------+
| aaa                                    |
| abi_http_log                           |
| act_app_appdef                         |
| act_app_databasechangelog              |
| act_app_databasechangeloglock          |
+----------------------------------------+

到此這篇關于MySQL9.1.0實現(xiàn)GTID模式的項目實踐的文章就介紹到這了,更多相關MySQL9.1.0 GTID模式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家! 

相關文章

  • MySQL的表分區(qū)詳解

    MySQL的表分區(qū)詳解

    這篇文章主要介紹了MySQL的表分區(qū),例如什么是表分區(qū)、為什么要對表進行分區(qū)、表分區(qū)的4種類型詳解等,需要的朋友可以參考下
    2014-03-03
  • MySQL 復制詳解及簡單實例

    MySQL 復制詳解及簡單實例

    這篇文章主要介紹了MySQL 復制詳解及簡單實例的相關資料,需要的朋友可以參考下
    2017-04-04
  • 使用Kubernetes集群環(huán)境部署MySQL數(shù)據(jù)庫的實戰(zhàn)記錄

    使用Kubernetes集群環(huán)境部署MySQL數(shù)據(jù)庫的實戰(zhàn)記錄

    這篇文章主要介紹了使用Kubernetes集群環(huán)境部署MySQL數(shù)據(jù)庫,主要包括編寫 mysql.yaml文件,執(zhí)行如下命令創(chuàng)建,通過相關命令查看創(chuàng)建結果,對Kubernetes部署MySQL數(shù)據(jù)庫的過程感興趣的朋友一起看看吧
    2022-05-05
  • MySQL數(shù)據(jù)庫的一次死鎖實例分析

    MySQL數(shù)據(jù)庫的一次死鎖實例分析

    本文主要給大家通過一個實例來具體介紹MySQL死鎖問題的相關知識,接下來我們就來一一介紹這部分內(nèi)容,希望能夠對您有所幫助。
    2016-11-11
  • MySQL數(shù)據(jù)庫觸發(fā)器從小白到精通

    MySQL數(shù)據(jù)庫觸發(fā)器從小白到精通

    觸發(fā)器是SQLserver提供給程序員和數(shù)據(jù)分析員來保證數(shù)據(jù)完整性的一種方法,它是與表事件相關的特殊的存儲過程,它的執(zhí)行不是由程序調用,也不是手工啟動,而是由事件來觸發(fā),比如當對一個表進行操作時就會激活它執(zhí)行。觸發(fā)器經(jīng)常用于加強數(shù)據(jù)的完整性約束和業(yè)務規(guī)則等
    2022-03-03
  • JDK1.7下測試ConnectorJ連接MySQL8.0的方法

    JDK1.7下測試ConnectorJ連接MySQL8.0的方法

    MySQL?Connector/J是一個JDBC?4型驅動程序。Type?4標志意味著驅動程序是MySQL協(xié)議的純Java實現(xiàn),不依賴于MySQL客戶端庫,這篇文章主要介紹了JDK1.7下測試ConnectorJ連接MySQL8.0,需要的朋友可以參考下
    2022-10-10
  • Mysql滿意度調查分組去除最高最低求平均分的實現(xiàn)思路

    Mysql滿意度調查分組去除最高最低求平均分的實現(xiàn)思路

    該文章介紹了如何使用SQL查詢實現(xiàn)按部門分組,去除每個部門的最高分和最低分,并計算剩余分數(shù)的平均分,文章詳細描述了實現(xiàn)這一需求的步驟,包括使用窗口函數(shù)、子查詢和CTE等技術,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • mysql "too many connections" 錯誤 之 mysql解決方法

    mysql "too many connections" 錯誤 之 mysql解決方法

    解決方法是修改/etc/mysql/my.cnf,添加以下一行
    2009-06-06
  • Linux下修改MySQL編碼的方法

    Linux下修改MySQL編碼的方法

    有時候因為編碼需要修改mysql的編碼,windows下修改有圖文界面簡單一些,linux大家就可以參考下面的方法
    2012-04-04
  • mysql修改自增長主鍵int類型為char類型示例

    mysql修改自增長主鍵int類型為char類型示例

    這篇文章主要介紹了mysql修改自增長主鍵int類型為char類型示例,需要的朋友可以參考下
    2015-04-04

最新評論