Mysql设置主从备份

来源:互联网 发布:人工智能在线观看免费 编辑:程序博客网 时间:2024/06/13 01:07

主服务器ip:192.168.0.100
从服务器ip:192.168.0.101
主从服务器的mysql应该使用同一版本

1、设置主服务器
修改my.cnf(Ubuntu默认安装在/etc/mysql/my.cnf)

log-bin=mysql-bin  #记录日志,用于同步server-id = 1  binlog-do-db=test  #同步数据binlog-ignore-db=mysql  #忽略同步数据库

重启MySQL,创建一个MySQL帐号为同步专用

GRANT REPLICATION SLAVE ON *.* TO backup@192.168.0.101 IDENTIFIED BY '123456';  #设置与从服务交互的用户名FLUSH PRIVILEGES ;  

复制数据库:

FLUSH TABLES WITH READ LOCK;

锁定表清除写入操作

UNLOCK TABLES;
SHOW MASTER STATUS; –记录下File列显示日志名,而Position显示偏移量

导出数据要同步的数据给从服务器用
mysqldump -uroot -p123456 test>/root/ubuntu/test.sql

2、设置同步Slave
建库

create database test;

导入数据

mysql -uroot -p123456 test< test.sql

修改my.cnf文件,添加

server-id = 2  log-bin=mysql-binmaster-host = 192.168.0.100 master-user = backup  master-password = 123456master-port = 3306  replicate-ignore-db=mysql  #备份忽略表replicate-do-db=test  #备份表master-connect-retry=60

server-id不能与master相同
如果设置不成功可以执行:mysql>SET GLOBAL server_id=2;

重启从服务器MySQL

在主服务器A MySQL命令符下:

show master status;
+——————+———-+————–+————————–+
| File | Position: | Binlog_Do_DB | Binlog_Ignore_DB |
+——————+———-+————–+————————–+
| mysql-bin.000006 | 107 | test | mysql,information_schema |
+——————+———-+————–+————————–+

从服务器执行

slave stop;  MySQL> CHANGE MASTER TO  -> MASTER_HOST='192.168.0.100',  -> MASTER_USER='backup',  -> MASTER_PASSWORD='123456',  -> MASTER_LOG_FILE='mysql-bin.000006',  -> MASTER_LOG_POS=107;  slave start;  mysql>SHOW SLAVE STATUS\G;

Slave_IO_Running: Yes
Slave_SQL_Running: Yes
如果都是yes,那代表已经在同步

0 0
原创粉丝点击