mysql主从复制

1.安装mysql

  

yum install mysql-server mysql-devel

2.启动mysql

service mysqld start //启动
service mysqld restart //重启
service mysqld stop //停止
service --status-all | grep mysqld //查看mysql服务状态

3.创建mysql账号

mysqladmin -u root password '123'

4.进入mysql

mysql -uroot -p123

5.创建一个从服务器用来访问主服务器的账号

? grant //查看grant授权的帮助文档
grant all on *.* to user1@192.168.1.9 identified by '123'

6.配置主服务器

vi /etc/my.cng //修改mysql配置文件
log-bin=mysql-bin //开启bin-log日志
server-id=1 //设置服务器ID,不能重复

7.bin-log日志相关的一些指令

show master status //查看bin-log日志的信息
flush logs //刷新日志
reset master //重置
show master logs //显示bin-log日志
 

8.配置从服务器

vi /etc/my.cnf 
bin-log=mysql-bin //开启bin-log日志
server-id=2 //设置服务器ID
master-host=192.168.1.7 //主服务器地址
master-user=user1 //账号
master-password=123 //密码
master-port=3306 //端口

9.从服务器相关的一些操作指令

start slave //停止从服务器的复制功能
stop slave //开启从服务器的复制功能
change master to //修改主服务器配置
show slave status G //查看从服务器相关的配

mysql数据备份与恢复

mysqldump -uroot -p123 test -l -F > /tmp/test.sql //备份数据库,-l锁定数据库使其只读,-F 刷新bin-log日志
mysql -uroot -p123 test -vf < /tmp/test.sql   //恢复数据,-v 查看详细信息,-f遇到错误跳过执行下一个语句

bin-log数据恢复

mysqlbinlog --no-defaults mysql-bin.000003 //查看某个的信息
mysqlbinlog --no-defaults mysql-bin.000003 | mysql -uroot -p123 test //bin-log数据恢复
//bin-log选择性的恢复
mysqlbinlog --no-defaults --stop-position="644" mysql-bin.000003  | mysql -uroot -p123 test  //恢复mysql-bin.000003日志,从起始位置到644位置的增删改操作
//其他类似参数说明
--start-position="106"  //开始位置
--start-date="2015-1-1" //开始时间
--stop-date="2015-1-31" //结束时间
原文地址:https://www.cnblogs.com/xiaodo0/p/4313263.html