,[mysqld],serverid=1,logbin=mysqlbin,binlogformat=mixed,
`,,在从数据库的my.cnf文件中添加以下内容:,,
`,[mysqld],serverid=2,relaylog=relaybin,relaylogindex=relaybin.index,readonly,
“,,然后重启MySQL服务。MySQL的主从数据库配置是一个常见的数据库架构模式,用于实现数据的备份、负载均衡和高可用性,以下是关于如何配置MySQL主从数据库的详细步骤:
主从原理
1、二进制日志(Binary Log):在主库上,数据的所有更改都会被记录到二进制日志中,这些记录被称为二进制日志事件。
2、中继日志(Relay Log):从库通过I/O线程将主库上的二进制日志复制到自己的中继日志中。
3、SQL线程:从库通过SQL线程读取中继日志中的事件,并将其重放到自己的数据上。
主从配置步骤
1. 安装MySQL
确保在两台服务器上都安装了MySQL数据库,可以参考《离线安装mysql数据库》进行安装。
2. 配置主库
修改主库的my.cnf配置文件,添加以下内容:
[mysqld] serverid = 1 logbin = mysqlbin binlog_format = ROW binlog_row_image = minimal binlogdodb = jgyw
重启MySQL服务:
service mysqld restart
创建用于同步数据的账号:
CREATE USER 'jgyw'@'192.168.197.136' IDENTIFIED BY 'jgyw@123'; GRANT REPLICATION SLAVE ON *.* TO 'jgyw'@'192.168.197.136'; FLUSH PRIVILEGES;
查看主库状态:
SHOW MASTER STATUSG;
记录下File和Position的值,稍后在从库配置中使用。
3. 配置从库
修改从库的my.cnf配置文件,添加以下内容:
[mysqld] serverid = 2 logbin = mysqlbin binlog_format = ROW binlog_row_image = minimal replicatedodb = jgyw
重启MySQL服务:
service mysqld restart
执行同步命令:
CHANGE MASTER TO MASTER_HOST='192.168.197.135', MASTER_USER='jgyw', MASTER_PASSWORD='jgyw@123', MASTER_LOG_FILE='mysqlbin.000002', MASTER_LOG_POS=2380; START SLAVE;
查看从库状态:
SHOW SLAVE STATUSG;
确保Slave_IO_Running和Slave_SQL_Running的状态都为Yes。
4. 测试
在主库上创建模式和表,并插入数据:
CREATE SCHEMA jgyw; USE jgyw; CREATE TABLE comm_config (configId VARCHAR(200) NOT NULL, configValue VARCHAR(1024) DEFAULT NULL, description VARCHAR(2000) DEFAULT NULL, PRIMARY KEY (configId)) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO comm_config(configId, configValue, description) VALUES('name', '架构与我', '测试一下');
在从库上查看模式和表结构,确认数据已经同步:
SHOW SCHEMAS; USE jgyw; SHOW TABLES; SELECT * FROM comm_config;
FAQs
1. 为什么需要配置serverid?
serverid是MySQL服务器的唯一标识符,用于区分不同的MySQL服务器,在主从复制中,主库和从库必须有不同的serverid,以避免冲突和数据不一致的问题。
2. 如果主从同步失败,该如何排查问题?
首先检查主库和从库的MySQL错误日志,查找可能的错误信息,然后运行SHOW SLAVE STATUSG命令,查看从库的状态信息,特别是Slave_IO_Running和Slave_SQL_Running的状态,以及Last_IO_Error和Last_SQL_Error字段,以获取详细的错误信息,根据错误信息进行相应的调整和修复。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1228853.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复