Maison >base de données >tutoriel mysql >Mysql 主从复制配置步骤

Mysql 主从复制配置步骤

WBOY
WBOYoriginal
2016-06-07 15:13:101065parcourir

Mysql 主从复制配置步骤 说明: 推荐主服务器和从服务器使用相同的版本 。 在许多情况下,从新的主服务器向旧的从服务器复制将会失败。一般原则, 版本较低的 master 可以和较高版本的 slave 一起可以正常工作 ,但不能反过来。 1. 在 master 上建立有复制权

Mysql 主从复制配置步骤

                                                              

说明:

推荐主服务器和从服务器使用相同的版本在许多情况下,从新的主服务器向旧的从服务器复制将会失败。一般原则,版本较低的master可以和较高版本的slave一起可以正常工作,但不能反过来。

 

1.master上建立有复制权限的账户

GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO backup@60.*.*.*  IDENTIFIED BY 'slavepass';  

FLUSH PRIVILEGES ;  

 

 

2.mysqldumpmaster上的数据库并导入到slave

master# mysqldump -uroot -p high>high.sql

 

 

3.master my.cnf配置文件replication部分添加:

server-id     = 1

log_bin       = /var/log/mysql/mysql-bin.log

binlog_do_db        = high

binlog_ignore_db = mysql

 

重启mysql

# /etc/init.d/mysql restart

查看master的状态

mysql> show master status;

 

 

4.slave my.cnf配置文件replication部分添加:

server-id = 2  

master-host = 60.*.*.*  

master-user = backup  

master-password = slavepass  

master-port = 3300  

replicate-do-db = high 

replicate-ignore-db = mysql

 

重启mysql

# /etc/init.d/mysql restart

查看slave的状态

mysql> show slave status;

 

slave上手动设置master

查看master的信息:

mysql> show master status;

+------------------+----------+--------------+------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+----------+--------------+------------------+

| mysql-bin.000001 |     2244 | high      | mysql            | 

+------------------+----------+--------------+------------------+

1 row in set (0.00 sec)

 

停掉slave

mysql> stop slave;

 

slave上执行如下命令:

CHANGE MASTER TO MASTER_HOST='60.*.*.*', MASTER_PORT=3300,

MASTER_USER='backup', MASTER_PASSWORD='slavepass',MASTER_LOG_FILE='mysql-bin.000001',  MASTER_LOG_POS=2244;

 

启动slave

mysql> start slave;

 

 

5.masterhigh库中创建、删除表,观察slave上是否也成功创建、删除表。

 

 

6.slave上给high用户授权,以便在master出现问题时可以临时切到slave上。

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON high.* TO 'high'@'60.*.*.%' IDENTIFIED BY 'high'; 

FLUSH PRIVILEGES;

 

 

7.问题

发现:Slave_IO_Running No

原因:没有在master对复制账号授权。按第一步操作即可解决。

 

 

 

8.主从服务器的复制状态查看命令:

SHOW PROCESSLIST;

SHOW MASTER STATUS;

show slave status;

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn