我的编程空间,编程开发者的网络收藏夹
学习永远不晚

mysql5.7 主从复制

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

mysql5.7 主从复制

mysql5.7 主从复制

注意事项:
主库全库备份完查看该文件binlog pos标记位
文件名为:binlog_pos_innodb 记录当时mysql备份时主库的标记为

环境说明:
两台安装在CentOS7.4的MySQL5.7.22服务器:master 和 slave
Master服务器:
IP:192.168.80.51
Port:3306
Slave 服务器:
IP:192.168.80.52
Port:3306
配置步骤:
1、 修改master的my.cnf配置文件,开启记录日志并设置server-id。
2、 修改slave的my.cnf配置文件,开启读取二进制日志并设置server-id。
3、 在slave上启动slave与master的连接。
4、 检查是否配置成功与排错。
1、 master 库my.cnf配置文件,在[mysqld]下添加如下配置:
A SERVER:

[client]
user = pmostc
password = pmostc
port = 3306
socket = /tmp/mysql.sock

[mysqld]
user = mysql
port = 3306
socket = /tmp/mysql.sock
basedir = /workspace/app/mysql/
datadir = /workspace/data/mysql/
tmpdir = /tmp
pid-file = /workspace/data/mysql/mysql.pid
bind-address = 127.0.0.1
log-bin=mysql-bin
server-id=1
log-error=mysqld.log

replicate-ignore-table=database.table

log-slave-updates = 1

说明:
log-bin 配置的是开启二进制日志,并将日志写在配置的路径上。记录的日志将以master-bin.000001 的方式进行记录。
log-bin-index 配置的是二进制日志记录文件的目录。该文件中每一行都是二进制日志文件的路径。
server-id是该MySQL服务器的服务ID,用于区分在主从配置中的其他服务器。
配置成功后,重启mysqld服务。
注意:如果不定义log-bin的文件名,则会以hostname主机名命名,一旦主机名修改,则会因为找不见二进制文件报错。所以最好还是显示指定文件名。
2、 slave 从my.cnf配置文件,在[mysqld]下添加如下配置:
[client]
user = pmostc
password = pmostc
port = 3306
socket = /tmp/mysql.sock

[mysqld]
user = root
port = 3306
socket = /tmp/mysql.sock
basedir = /workspace/app/mysql/
datadir = /workspace/data/mysql/
tmpdir = /tmp
pid-file = /workspace/data/mysql/mysql.pid
bind-address = 127.0.0.1

server_id = 1921688052
binlog_format=mixed
relay-log = relay-bin
relay-log-index = relay-bin.index
report-host=
report-port=22988
log-bin=mysql-bin
log-error=mysqld.log

replicate-ignore-table=database.table

log-slave-updates = 1
server-id和master意义一样,用于区分不同的mysql服务器。
relay-log用以记录收到的中继二进制日志。relay-log-index用以保存收到的日志路径索引。如果不显示指定文件名,则以hostname值命名。
保存后可以重启mysqld服务。

3、全量备份主数据库
mysqldump -uroot -p123456 database > database.sql

4、在从库恢复主库全量备份数据
mysqldump -uroot -p123456 database < database.sql

恢复完数据库并重启mysql服务
5、 在slave上启动slave与master的连接。
在slave上登录到mysql,在mysql>:下进行操作。
3.1、mysql>stop slave; //停止slave。
配置标记为同步
mysql> CHANGE MASTER TO MASTER_HOST='192.168.80.51',
-> MASTER_USER='repl',
-> MASTER_PASSWORD='123456',
-> MASTER_LOG_FILE='mysql-bin.000001',
-> MASTER_LOG_POS=0;

3.3、mysql>start slave;
4、检查是否配置成功与排错
mysql>show slave status \G;
在打印出来的状态下,查看以下两个参数的值:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
如果这两个参数的值都是yes,则运行正常,可以在master数据库上添加一个数据库或者添加一张表,检查slave数据库上是否存在。
如果 这两个参数有任何一个不是 Yes,则说明存在问题。可以查看slave上的数据库错误日志文件查看错误原因。
Slave_IO_State, Slave_IO_Running, 和Slave_SQL_Running表明slave还没有开始复制过程。
常见的错误原因:
1、 server-id 一致。
2、 用户权限不够。需要的权限包括:
REPLICATION SLAVE,RELOAD,CREATE USER,SUPER。
GRANT REPLICATION SLAVE,RELOAD,CREATE USER,SUPER ON . TO {USER}@{IP_ADDR} WITH GRANT OPTION;

grant replication slave,replication client on . to slave@'192.168.80.52' identified by "123456";

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

mysql5.7 主从复制

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MYSQL5.7进阶之主从复制

主从复制是msql数据库的高可用 读写分离 容灾备份 等的基本要求在这主从复制之前我们需要准备以下条件保证master数据库和从数据库的mysql版本一致matser和从数据防火墙关闭 数据库端口开启 好了,开搞 奥利给 兄弟们 干就完了首先我们要配置主数据库
MYSQL5.7进阶之主从复制
2021-08-17

Docker搭建MySQL5.7主从复制的实现

目录1、新建mysql-master主服务器容器实例33072、新建mysql-master主服务器配置文件my.cnf3 重启master实例4 进入mysql-master容器5 master容器实例内创建数据同步用户6 新建mysql
2022-06-22

postgresql12 主从复制

前言 PostgreSQL 12 的一个重要变化是 recovery.conf 配置文件中的参数合并到 postgresql.conf,recovery.conf 不再使用 ; 参见:https://www.postgresql.org/docs/releas
postgresql12 主从复制
2021-02-24

mysql主从复制

两台mysql版本号为5.7以上 主库配置文件设置(注意设置在[mysqld]项中)主库的ip地址为:192.168.1.1server-id=1 #唯一id,主库设置1log-bin=mysql-bin #日志记录sync-binlog=1bin

	mysql主从复制
2018-10-04

mysql主从复制

一.主从复制简介2015年5月28日11时,12小时后恢复,损失:平均每小时106.48W$1)高可用2)辅助备份3)分担负载复制是 MySQL 的一项功能,允许服务器将更改从一个实例复制到另一个实例。1)主服务器将所有数据和结构更改记录到二进制日志中。2)从
mysql主从复制
2019-04-07

redis 主从复制

redis 主从复制master 节点提供数据,也就是写。slave 节点负责读。不是说master 分支不能读数据,也能只是我们希望将读写进行分离。slave 是不能写数据的,只能处理读请求主从实现客户端 127.0.0.1:6379 服务器 212.64
redis 主从复制
2017-04-16

PostgreSQL12-主从复制

注意:PostgreSQL 12对主从复制实现和配置做了重大改进,如废弃了recovery.conf,并将参数转换为普通的PostgreSQL配置参数,使得配置群集和复制更加简单。PostgreSQL数据库支持多种复制解决方案,以构建高可用性,可伸缩,容错的应
PostgreSQL12-主从复制
2019-09-10

mysql 主从复制

1, 准备二台机器或者服务器 ,保持mysq 版本一样或者版本相差不大;主机:114.215.198.39从机:116.62.234.2282    新建一个数据库 我的数据库是hlqzxm;进入主机的mysql 配置文件中修改配置; 修改完成配置文件记得重新
mysql 主从复制
2021-10-15

Redis主从复制

Redis支持简单易用的主从复制(master-slave replication)功能,该功能可以让从服务器成为主服务器的即使备份服务器。作用:主从备份,防止服务器宕机;读写分离,分担主服务器的任务;任务分离,从服务器分别担任备份工作和计算工作;注意点:Re
Redis主从复制
2017-12-16

编程热搜

目录