久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

如何使用proxysql 1.4.14中間件實現mysql 5.7.26主從的讀寫分離

141次閱讀
沒有評論

共計 5388 個字符,預計需要花費 14 分鐘才能閱讀完成。

這篇文章將為大家詳細講解有關如何使用 proxysql 1.4.14 中間件實現 mysql 5.7.26 主從的讀寫分離,丸趣 TV 小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

準備條件

操作系統  redhat 6.9

數據庫      mysql 5.7.26

中間件      proxysql 1.4.14

已配置 mysql 一主一從,具體見下

數據庫讀寫分離整體架構

編號     服務器角色    ip 地址             端口

1         proxysql        10.0.0.13         6032,6033(注:6032 是 proxysql 的管理端口,6033 是 proxysql 對外服務的端口)

2         mysql 主庫     10.0.0.11         3306

3         mysql 從庫     10.0.0.12         3306

配置數據庫讀寫分離

1, 登陸中間件 proxysql

[root@mysqlclient ~]# mysql -uadmin -padmin -h227.0.0.1 -P6032

2, 配置用于讀寫分離的不同的主機組,10 用于 mysql 主庫的主機組,20 用于 mysql 從庫的主機組

mysql insert into mysql_replication_hostgroups values(10,20, use for msyql primary replication

Query OK, 1 row affected (0.00 sec)

mysql select * from mysql_replication_hostgroups;

+——————+——————+———————————–+

| writer_hostgroup | reader_hostgroup | comment                           |

+——————+——————+———————————–+

| 10               | 20               | use for msyql primary replication |

+——————+——————+———————————–+

1 row in set (0.00 sec)

3, 登陸 mysql 主庫創建用于監控 mysql 主從庫 read_only 是否只讀的數據庫用戶 monitor

mysql grant replication client on *.*  to monitor @ 10.0.0.13 identified by monitor

Query OK, 0 rows affected (0.02 sec)

4, 登陸 mysql 從庫確認 read_only=on 只讀

mysql show global variables like read_only

+—————+——-+

| Variable_name | Value |

+—————+——-+

| read_only     | ON    |

+—————+——-+

1 row in set (0.00 sec)

5, 登陸中間件 proxysql 配置用于監控 mysql 的數據庫用戶及密碼

(注:對應上述第 3 步配置的數據庫用戶)

mysql select * from main.global_variables where variable_name in (mysql-monitor_username , mysql-monitor_password

+————————+—————-+

| variable_name          | variable_value |

+————————+—————-+

| mysql-monitor_password | monitor        |

| mysql-monitor_username | monitor        |

+————————+—————-+

2 rows in set (0.00 sec)

– 如果配置的數據庫用戶密碼不對,根據實際情況進行調整

mysql set mysql-monitor_username= monitor

Query OK, 1 row affected (0.00 sec)

mysql set mysql-monitor_password= monitor

Query OK, 1 row affected (0.00 sec)

– 持久化

mysql load mysql variables to runtime;

Query OK, 0 rows affected (0.00 sec)

mysql save mysql variables to disk;

Query OK, 97 rows affected (0.02 sec)

6,配置 mysql 主從節點與主機組的對應關系

(注:不同的 mysql 節點對應不同的主機組,實現讀寫分離)

mysql insert into mysql_servers(hostgroup_id,hostname,port) values(10, 10.0.0.11 ,3306);

Query OK, 1 row affected (0.00 sec)

mysql insert into mysql_servers(hostgroup_id,hostname,port) values(20, 10.0.0.12 ,3306);

Query OK, 1 row affected (0.00 sec)

持久化

mysql load mysql servers to runtime;

Query OK, 0 rows affected (0.01 sec)

mysql save mysql servers to disk;

Query OK, 0 rows affected (0.03 sec)

mysql select * from mysql_servers;

+————–+———–+——+——–+——–+————-+—————–+———————+———+—————-+———+

| hostgroup_id | hostname  | port | status | weight | compression | max_connections | max_replication_lag | use_ssl | max_latency_ms | comment |

+————–+———–+——+——–+——–+————-+—————–+———————+———+—————-+———+

| 10           | 10.0.0.11 | 3306 | ONLINE | 1      | 0           | 1000            | 0                   | 0       | 0              |         |

| 20           | 10.0.0.12 | 3306 | ONLINE | 1      | 0           | 1000            | 0                   | 0       | 0              |         |

+————–+———–+——+——–+——–+————-+—————–+———————+———+—————-+———+

2 rows in set (0.00 sec)

7, 登陸 mysql 主庫創建用于讀寫分離的數據庫用戶

– 讀寫數據庫用戶

mysql grant all on *.* to rwuser@ 10.0.0.11 identified by system

Query OK, 0 rows affected (0.02 sec)

– 只讀數據庫用戶

mysql grant all on *.* to rouser@ 10.0.0.12 identified by system

Query OK, 0 rows affected (0.01 sec)

8, 登陸中間件 proxysql 配置數據庫用戶與主機組的對應關系,即不同的數據庫用戶可以導流到不同的 mysql 主從的節點上

mysql insert into mysql_users(username,password,default_hostgroup) values(rwuser , system ,10);

Query OK, 1 row affected (0.00 sec)

mysql insert into mysql_users(username,password,default_hostgroup) values(rouser , system ,20);

Query OK, 1 row affected (0.00 sec)

– 持久化

mysql load mysql users to runtime;

Query OK, 0 rows affected (0.00 sec)

mysql save mysql users to disk;

Query OK, 0 rows affected (0.02 sec)

mysql select * from mysql_users;

+———-+———-+——–+———+——————-+—————-+—————+————————+————–+———+———-+—————–+

| username | password | active | use_ssl | default_hostgroup | default_schema | schema_locked | transaction_persistent | fast_forward | backend | frontend | max_connections |

+———-+———-+——–+———+——————-+—————-+—————+————————+————–+———+———-+—————–+

| rwuser   | system   | 1      | 0       | 10                | NULL           | 0             | 1                      | 0            | 1       | 1        | 10000           |

| rouser   | system   | 1      | 0       | 20                | NULL           | 0             | 1                      | 0            | 1       | 1        | 10000           |

+———-+———-+——–+———+——————-+—————-+—————+————————+————–+———+———-+—————–+

2 rows in set (0.00 sec)

9,客戶端使用不同的數據庫用戶登陸中間件,實現 mysql 主從庫的讀寫分離

(注:rwuser 數據庫用戶訪問 mysql 主庫,rouser 數據庫用戶訪問 mysql 從庫)

[root@mysqlclient proxydir]# mysql -urwuser -psystem -h227.0.0.1 -P6033 -e select @@server_id

Warning: Using a password on the command line interface can be insecure.

+————-+

| @@server_id |

+————-+

|           1 |

+————-+

[root@mysqlclient proxydir]# mysql -urouser -psystem -h227.0.0.1 -P6033 -e select @@server_id

Warning: Using a password on the command line interface can be insecure.

+————-+

| @@server_id |

+————-+

|           2 |

+————-+

[root@mysqlclient proxydir]# 

關于“如何使用 proxysql 1.4.14 中間件實現 mysql 5.7.26 主從的讀寫分離”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-27發表,共計5388字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 万山特区| 施秉县| 宜都市| 平舆县| 通海县| 吉林省| 舟山市| 荣昌县| 密云县| 株洲县| 咸丰县| 闵行区| 中西区| 荃湾区| 南雄市| 平泉县| 昌平区| 苏尼特左旗| 齐齐哈尔市| 西华县| 聂拉木县| 天祝| 镇赉县| 平顶山市| 海阳市| 利川市| 吉安县| 景德镇市| 慈溪市| 瑞金市| 海阳市| 满城县| 开原市| 灵璧县| 东乌| 泸州市| 峡江县| 临夏市| 滨海县| 庆阳市| 万安县|