博客
关于我
MySQL数据读写分离(MaxScale)上干货!!!
阅读量:788 次
发布时间:2023-02-12

本文共 1277 字,大约阅读时间需要 4 分钟。

一、概念

MySQL数据读写分离是一种高效的存储架构设计,通过将读写操作分离到不同的服务器,提升系统性能。这种架构要求所有的SELECT操作只能在从服务器上执行,而INSERT、UPDATE等写操作则需要连接主服务器。常用的中间件包括MySQL Proxy、MaxScale和Mycat等。需要注意的是,这种架构仅适用于一主一从或一主多从的拓扑布局。

二、实现读写分离的拓扑图

通过合理的网络拓扑设计实现读写分离,确保主服务器仅负责写操作,所有读操作由从服务器处理。这种架构能够有效分担负载,提升数据库性能。

三、MaxScale相关配置

MaxScale是一个常用的读写分离代理软件,其配置文件位于`/etc/maxscale.cnf`。以下是常用配置项: - **软件包安装**:通过.rpm文件安装MaxScale,例如`maxscale-2.1.2-1.rhel.7.x86_64.rpm`。 - **服务启动**:通过命令`maxscale /etc/maxscale.cnf`启动服务。 - **日志路径**:默认日志文件位于`/var/log/maxscale/maxscale.log`,用于监控和调试。 - **端口配置**: - 读写分离服务使用端口号4006。 - 管理服务使用端口号4016。

四、读写分离的配置流程

1. **配置Mysql服务器一主一从**: - 将host61配置为主服务器,通过设置`Server_id = 61`和`log_bin=master`。 - 执行`systemctl restart mysqld`重启服务。 - 为备用用户授予复制权限: ```bash mysql -uroot –p123 << GRANT REPLICATION SLAVE ON *.* TO repluser@% IDENTIFIED BY "123qqq...A"; SHOW MASTER STATUS; ```
  1. 配置代理服务器

    • 安装并配置MaxScale,确保其能够连接主服务器并管理从服务器。
    • 配置代理端口,例如设置读写分离服务的监听地址和端口。
  2. 启动读写分离服务

    • 使用命令maxscale /etc/maxscale.cnf启动服务。
  3. 客户机测试

    • 确保客户端程序能够正确连接代理服务器,测试读写分离功能是否正常。
  4. 五、实操

    **第一步:配置Mysql服务器一主一从** - 将host61设为主服务器: ```bash vim /etc/my.cnf[mysqld]server_id=61log_bin=master...```- 重启Mysql服务: ```bash systemctl restart mysqld``` - 授权复制权限: ```bash mysql -uroot –p123 << GRANT REPLICATION SLAVE ON *.* TO repluser@"%" IDENTIFIED BY "123qqq...A";SHOW MASTER STATUS;```

转载地址:http://rjdfk.baihongyu.com/

你可能感兴趣的文章
Mysql学习总结(56)——MySQL用户管理和权限设置
查看>>
Mysql学习总结(57)——MySQL查询当天、本周、本月、上周、本周、上月、距离当前现在6个月数据
查看>>
Mysql学习总结(58)——深入理解Mysql的四种隔离级别
查看>>
Mysql学习总结(59)——数据库分库分表策略总结
查看>>
Mysql学习总结(5)——MySql常用函数大全讲解
查看>>
Mysql学习总结(60)——并发量大、数据量大的互联网业务数据库设计规范总结
查看>>
Mysql学习总结(61)——MySQL优化之DBA级优化整理汇总
查看>>
Mysql学习总结(62)——MySQL连接com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link问题
查看>>
Mysql学习总结(63)——Mysql数据库架构方案选择与分析
查看>>
Mysql学习总结(64)——Mysql配置文件my.cnf各项参数解读
查看>>
Mysql学习总结(65)——项目实战中常用SQL实践总结
查看>>
Mysql学习总结(66)——设置MYSQL数据库编码为UTF-8
查看>>
Mysql学习总结(67)——MYSQL慢查询日志
查看>>
Mysql学习总结(68)——MYSQL统计每天、每周、每月、每年数据 SQL 总结
查看>>
Mysql学习总结(69)——Mysql EXPLAIN 命令使用总结
查看>>
Mysql学习总结(6)——MySql之ALTER命令用法详细解读
查看>>
Mysql学习总结(70)——MySQL 优化实施方案
查看>>
Mysql学习总结(71)——MySQL 重复记录查询与删除总结
查看>>
Mysql学习总结(71)——数据库介绍(MySQL安装 体系结构、基本管理)再回顾
查看>>
Mysql学习总结(73)——MySQL 查询A表存在B表不存在的数据SQL总结
查看>>