mysql数据库主从操作记录
2018-11-22 08:41:01来源:博客园 阅读 ()
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数据库授权slave服务器主从同步帐号
grant replication slave on *.* to tb@'172.18.237.14' identified by '123456';
3、锁定master库
FLUSH TABLES WITH READ LOCK;
#解锁命令:UNLOCK TABLES;
4、备份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
5、将all.sql备份文件scp至slave服务器
scp all.sql root@172.18.237.14:/root/
6、进入slave服务器将mysql的data目录中的文件进行备份(内容仅仅是初装的系统库等文件)
cp /data/mysql56 /data/mysql56.bak
7、再用all.sql还原到slave数据库中
mysql -uroot -p <all.sql
8、提前将bin-log日志存放目录创建并将其改用户、用户组改为mysql,my.cnf配置将加入日志存放路径
cd /usr/local/mysql/data/
mkdir binglogs
chown -R mysql:mysql binglogs
9、修改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
10、重启master数据库,使其主从配置生效,此时数据库会从之前的加锁状态自动解锁。
service mysqld restart
/usr/local/mysql/data/binlogs/下已经存在bin-log日志表示成功开启bin-log日志记录
11、进入master数据库,查看master状态,查看bin-log文件名以及position点
show master status;
如:
File | Position
mysql-bin.000001 | 1692
12、由于数据库重启会自动解锁,又是生产数据库,此时通常有数据库写入或更新,position点
也会持续变化,所以此时查看到的position点不是最初的,应找到bin-log日志文件查看最初的position点作为slave同步初始点。
这里通过mysqlbinlog工具将不可直接读取的bin-log日志转换为可读格式在进行查看。
mysqlbinlog mysql-bin.000001 >abc.txt
head -n10 abc.txt
查看结果如下:(找到第一个position点作为slave同步初始点end_log_pos 120)
#181121 21:27:14 server id 52 end_log_pos 120 CRC32 0xcc4e91f2 Start: binlog v 4, server v 5.6.33-log created 181121 21:27:14 at startup
13、进入slave服务器,修改slave库my.cnf配置文件,开启主从模式
#不能与master的值一致
server-id = 203
#从数据库通常要求只读(可以限定普通用户进行数据修改的操作,但不会限定具有super权限的用户(如超级管理员root用户)的数据修改操作。)
read_only=1
#还可以添加其他参数...
14、重启slave,使其主从配置生效
service mysqld restart
15、连接slave数据库,配置master的相关参数并启动slave(position点用上面第12步查到的点)
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
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- centos7下安装mysql6初始化安装密码 2020-06-05
- Linux系统CentOS6.9 x64 配置jdk和MySQL8.0环境,授予MySQL 2020-05-27
- Linux 下MySQL的安装及基本使用 2020-05-25
- 一次云服务器安装达梦数据库后无法远程访问问题处理 2020-05-24
- Linux安装MySQL 2020-05-12
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash