Slave服务器的版本要等于或者高于master服务器

现在的实例是在mysql 5.7上的主从配置

a) master服务器的my.cnf配置,server_id 推荐用IP的后两位数字

[mysqld]
federated
port=
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
server_id =
log-bin=mysql-bin
expire_logs_days=
binlog-do-db=dbname
binlog-ignore-db=mysql,information_schema
max_allowed_packet=500M
event_scheduler=
max_connections=
character_set_server=utf8
init_connect='SET NAMES utf8'
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
default-character-set=utf8

b) master服务器授权一个可以数据同步的用户(这里的用户是repluser,密码123456)

grant replication slave on *.* to 'repluser'@'%' identified by '';

c) master 服务器重启mysql

service mysqld restart

d) slave服务器的my.cnf配置, server_id 43210是slave IP的后两位[mysqld]federatedport=50000basedir = /usr/local/mysql

datadir = /usr/local/mysql/data
server_id = 43210
log-bin=mysql-bin
expire_logs_days=3
binlog-do-db=dbname
log_slave_updates=1
binlog-ignore-db = mysql,information_schema
max_allowed_packet=500M
max_connections=2000
character_set_server=utf8
init_connect='SET NAMES utf8'
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
default-character-set=utf8

e) salve 服务器测试连接master的同步用户(repluser),测试可以连接,即可退出

mysql -hX.X.X.X -urepluser -p123456 -P50000

f) slave服务器重启

service mysqld restart

*****************************************************************************************************************************

1:在master服务器跑

mysqldump --master-data= --single-transaction -uroot -p'your_password' dbname > /root/mysqldump.sql

2:把主服务器产生的mysqldump.sql 做gzip 压缩,上传到从服务器

gzip - /root/mysqldump.sql
scp /root/mysqldump.sql.gz root@X.X.X.X:/root/

3:在从服务器上首先要创建一个空的数据库,数据库 名称和即将要要入的数据库名称一致

drop database if exists dbname;
create database dbname;

有两种方法导入

方法一, 进入mysql命令行操作

use dbname;
source /root/mysqldump.sql

方法二,不进入mysql命令行操作

mysql -uroot -p dbname < /root/mysqldump.sql

4:用vi查看 mysqldump.sql中的MASTER_LOG_FILE和MASTER_LOG_POS信息

5:在从服务器运行

stop slave;
CHANGE MASTER TO master_host='192.X.X.X', MASTER_LOG_FILE='mysql-bin.000028', MASTER_LOG_POS=, master_user='repluser', master_password='', master_port=; 

可以参考一下:https://www.jianshu.com/p/3932551e0221

6:在从服务器运行 start slave;

7:在从服务器运行show slave status\G; 查看Slave_IO_Running和Slave_SQL_Running 两列是否都为YES,Seconds_Behind_Master为0,就正常了

生产环境设置mysql主从复制的更多相关文章

  1. MySQL生产环境下的主从复制启动项

    MySQL的复制参数除了我们之前搭建主从时遇到的那几个之外,还有以下两个: 1.log-slave-updates 这个参数用来配置从库上是否启动了二进制日志的功能,默认是不开启的,如果开启了那么从库 ...

  2. 生产环境搭建MySQL复制的教程(转)

    [导读] 网络上有很多关于MySQL复制搭建的步骤和范例,以及手册上有一章完整的篇幅,讲述MySQL复制的原理.搭建步骤.优化等,但依然存在很多刚开始学习MySQL知识或者刚进入DBA行业的朋友咨询, ...

  3. 四步法分析定位生产环境下MySQL上千条SQL中的问题所在

    第一步:通过以下两种方式之一来打开慢查询功能 (1)方式一:通过修改mysql的my.cnf文件 如果是5.0或5.1等版本需要增加以下选项: log-slow-queries="mysql ...

  4. mysql_secure_installation 安全安装(用于生产环境设置)

    编译安装完mysql5.6,如果用于生产环境,最好执行mysql_secure_installation来做一些常规化安全设置. 需要提前将~mysql/bin加入环境变量 /apps/mysql// ...

  5. 阿里云ESC学生服务器搭建springboot项目生产环境(Mysql+JDK)不需要上传安装包

    嗯,之前服务器被挖矿的病毒弄的登录不进去了,所以联系了阿里云客服,提交工单,最后建议重置,所以我就重置了, 嗯,学习经验,docker如果懂的不是太多,不要随便云部署,都给别人挖矿了.   Mysql ...

  6. 生产环境中mysql数据库由主从关系切换为主主关系

    目录 一.清除原从数据库数据及主从关系 1.1.关闭主从数据库原有的主从关系 1.2.清除从数据库原有数据 二.将主库上的数据备份到从库 2.1.备份主库数据到从库 2.2.在从库使用tsc.sql文 ...

  7. windows环境设置mysql自动备份(测试成功)

    00.背景介绍 最近做了个小程序,使用的是mysql数据库,涉及到将程序数据备份的事:虽然大部分数据库客户端工具都具有备份功能,但并不能做到定期自动备份:在Windows环境下,手工备份MySQL是很 ...

  8. 生产环境中mysql+keepalive双主模式,keepalive守护进程实现双主切换提供数据库服务

    mysql+keepalive实现浮动地址自动切换,由于keepalive无自带健康检查功能,所以必须自动编写健康检查守护进程(监控DB1和DB2数据库的监控状态,来保证浮动地址双机自动切换.) 一, ...

  9. mysql主从复制延时判断+脚本检查

    在生产环境中,主从复制常常会有复制延迟的现象,主要是master是并发的写,而slave是单线程的应用relay log,所以会出现复制延时,在MySQL 5.6版本中有了基于库的多线程复制.还有Ma ...

随机推荐

  1. 使用_slots_变量限制class实例能添加的属性

    如果我们想要限制实例的属性怎么办?比如,只允许对Student实例添加name和age属性. 那么我们在Student类里面增添_slots_变量 例如: class Student(object): ...

  2. vnode

    获取vnode对象 vm.$slots对象下的所有值 vm.$scopedSlots对象的值返回一个函数,该函数执行后返回vnode对象 directives自定义指令中钩子函数的参数3和参数4,例如 ...

  3. 中间件c10k问题

    中间件c10k问题 没有使用iocp/epoll/kqueue通讯的中间件,中间件就算部署在拥有多核CPU的强大服务器上,最头痛的问题是C10K问题. 中间件没有办法通过优化程序,提升CPU利用率来处 ...

  4. H5_0015:判断是否是微信加载

        var e = document.createElement("script");     e.src = "https://res.wx.qq.com/open ...

  5. Docker 镜像仓库为什么要分库分权限?

    先说一个事故案例: 场景:某大型互联网电商公司,使用一个镜像仓库管理所有Docker镜像.开发者打出的镜像上传到唯一的镜像库,测试通过后,运维环境的 Kubernetes 直接从这个库里拉取镜像,所有 ...

  6. [转]三分钟学会.NET Core Jwt 策略授权认证

    [转]三分钟学会.NET Core Jwt 策略授权认证 一.前言# 大家好我又回来了,前几天讲过一个关于Jwt的身份验证最简单的案例,但是功能还是不够强大,不适用于真正的项目,是的,在真正面对复杂而 ...

  7. ECMAScript基本语法——⑦js特殊的语法

    定义方法 无法弹出因为是局部变量 可以弹出因为是全局变量 这样写可读性比上面的高

  8. CodeForces - 651C Watchmen (去重)

    Watchmen are in a danger and Doctor Manhattan together with his friend Daniel Dreiberg should warn t ...

  9. C++——流类库与输入/输出

    I/O流的概念 当程序与外界环境进行信息交换时,存在着两个对象,一个是程序中的对象,另一个是文件对象,流是一种抽象,它负责在数据的生产者和数据的消费者之间建立连接,并管理数据的流动.程序建立一个流对象 ...

  10. ROS2GO 与WIN10 双系统安装

    关于ROS2GO的一些心得: 我是一个ROS的探索者,在接触ROS一段时间后,意外发现了一个关于ROS2GO的信息,是天之博特的微信公众号发表的.简单来说ROS2GO就是一个装了ROS的Ubuntu系 ...