CentOS服务器Mysql主从复制集群的搭建
配置MySQL数据库主从复制集群
在配置Mysql数据库主从复制集群的时候要保证:
- 主从服务器操作系统版本和位数一致。
- Mysql版本一致。
为了保证稳定性,最好服务器操作系统和Mysql数据库环境一致。
服务器配置
Master:
- IP: 192.168.1.18
Slave:
- IP: 192.168.1.16
Master(192.168.1.18)服务器
编辑/etc/my.cnf
[root@jhq0229 ~]# vim /etc/my.cnf
配置
[mysqld] datadir=/data/mysql socket=/var/lib/mysql/mysql.sock user=mysql #主从复制配置 innodb_flush_log_at_trx_commit=1 sync_binlog=1 #需要备份的数据库 binlog-do-db=orders #不需要备份的数据库 binlog-ignore-db=mysql #启动二进制文件 log-bin=mysql-bin #服务器ID server-id=1 # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
若没有配置binlog-do-db和binlog_ignore_db,表示备份全部数据库。
重启Mysqld服务
[root@jhq0229 ~]# service mysqld restart
为从Mysql创建用户
- 登录
[root@jhq0229 ~]# mysql -uroot -p
- 创建用户
mysql> create user 'mastj'@'192.168.1.16' identified by '123456';
- 登录
启动进程
mysql> start slave;
Slave(192.168.1.16)服务器
配置复制
- 登录mysql
[root@jhq0113 ~]# mysql -uroot -p
- 执行
mysql> change master to master_host='192.168.1.18', -> master_user='mastj', -> master_password='123456', -> master_port=3306, -> master_log_file='mysql-bin.000003', -> master_log_pos=2005, -> master_connect_retry=10;
- 登录mysql
检查主从复制状态
mysql> show slave status\G
若Slave_IO_Running和Slave_SQL_Running均为Yes,则表示连接正常。
此时就可以测试主从复制了。