MySQL 主多从与读写分离配置代码示例简介

2025-01-15 04:31:06   小编

MySQL 主多从与读写分离配置代码示例简介

在当今的数据驱动时代,数据库的高效运行与合理架构至关重要。MySQL 的主多从与读写分离配置,能够显著提升系统的性能和可用性。下面为大家详细介绍相关配置代码示例。

首先来看主库配置。打开 MySQL 主库的配置文件(通常是 my.cnf 或 my.ini),需要进行一些关键设置。例如,设置服务器唯一 ID(server-id),它是一个唯一的整数,用于标识主库。开启二进制日志(log-bin),这是主从复制的基础,记录数据库的变更操作。代码示例如下:

[mysqld]
server-id = 1
log-bin = /var/log/mysql/mysql-bin.log

接着,要为主库创建用于复制的用户账号。登录 MySQL 主库,执行以下 SQL 语句:

CREATE USER'replication_user'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO'replication_user'@'%' REQUIRE NONE WITH MAX_USER_CONNECTIONS 100;
FLUSH PRIVILEGES;

然后获取主库的状态信息,以便从库进行连接配置。使用命令:

SHOW MASTER STATUS;

从库的配置也不复杂。同样要设置唯一的服务器 ID,在配置文件中添加:

[mysqld]
server-id = 2

登录从库,执行以下命令来配置主库连接信息:

CHANGE MASTER TO
MASTER_HOST='master_host_ip',
MASTER_USER='replication_user',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='master_log_file_from_show_master_status',
MASTER_LOG_POS=master_log_pos_from_show_master_status;

最后启动从库复制:

START SLAVE;

读写分离方面,可借助中间件如 MyCAT、Atlas 等。以 MyCAT 为例,需要进行一系列的配置文件修改,定义数据库连接池、读写规则等。例如在 schema.xml 中定义数据库表结构映射,在 server.xml 中配置用户权限和读写规则。

通过上述主多从与读写分离的配置代码示例,能够构建一个高效、可靠的数据库架构。主多从保证了数据的冗余和高可用性,读写分离则将读操作分散到多个从库,减轻主库压力,大幅提升系统整体性能,为企业的业务稳定运行提供坚实保障 。

TAGS: MySQL数据库 MySQL读写分离 MySQL主多从配置 配置代码示例

欢迎使用万千站长工具!

Welcome to www.zzTool.com