ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

mysql 5.7.29 主从同步配置

mysql 5.7.29 主从同步配置 mysql 5.7.29 主从同步配置1、安装mysql 5.7.292、配置文件确认2.1、主库配置文件 /etc/my.cnf2.2、从库配置文件 /etc/my.cnf3、主库的业务库test同步到从库3.1、备份主库业务库test3.2、传输备份文件到从库服务器3.3、恢复主库业务库test到从库4、配置主从复制4.1、主库配置4.2、从库配置4.2.1、从库配置主从连接信息4.2.2、从库启动复制线程5、验证数据同步1、安装mysql 5.7.29链接: 银河麒麟v10 sp3 2403 二进制安装包 安装mysql 5.7.29角色IP 地址数据目录Server ID业务库大小主库 (Master)192.168.2.11/data/mysql1有1个业务库test约 1.36 GB从库 (Slave)192.168.2.12/data/mysql2待同步前置条件1、两台服务器已安装 MySQL 5.7.29服务已启动。2、两台服务器网络互通防火墙已放行 3306 端口。3、主库上已存在业务数据库 test约 1.36 GB。4、当前没有应用连接主库确保备份期间无写入。2、配置文件确认2.1、主库配置文件 /etc/my.cnf在配置文件中添加mysql主从配置相关的配置vi /etc/my.cnf在[mysqld]下面添加如下语句# master-slave-confserver_id1log-bin/data/mysql/mysql-bin log-bin-index/data/mysql/mysql-bin.index最终主库配置文件 /etc/my.cnf如下[client]socket/data/mysql/mysql.sock[mysqld]datadir/data/mysqlsocket/data/mysql/mysql.sock sql-modeNO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION# Disable name resolveskip-name-resolvemax_connections500# master-slave-confserver_id1log-bin/data/mysql/mysql-bin log-bin-index/data/mysql/mysql-bin.index[mysqld_safe]log-error/data/mysql/mysqld.log pid-file/data/mysql/mysqld.pid重启mysql数据库服务先停止mysql数据库服务cd/usr/local/mysql bin/mysqladmin --defaults-file/etc/my.cnf-pshutdown然后启动mysql数据库服务cd/usr/local/mysql bin/mysqld_safe --defaults-file/etc/my.cnf--usermysql重启后形成了如下文件/data/mysql/mysql-bin.000001/data/mysql/mysql-bin.index2.2、从库配置文件 /etc/my.cnf在配置文件中添加mysql主从配置相关的配置vi /etc/my.cnf在[mysqld]下面添加如下语句# master-slave-confserver_id2relay-log/data/mysql/relay-bin relay-log-index/data/mysql/relay-bin.index最终从库配置文件 /etc/my.cnf如下[client]socket/data/mysql/mysql.sock[mysqld]datadir/data/mysqlsocket/data/mysql/mysql.sock sql-modeNO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION# Disable name resolveskip-name-resolvemax_connections500# master-slave-confserver_id2relay-log/data/mysql/relay-bin relay-log-index/data/mysql/relay-bin.index[mysqld_safe]log-error/data/mysql/mysqld.log pid-file/data/mysql/mysqld.pid重启mysql数据库服务先停止mysql数据库服务cd/usr/local/mysql bin/mysqladmin --defaults-file/etc/my.cnf-pshutdown然后启动mysql数据库服务cd/usr/local/mysql bin/mysqld_safe --defaults-file/etc/my.cnf--usermysql3、主库的业务库test同步到从库3.1、备份主库业务库test主库服务器上执行mysqldump-uroot-p\--databasestest\--routines\--triggers\--set-gtid-purgedOFF\/tmp/test_backup.sql参数说明参数作用–databases test只备份指定的业务库。–routines备份存储过程和函数没有也可以加这个参数加上更完备。–triggers备份触发器–set-gtid-purgedOFF必须添加防止备份文件包含 GTID 信息与我们的非 GTID 复制方案兼容。备份时间预估:1.36GB 数据量使用默认参数备份预计耗时 1-3 分钟。8核16G服务器实测需要1分钟。备份文件大小约为数据量的 60%-80%约 800MB - 1.1GB。查看备份文件3.2、传输备份文件到从库服务器把test_backup.sql上传到从库服务器/tmp目录下3.3、恢复主库业务库test到从库从库服务器上执行mysql-uroot-p/tmp/test_backup.sql恢复时间预估1.36GB 数据恢复约需 2-5 分钟取决于从库磁盘 I/O 性能。8核16G服务器实测需要2分钟。4、配置主从复制4.1、主库配置登录主库 MySQLmysql-uroot-pSHOWMASTERSTATUS;记录输出的 File 和 Position 值例如File: mysql-bin.000001Position: 1544.2、从库配置4.2.1、从库配置主从连接信息登录从库 MySQLmysql-uroot-p配置主从连接信息CHANGE MASTERTOMASTER_HOST192.168.2.11,MASTER_PORT3306,MASTER_USERroot,MASTER_PASSWORD主库root密码,MASTER_LOG_FILEmysql-bin.000001,-- 4.1中记录的 FileMASTER_LOG_POS154;-- 4.1中记录的 PositionCHANGE MASTER TO执行后形成了如下文件/data/mysql/relay-bin.000001/data/mysql/relay-bin.index查看主从同步状态showslavestatus\G4.2.2、从库启动复制线程STARTSLAVE;查看主从同步状态showslavestatus\G重点关注Slave_IO_Running: YesSlave_SQL_Running: Yes5、验证数据同步在主库的 test 库中插入一条测试数据。在从库查询确认数据已同步。
返回列表