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. 安装jupyter使用notebook

    安装jupyter pip3 install jupyter --default-timeout=1000 -i https://pypi.tuna.tsinghua.edu.cn/simple 使用 ...

  2. 修改testlink上传文件大小

    大家在使用testlink导入测试时,可能会遇到由于上传的文件太大,而不能上传的现象.当然建议大家在导入用例或者上传文件时,不要上传过大的文件,因为这样的速度确实非常慢.可是由于特殊的原因我们必须要导 ...

  3. python3包、模块、类、方法的认识

    包>>模块>>类>> 函数 包:就是一个目录,import time from+import导入包中的部分模块 直接到类 from budaoguan.common ...

  4. 1级搭建类108-Oracle 11gR2 SI FS(Windows Server 2019)公开

    Oracle 11gR2 单实例文件系统在Windows Server 2019上的安装 在线查看

  5. Python之xlrd模块读取xls文件与报错解决

    安装 pip3 install xlrd 用法 Sheet编号从0开始 rows,colnum编号均从0开始 合并的单元格仅返回第一格内容 Sheets只能被调用一次,可获取所有sheet取idx 无 ...

  6. react-native构建基本页面6---打包发布

    签名打包发布Release版本的apk安装包 请参考以下两篇文章: ReactNative之Android打包APK方法(趟坑过程) React Native发布APP之签名打包APK 如何发布一个a ...

  7. eclipse调字体大小

    首先调java字体: Window -> Preferences -> General -> Appearance -> Colors and Fonts -> Java ...

  8. SQL四种语言:DDL,DML,DCL,TCL 的区别

    1.DDL(Data Definition Language)数据库定义语言statements are used to define the database structure or schema ...

  9. nodejs使用promise实现sleep

    个人博客 地址:http://www.wenhaofan.com/article/20181120180225 let sleep = function (delay) { return new Pr ...

  10. crontab定时任务打包备份文件并删除过期文件

    Crontab 示例,最后这里要写成shell脚本定时运行 30 17 * * * cp -rf /usr/local/tomcat9-jforum/tomcat/logs/catalina.out ...