※ 前提:主从数据库版本一致!!!
主服务器部分:
1.修改数据库配置
#vi /etc/mysql/my.cnf
[mysqld]
log-bin=mysql-bin #[必须]启用二进制日志
server-id=1 #[必须]服务器唯一ID,默认是1,一般取IP最后一段
2.检查mysql是否允许连接
这一步骤主要检查:
①服务器防火墙
②数据库配置是否允许所有网络连接
bind-address = 0.0.0.0 #这样表示允许所有网段连接
3.新建mysql用户(从服务器会用到此账号配置)
①
mysql> grant replication slave on *.* to '用户名'@'从服务器ip' identified by '密码';
②刷新权限
mysql> flush privileges;
4.重启mysql,进入mysql终端查看master状态
①
# service mysql restart
②查看master状态
mysql> show master status
(记录 file 和 position 的值,从服务器配置用到。这个时候不要去动主数据库,会影响 position 的值。)
——————————————————————————————————
从服务器部分:
5.修改数据库配置
#vi /etc/mysql/my.cnf
[mysqld]
log-bin=mysql-bin #[可选]启用二进制日志
server-id=2 #[必须]服务器唯一ID,一般取IP最后一段(不能与主服务器相同)
6.登录mysql终端,修改master配置
mysql> change master to master_host='主服务器ip',
master_user='步骤3里面设置的数据库用户名',
master_password='步骤3里面设置的数据库密码',
master_log_file='步骤4里面的file',
master_log_pos='步骤4里面的position';
7.启动slave从库
mysql> start slave;
8.重启mysql服务
# service mysql restart
9.查看slave从库
mysql> show slave status \G;
Slave_IO_Running 和 Slave_SQL_Running 必须都为 Yes 才算成功。