mysql主从复制

1

创建从数据库服务器用来连接主数据库服务器的用户名密码,并授予 REPLICATION SLAVE 权限。

2

配置主数据库服务器如下:

log-bin=mysql-bin
server-id=1

3

配置从数据库服务器如下:

server-id=2
skip-slave   #从数据库服务器启动时,不启动复制进程。
replicate-do-db=xxx 指定要复制的数据库

 

4

将主数据库服务器的历史数据导入从数据库服务器,并记录主数据库服务器信息

mysql> FLUSH TABLES WITH READ LOCK;

 

mysql > SHOW MASTER STATUS;
+---------------+----------+--------------+------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+---------------+----------+--------------+------------------+
| mysql-bin.003 | 73       | test         | manual,mysql     |
+---------------+----------+--------------+------------------+
 

锁定表以后,在另一个命令窗口使用mysqldump导出数据

mysql> UNLOCK TABLES;  #解锁

5

数据导入从数据库服务器

设置复制点信息 

mysql> CHANGE MASTER TO
    ->     MASTER_HOST='master_host_name',
    ->     MASTER_USER='replication_user_name',
    ->     MASTER_PASSWORD='replication_password',
    ->     MASTER_LOG_FILE='recorded_log_file_name',
    ->     MASTER_LOG_POS=recorded_log_position;
START SLAVE # 启动复制服务

最后记得将从数据库服务器配置文件中的skip-slave移除。

 

主从配置完成,show slave/master status可用来查看状态。

 

你可能感兴趣的:(mysql)