MySQL主从复制操作

操作环境

OS:CentOS7.6

Mysql:Mysql5.7

主库:IP=10.20.1.18

从库:IP=10.20.1.19

主从形式:一主一从

实现MySQL主从复制需要进行的配置:

主服务器:

开启二进制日志

配置唯一的server-id

获得master二进制日志文件名及位置

创建一个用于slave和master通信的用户账号

从服务器:

配置唯一的server-id

使用master分配的用户账号读取master二进制日志

启用slave服务

具体操作:

主服务器操作

1)、修改主数据库服务器配置文件my.cnf,修改如下信息:

server_id = 1 #唯一标识,主库从库不能重复

log_bin = mysql-bin #开启日志

binlog_format=MIXED    #日志记录的格式

max_binlog_size = 512M    #单个日志文件最大

expire_logs_day = 7 #日志有效期(天)

binlog_do_db = test1,test2 #日志记录那些数据库

binlog_ignore_db = mysql,performance_schema,information_schema #日志记录忽略那些数据库

MySQL服务重启:

systemctl restart mysqld.service

2)、创建用于同步账户

mysql> CREATE USER 'user'@'10.20.1.18' IDENTIFIED BY 'passwd'; #创建用户

mysql> GRANT REPLICATION SLAVE ON *.* TO 'rsync_user'@'10.20.1.1%' identified by 'passwd'; #分配权限

mysql>flush privileges;

3)、查看master状态

show master status命令记录二进制文件名(mysql-bin.000009)和position位置(1354)。

其中“Binlog_Do_DB ”字段显示记录日志要同步的库,“Binlog_Ignore_DB”字段显示忽略记录日志,无需同步的库。

4)、查看master的logbin开启状态

show variables like 'log_bin';

从服务器操作

1)、修改从数据库服务器配置文件my.cnf

server-id=2 #唯一标识,与主库不一样

relay-log-index=slave-relay-bin.index

relay-log=slave-relay-bin #打开slave的relaylog功能的

MySQL服务重启:

systemctl restart mysqld.service

2)、设置同步信息

先停止同步

mysql>stop slave;

设置同步信息

CHANGE MASTER TO

MASTER_HOST='10.20.1.18',

MASTER_USER='rsync_user',

MASTER_PASSWORD='passwd',

MASTER_LOG_FILE='mysql-bin.000009',

MASTER_LOG_POS=754;

其中master_log_file 和 master_log_pos为上面主库show master status命令记录的信息。

3)、启动slave 同步进程

mysql>start slave;

4)、slave状态查看

show slave status\G 命令查看,主要查看这几项:

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Master_Log_File: mysql-bin.000009

Relay_Master_Log_File: mysql-bin.000009

Read_Master_Log_Pos: 1654

Exec_master_log_pos: 1654

只有【Slave_IO_Running】和【Slave_SQL_Running】都是Yes,则同步正常。

No或者Connecting都不行,可查看mysql-error.log,以排查问题。

show variables like 'log_error%';

5)、同步测试

验证操作,如在master的新建一test数据库,新建一张表中插入一条数据,在slave的test库的相同数据表中查看是否有新增的数据,即可验证主从复制功能是否有效,还可以关闭slave(mysql>stop slave;),然后再修改master,看slave是否也相应修改(停止slave后,master的修改不会同步到slave),就可完成MySQL主从复制功能的验证了。

主库插入数据:

从库查看:

验证主从数据同步成功。

mysql主从复制实施流程_MySQL主从复制认识及实施操作相关推荐

  1. mysql主从复制的流程_MYSQL主从复制部署流程

    环境准备: 部署一主一从两台服务器,实现主从复制,主库要开启binlog,主库和从库的Server-id要不同 主库: [root@db01 ~]# hostname -I 10.0.0.51 172 ...

  2. mysql主从复制巡检脚本_mysql主从复制监控shell脚本

    ########本脚本应用在生产环境中,是运用mysql主从的基础上######## vi mysqlm-s.sh #!/bin/bash ip=`ifconfig eth0|sed -n 2p|aw ...

  3. mysql主从复制深入研究_mysql主从复制原理,深入探讨

    1.复制进程 Mysql的复制(Replication)是一个异步的复制,从一个Mysql instace(称之为Master)复制到另一个Mysql instance(称之Slave).实现整个复制 ...

  4. mysql 未找到命令_MySQL主从复制配置说明,一文教你搞懂数据库主从复制

    一,MySQL主从配置原理 1. mysql支持的复制格式 基于语句复制(STATEMENT) (优点)基于statement复制的优点很明显,简单的记录执行语句同步到从库执行同样的语句,占用磁盘空间 ...

  5. mysql 主从同步检查_MySQL主从复制一致性检测

    在MySQL主从复制过程中,常常需要对某些重要的表进行一致性检查. 由于主从数据在同步时存在一定的延迟,因此直接读取服务器数据的方式无法严格保证信息的一致性.在数据在同步完全结束之前,一直处于不断变化 ...

  6. mysql主备模型_MySQL主从复制 - 基于二进制日志(理论篇)

    mysql日志类型 1    二进制日志 2    事务日志 3    一般查询日志 4    中继日志 5    慢查询日志 二进制日志 二进制日志通常记录的是可能潜在引起数据库发生改变的操作,每一 ...

  7. linux mysql主主复制_MySQL主从复制与主主复制

    1.简介 MySQL作为世界上使用最为广泛的数据库之一,免费是其原因之一.但不可忽略的是它本身的功能的确很强大.随着技术的发展,在实际的生产环境中,由单台MySQL数据库服务器不能满足实际的需求.此时 ...

  8. mysql主从复制运维_Mysql主从复制配置

    环境:master: 192.168.240.131 Slave: 192.168.240.130 需要复制的数据库:test 1.       Master服务器启动mysql, a)        ...

  9. mysql主从配置原理_MySQL主从复制原理

    MySQL主从复制是构建高可用MySQL的基础,复制就是让一台服务器的数据和其它服务器保持同步,一台主库可以同步到多台备库上面,备库也可以作为另一台服务器的主库.主库和备库之间可以有多种不同的组合方式 ...

最新文章

  1. 利用scrapy和MongoDB来开发一个爬虫
  2. ubuntu MNN编译安装
  3. 20165328 预备作业3 Linux安装及命令
  4. 开源图像检索项目PicSearch is now an open source project
  5. C++以字符串形式返回第N个斐波那契的算法(附完整源码)
  6. WebSocket使用案例
  7. Effective Java~2.Builder代替多参数Constructor
  8. MySQL数据库如何做好优化
  9. Lifecycle使用与分析-基础
  10. 测试oracle的存储过程,测试技能:在oracle中自用存储过程进行测试数据构造
  11. IO流(二)__BufferedReader和BufferedWriter
  12. PCB十六大可靠性测试,看看您的板是否经得起测试?
  13. 加密保护软件 WinLicense常见问题整理大全(六)
  14. 我的2013 Q.E.D
  15. 键盘中对应的键盘码的码值(值得收藏哦!)
  16. 如何过滤出已知当前目录下/llj中的所有一级目录?
  17. 基于Python通过Chrome的Cookie登录百度账户
  18. 动态IP与静态IP的区别
  19. 信鸽邮件营销专家好用吗?
  20. 海豚客服系统接入技巧分享:微信端和网页端

热门文章

  1. 金属,塑料,傻傻分不清楚
  2. UE4 身体部件换装实现
  3. Windows 7中的远程桌面增强(Graphics Remoting, Remote Desktop)
  4. 题解 P3978 【[TJOI2015]概率论】
  5. [五]java函数式编程归约reduce概念原理 stream reduce方法详解 reduce三个参数的reduce方法如何使用...
  6. android常犯错误记录(一)
  7. oracle视图总结(创建、查询、改动、删除等)
  8. 策略模式Strategy——坐什么车回家?
  9. android ListView常用知识总结
  10. snort 使用mysql的安装