最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

CentOS服务器配置Mysql数据库主从复制集群

XAMPP相关 admin 854浏览 0评论

CentOS服务器配置Mysql数据库主从复制集群_MySQL数据库搭建主从关系

GA000098

在配置Mysql数据库主从复制集群的时候要保证:

1.主从服务器操作系统版本和位数一致。

2.Mysql版本一致。

为了保证稳定性,最好服务器操作系统和Mysql数据库环境一致。

 

CentOS服务器上Mysql的安装方法可以参见博客:

http://blog.csdn.net/jhq0113/article/details/43812895

服务器配置:

Master:192.168.1.18

Slave:192.168.1.16

 

Master(192.168.1.18)服务器:

1.编辑/etc/my.cnf

[root@jhq0229 ~]# vim /etc/my.cnf
2.配置

[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,表示备份全部数据库。

3.重启Mysqld服务

[root@jhq0229 ~]# service mysqld restart

 

4.为从Mysql创建用户

登录

[root@jhq0229 ~]# mysql -uroot -p
Enter password:

 

创建用户

mysql> create user ‘mastj’@’192.168.1.16’ identified by ‘123456’;

配置主从复制权限

mysql> grant replication slave on *.* to ‘mastj’@’192.168.1.16’ identified by ‘123456’;

 

若orders数据库中已经有数据,还需要:

锁定数据库

mysql> flush tables with read lock;

将数据导入到从数据库,方法有多种,我是用Navicat复制的,复制完成后:

查看master状态并解锁:

mysql> show master status;
+——————+———-+————–+——————+——————-+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+——————+———-+————–+——————+——————-+
| mysql-bin.000003 | 2005 | orders | mysql | |
+——————+———-+————–+——————+——————-+
1 row in set (0.00 sec)

mysql> unlock tables;
Slave(192.168.1.16)服务器:

1.配置服务ID

[root@jhq0113 ~]# vim /etc/my.cnf
在[mysqld]下面加入

server-id=2

重启Mysql服务

[root@jhq0113 ~]# service mysqld restart

 

2.配置复制

登录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;

 

参数详解:

master_host:主服务器的IP。
master_user:配置主服务器时建立的用户名
master_password:用户密码
master_port:主服务器mysql端口,如果未曾修改,默认即可。

master_log_file:日志文件名称,填写查看master状态时显示的File

master_log_pos:日志位置,填写查看master状态时显示的Position

master_connect_retry:重连次数

启动进程

mysql> start slave;

 

检查主从复制状态

mysql> show slave status\G
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.1.18
Master_User: mastj
Master_Port: 3306
Connect_Retry: 10
Master_Log_File: mysql-bin.000003
Read_Master_Log_Pos: 2369
Relay_Log_File: jhq0113-relay-bin.000002
Relay_Log_Pos: 647
Relay_Master_Log_File: mysql-bin.000003
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
若Slave_IO_Running和Slave_SQL_Running均为Yes,则表示连接正常。
此时就可以测试主从复制了。
————————————————
版权声明:本文为CSDN博主「苍穹0113」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jhq0113/java/article/details/44263367

转载请注明:XAMPP中文组官网 » CentOS服务器配置Mysql数据库主从复制集群

您必须 登录 才能发表评论!