mysqlRouter读写分离

数据库优化项目

使用中间件ProxySQL实现读写分离降低服务器压力,查看慢查询日志,反馈慢查询优化查询速度,清除无用数据,添加zabbix对mysql的监控。

ProxySql读写分离:

环境:mysql集群134、133

Mysql touter 132

1、mysql安装:

apt install mysql-server

2、mysql主从复制

配置文件

主:

vim /etc/my.cnf

#在[Mysqld]模块修改

server-id = 11 //三台主从数据库的id必须不同

log-bin = master-bin //主服务器日志文件

log-slave-updates=true //允许从服务器更新

从:

mysqld

bind-address = 0.0.0.0

server-id = 1002

read_only=ON

设置

登录主数据库给从数据库授权

#创建slave1用户

CREATE USER 'slave'@'%' IDENTIFIED BY '123456';

#给slave1用户授予数据同步的权限

GRANT replication slave on . to 'slave1'@'%'

#刷新权限

flush privileges;


开启主从同步

查看主节点binlog执行位置

mysql> show master status;

从节点开启主节点同步操作:

mysql> CHANGE MASTER TO

MASTER_HOST='192.168.146.134',

MASTER_PORT=3306,

MASTER_USER='slave',

MASTER_PASSWORD='123456',

MASTER_LOG_FILE='master-bin.000001',

MASTER_LOG_POS=858;

Query OK, 0 rows affected, 8 warnings (0.03 sec)

#从节点开启数据同步

mysql> start slave;

Query OK, 0 rows affected, 1 warning (0.03 sec)

3、mysql-router安装

MySQL :: Download MySQL Router

dpkg -i mysql-router-community_8.0.39-1ubuntu24.04_amd64.deb

4、Mysql-router设置

mysqlrouter --help 查看配置文件:

修改配置文件写数据库走7001读数据走7002

以下选项可用于路由标识的策略部分

复制代码
[routing:basic_failover]
#Router地址
bind_address = 192.168.146.132
 Router端口
bind_port = 7001
#读写模式
mode = read-write
 目标服务器
destinations = 192.168.146.134:3306
[routing:load_balance]
bind_address = 192.168.146.132
bind_port = 7002
mode = read-only
destinations = 192.168.146.133:3306

重启mysqlrouter

service mysqlrouter restart

相关推荐
fengye2071612 小时前
板凳-------Mysql cookbook学习 (二)
学习·mysql·adb
初次见面我叫泰隆19 小时前
MySQL——1、数据库基础
数据库·adb
2501_9111212319 小时前
MySQL高可用
adb
fengye2071611 天前
在MYSQL中导入cookbook.sql文件
数据库·mysql·adb
ACGkaka_2 天前
MySQL 学习(十)执行一条查询语句的内部执行过程、MySQL分层
学习·mysql·adb
后端码匠3 天前
MySQL 8.0安装(压缩包方式)
android·mysql·adb
问道飞鱼3 天前
【数据库知识】Mysql进阶-高可用MHA(Master High Availability)方案
数据库·mysql·adb·高可用·mha
tiging3 天前
centos7.x下,使用宝塔进行主从复制的原理和实践
数据库·mysql·adb·主从复制
董可伦3 天前
Dinky 安装部署并配置提交 Flink Yarn 任务
android·adb·flink
VirusVIP3 天前
Windows CMD通过adb检查触摸屏Linux驱动是否被编译
linux·运维·adb