- 确保主从库使用同一版本数据库
- 在主库上设置一个复制使用账户,并授予replication slave权限。
grant replication slave on *.* to 'root'@'IP' identified by 'password';
- 修改主数据库服务器配置文件my.cnf。
[mysqld]
log-bin = $dir$
server-id = 1
- 在主数据上设置读锁有效并设置快照。
flush tables with read lock
- 得到主库上当前的二进制日志名和偏移量值。
show master status
- 备份主数据库并恢复到从数据库上。
- 主数据库备份完成后恢复读写操作。
unlock tables
- 修改从数据库服务器配置文件my.cnf。
[mysqld]
server-id = 2
- 在从库上,使用–skip-slave-start选项启动从数据库,
mysqld_safe --skip-slave-start &
Starting mysqld daemon with databases from %backup_data%
- 对从数据库服务器做相应设置。
change master to
master_host=
master_port=
master_user=
master_password=
master_log_file=
master_log_pos=
- 在从库上启动slave线程
start slave
常见错误及注意事项:
- log-bin文件及server-id必须设置在[mysqld]目录下。
- 主从服务器的server-id值必学不同。
- 从服务器设置master-log-file文件必须与主服务器文件相同。