mysql数据库主从操作记录
master数据库已投入生产一段时间后,做主从复制的操作记录
环境:
master库:172.18.237.13
slave库:172.18.237.14
mysql版本说明:
master:mysql 5.6.33
slave:mysql 5.6.35
已经装了5.6.33版本,找了很久没有找到5.6.33版本的包,勉强找到了5.6.35版本的包,只能硬头皮用着(最终主从搭建成功,暂时未发现其他异常)
1、确保master、slave服务器时间同步
yum -y install ntp
ntpdate time.pool.aliyun.com #最好使用crontab做为任务定时时间同步
systemctl start ntpd
systemctl enable ntpd
2、修改master库my.cnf文件开启主从配置以及bin-log,加入如下配置参数:
#开启主从和binlog日志记录
server-id = 52
log-bin = mysql-bin
#binlog日志定期清理,单位天。
expire_logs_days = 5
#binlog日志保存路径和文件名,可根据实际目录进行改写
log-bin = /usr/local/mysql/data/binlogs/mysql-bin
#使用混合模式复制
binlog_format = mixed
#binlog每个日志文件大小
max_binlog_size = 100M
#binlog缓存大小
binlog_cache_size = 4M
#最大binlog缓存大小
max_binlog_cache_size = 512M
3、重启master数据库,使其主从配置生效。
service mysqld restart
/usr/local/mysql/data/binlogs/下已经存在bin-log日志表示成功开启bin-log日志记录
4、master数据库授权slave服务器主从同步帐号
grant replication slave on *.* to tb@'172.18.237.14' identified by '123456';
5、锁定主数据库,只允许读不许写入。
FLUSH TABLES WITH READ LOCK;
6、再进入master数据库,查看master状态,查看bin-log文件名以及position点,并做记录,slave连接master时会用到
show master status;
如:
File | Position
mysql-bin.000001 | 120
###这里通过mysqlbinlog工具将不可直接读取的bin-log日志转换为可读格式在进行查看。
###mysqlbinlog mysql-bin.000001 >abc.txt
##head -n10 abc.txt
7、备份master数据库至all.sql,可排除数据库系统库(Database|performance_schema|information_schema|mysql|test)|也可以不排除
mysql -e "show databases;" -uroot -p| grep -Ev "Database|performance_schema|information_schema|mysql|test" | xargs mysqldump -uroot -p --databases > all.sql
8、将all.sql备份文件scp至slave服务器
scp all.sql root@172.18.237.14:/root/
9、进入slave服务器将mysql的data目录中的文件进行备份(内容仅仅是初装的系统库等文件)
cp /data/mysql56 /data/mysql56.bak
10、再用all.sql还原到slave数据库中
mysql -uroot -p <all.sql
11、提前将bin-log日志存放目录创建并将其所属用户、用户组改为mysql,后续my.cnf配置将加入日志存放路径
cd /usr/local/mysql/data/
mkdir binglogs
chown -R mysql:mysql binglogs
13、进入slave服务器,修改slave库my.cnf配置文件,开启主从模式
#不能与master的值一致
server-id = 203
#从数据库通常要求只读(可以限定普通用户进行数据修改的操作,但不会限定具有super权限的用户(如超级管理员root用户)的数据修改操作。)
read_only=1
#还可以添加其他参数...
14、重启slave,使其主从配置生效
service mysqld restart
15、连接master数据库,配置master的相关参数并启动slave(position点用上面第6步查到的点)
change master to master_host='172.18.237.13',master_user='tb',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=120;
start slave;
16、查看主从连接状态
show slave status\G;
如下所示表示主从创建成功:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
17、到master数据库解锁表
UNLOCK TABLES;
18、观察slave状态中的Read_Master_Log_Pos点是否在不断的变化,若变化表示已经有新数据库同步
show slave status\G;

mysql数据库主从操作记录的更多相关文章
- mysql数据库主从同步读写分离(一)主从同步
1.mysql数据库主从同步读写分离 1.1.主要解决的生产问题 1.2.原理 a.为什么需要读写分离? 一台服务器满足不了访问需要.数据的访问基本都是2-8原则. b.怎么做? 不往从服务器去写了 ...
- (转)Mysql数据库主从心得整理
Mysql数据库主从心得整理 原文:http://blog.sae.sina.com.cn/archives/4666 管理mysql主从有2年多了,管理过200多组mysql主从,几乎涉及到各个版本 ...
- [转帖]mysql数据库主从配置
mysql数据库主从配置 https://www.toutiao.com/i6680489302947791371/ 多做实验 其实挺简单的 很多东西 要提高自信 去折腾. 架构与我 2019-04- ...
- MySQL 数据库高级操作 (配图)
MySQL数据库高级操作 1.一键部署mysql 数据库 2.数据表高级操作 3.数据库用户管理 4.数据库用户授权 1.首先一键部署mysql 数据库 : 可以看我之前的博客 https://www ...
- mysql数据库主从同步
环境: Mater: CentOS7.1 5.5.52-MariaDB 192.168.108.133 Slave: CentOS7.1 5.5.52-MariaDB 192.168. ...
- DBA必备:MySQL数据库常用操作和技巧
DBA必备:MySQL数据库常用操作和技巧 2011-02-25 15:31 kaduo it168 字号:T | T MySQL数据库可以说是DBA们最常见和常用的数据库之一,为了方便大家使用,老M ...
- Spring AOP实现Mysql数据库主从切换(一主多从)
设置数据库主从切换的原因:数据库中经常发生的是“读多写少”,这样读操作对数据库压力比较大,通过采用数据库集群方案, 一个数据库是主库,负责写:其他为从库,负责读,从而实现读写分离增大数据库的容错率. ...
- MySQL数据库主从同步延迟分析及解决方案
一.MySQL的数据库主从复制原理 MySQL主从复制实际上基于二进制日志,原理可以用一张图来表示: 分为四步走: 1. 主库对所有DDL和DML产生的日志写进binlog: 2. 主库生成一个 lo ...
- Linux下MySQL数据库主从同步配置
说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...
随机推荐
- HDU 5979 Convex【计算几何】 (2016ACM/ICPC亚洲区大连站)
Convex Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Subm ...
- H264 介绍[1]
频编解码技术有两套标准,国际电联(ITU-T)的标准H.261.H.263.H.263+等:还有ISO 的MPEG标准Mpeg1.Mpeg2.Mpeg4等等.H.264/AVC是两大组织集合H.263 ...
- mysql将查询结果导出csv文件的方法into outfile
例句: select * from table_name into outfile '/tmp/tmp.csv' fields terminated by ','; 详解: ① into outf ...
- RDA 互斥锁的使用
在多线程下,在同一时间内,可能有多个线程在操作.如果没有同步机制,那么很难保证每个线程操作的正确性. 1.互斥锁概念: 互斥锁提供一个可以在同一时间,只让一个线程访问临界资源的的操作接口.互斥锁(Mu ...
- Java 泛型 五:泛型与数组
简介 上一篇文章介绍了泛型的基本用法以及类型擦除的问题,现在来看看泛型和数组的关系.数组相比于Java 类库中的容器类是比较特殊的,主要体现在三个方面: 数组创建后大小便固定,但效率更高 数组能追踪它 ...
- 谈CSS布局中HTML标签语义化
很多人都在做前端,当然这里包括很多新手,也许在新手的想法就是在做布局的时候不要用font标签之类的就算是web标准了,这样一来,造成如今网上“div泛滥”,一看源文件,霍,除了div没其他标签了. 这 ...
- CSS单行文本溢出显示省略号
此为转载,原文地址 项目中常常有这种需要我们对溢出文本进行"..."显示的操作,单行多行的情况都有(具体几行得看设计师心情了),这篇随笔是我个人对这种情况解决办法的归纳,欢迎各路英 ...
- CodeForces 632C Grandma Laura and Apples (模拟)
题意:有n个人买苹果,当苹果剩余偶数时买走一半,当苹果剩余奇数时,先买走一半,再用半价买走一个苹果,最终苹果恰好卖完.农民收入为多少. 析:反向模拟. 代码如下: #pragma comment(li ...
- XML消息解析_php
初识php——微信消息处理 <?php $test = new weixin(); $test->Message(); class weixin{ public function Mess ...
- bzoj 1657: [Usaco2006 Mar]Mooo 奶牛的歌声【单调栈】
先考虑只能往一边传播,最后正反两边就行 一向右传播为例,一头牛能听到的嚎叫是他左边的牛中与高度严格小于他并且和他之间没有更高的牛,用单调递减的栈维护即可 #include<iostream> ...