博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql主从复制
阅读量:5925 次
发布时间:2019-06-19

本文共 2964 字,大约阅读时间需要 9 分钟。

hot3.png

master //show master status\g; show slave status\G; 关闭防火墙和selinux 如下是一个线性的数据同步

主机一、192.168.122.20(主)
第一、编辑/etc/my.cnf 

log-bin=mysql-bin
binlog-do-db=westos
binlog-ignore-db=mysql
server-id=1(后续的id必须不一样)
grant replication slave,reload,super on *.* to westos@'192.168.122.%' identified by 'westos';给远程的从授权
flush privileges
show master status\g;查看状态
主机2:slave1(从)192.168.122.5

server-id=2

log-bin=mysql-bin
binlog-do-db=westos
binlog-ignore-db=mysql
log-slave-updates

以上四条是在从的后面再葛根从复制服务器添加的单纯的从只需要添加server-id即可。

mysql> change master to master_host='192.168.122.20',
    -> master_user='westos',
    -> master_password='westos',
    -> master_log_file='mysql-bin.0.0000?',master_log_pos=? //在数据库配置连接到主服务器
注?为 在master上操作 show master status\g;的具体显示

grant replication slave,reload,super on *.* to westos@'192.168.122.2' identified by 'westos';//这个是给下一个从服务器的授权这里是线性结构的主从及一主一从,从同时是下一个从的主一次类推可实现多连接。
主机3:slave1的从属slave2 server-id=3
1、mysqlbinlog --start-datetime="2015-06-15 8:59:22" --stop-datetime="2015-06-15 9:03:52" mysql-bin.000004 随便想恢复一段数据 这个可以去/var/lib/mysql/ 找到二进制文件 mysqlbinlog mysql-bin.000004 选出你要恢复的时间段 如果要整个恢复 也可以直接使用

2、mysqldump -pwestos westos> westos.bak
mysql -pwestos westos < westos.bak
//这个操作用于恢复建立主从复制后把之前的数据拷贝成一样。有以上两种办法
192.168.122.2 change master to master_host='192.168.122.5', master_user='westos', master_password='westos', master_log_file='mysql-bin.000001',master_log_pos=106;
之后start slave 即可。//建立连接首先观测slave status io问题多是火墙 selinux 和打错代码所至

ps:后续补充一主多从的结构配置。

双向复制非常简单

双向复制

两端都作
server-id=3
log-bin=mysql-bin
binlog-do-db=westos
binlog-ignore-db=mysql
id 不同

一端执行

grant replication slave,reload,super on *.* to westos@'192.168.122.5' identified by 'westos'; 作为master
change master to master_host='192.168.122.2', master_user='westos', master_password='westos', master_log_file='mysql-bin.000009',master_log_pos=213;作为slave

ok!

#######################################################################
下面是常会遇到的一些问题
######################################################################################################33
简单备份恢复
mysqldump -pwestos westos> westos.bak
mysql -pwestos westos < westos.bak
#############################################################
# at 1359
#150615  9:11:03 server id 1  end_log_pos 1464     Query    thread_id=17    exec_time=0    error_code=0
use `westos`/*!*/;
SET TIMESTAMP=1434330663/*!*/;
insert into users values ('user1','123')
/*!*/;
# at 1464
#150615  9:11:10 server id 1  end_log_pos 1569     Query    thread_id=17    exec_time=0    error_code=0
SET TIMESTAMP=1434330670/*!*/;
insert into users values ('user2','456')
/*!*/;
# at 1569
#150615  9:33:32 server id 1  end_log_pos 1588     Stop
DELIMITER ;
# End of log file
如上、 如果要恢复这两次插入操作 slave执行不是 mysqlbinlog --start-datetime="2015-06-15 9:11:03" --stop-datetime="2015-06-15 9:11:10" mysql-bin.000004 | mysql -uroot -pwestos
而是
mysqlbinlog --start-datetime="2015-06-15 9:11:03" --stop-datetime="2015-06-15 9:33:32" mysql-bin.000004 | mysql -uroot -pwestos


转载于:https://my.oschina.net/loveleaf/blog/467139

你可能感兴趣的文章
Java输入输出流和文件操作
查看>>
BASE64 编码和解码
查看>>
Spring高级应用之注入各类集合
查看>>
VS2010下的多线程窗口
查看>>
OC之非ARC环境下循环retain问题
查看>>
WWDC 2013 Session笔记 - Xcode5和ObjC新特性
查看>>
十五天精通WCF——第十一天 如何对wcf进行全程监控
查看>>
Cocoapods的安装和使用
查看>>
【LINUX学习】链接文件
查看>>
权威解读 | 人类社会正进入DT时代 如何激活生产力?
查看>>
【Mongodb】用户和认证 权限总结
查看>>
-bash: ulimit: pipe size: cannot modify limit: Invalid argument
查看>>
12篇学通C#网络编程——第一篇 基础之进程线程
查看>>
(三)java的数据类型
查看>>
Codeforces Round #323 (Div. 2) C.GCD Table
查看>>
MySQL账户安全设置
查看>>
用GCD线程组与GCD信号量将异步线程转换为同步线程
查看>>
正则表达式
查看>>
java序列化和反序列化
查看>>
【自定义标签开发】01-标签简介和开发第一个标签
查看>>