“Mysql增加从库”的版本间的差异
跳到导航
跳到搜索
docker>Evan |
小 (导入1个版本) |
2019年10月14日 (一) 13:52的最新版本
目录
添加新从库
已运行一段时间的主库,要利用备份方式从主库dump 出数据到从库中,先完成基于到某个点的GTID复制,然后从库从那个点之后再开始追主库。 利用mysqldump备份,备份后文件中会有 SET @@GLOBAL.GTID_PURGED='604da4b4-7612-11e9-82c4-4a2e99d36c8d:1-8'; 利用xtrabackup 备份,备份后的文件中会直接记录需要路过的GTID信息.
mysqldump方式
new slave 添加my.cnf 信息
在主库上加锁,使只有只读权限
用前一天备份 主服务器上,导出新数据库 并导致到new slave
主库备份语句加上--master-data=2,记录其change master to信息 在从库上导入主库备份数据。 mysql -uroot -ppasswd < bak_20180411.sql 查看从库上的备份数据(原来主库备份):bak_20180411.sql,找到其中的CHANGE MASTER TO字段,记录position。 cat bak_20180411.sql | awk 'NR==22{print}' 或者 在把Master端的历史数据同步到Slave端之前,查询下bin_log位置: >show master status; 在备份文件weibo.sql查看binlog和pos值 #head-25weibo.sql --CHANGEMASTERTOMASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=107;#大概22行 4、主库与从库建立复制账号:on master一般不用做 一般在第一次做主从时就有了 grant REPLICATION SLAVE,replication client on *.* to 'root'@'%' identified by '123456'; 5、将从库定位到主库(用到了备份数据中的CHANGE MASTER TO信息): change master to master_user='root',master_host='192.168.18.1',master_password='123456',master_log_file='mysql-bin.00005',master_log_pos=84011; 6、启动从库: start slave; 7、查看主从是否成功: show slave status\G; 查看Last_IO_Error是否有报错。根据错误提示修改检查。 Slave_IO_Running Slave_SQL_Running Seconds_Behind_Master 查看三个字段。
查找bing 时间戳 on master
这个有空写一下出来 不然老有人来问 用日常备份增加一个slave