配置MYSQL服务器实现主主复制

声明

作者:昨夜星辰

博客:http://yestreenstars.blog.51cto.com/

本文由本人创作,如需转载,请注明出处,谢谢合作!

目的

配置MYSQL服务器实现主主复制。

实验环境

服务器1(以下简称S1):

IP:192.168.1.88

服务器2(以下简称S2):

IP:192.168.1.89

OS:CentOS 6.2 32

MYSQL:5.1.73

配置

# 先停止S1和S2的iptables防火墙。
service iptables stop

# 修改S1的/etc/my.cnf文件,在[mysqld]字段下添加以下内容:
log-bin=mysql-bin
log-slave-updates
server-id=1

# 同理,修改S2的/etc/my.cnf文件,在[mysqld]字段下添加以下内容(注意server-id不能一样):
log-bin=mysql-bin
log-slave-updates
server-id=2

# 重启S1和S2的mysqld服务。
service mysqld restart

# 登录S2的数据库,执行锁表命令,防止在查看二进制日志文件时有人对数据进行修改操作,然后再执行查看命令,记录二进制日志文件名和当前位置。
mysql> flush tables with read lock;
Query OK, 0 rows affected (0.00 sec)
mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000003 |      191 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

# 登录S1的数据库,创建用于复制的用户并将S2配置成主复制服务器(读者注意根据实际情况修改具体参数)。
mysql> grant replication slave on *.* to ‘slave‘@‘192.168.1.89‘ identified by ‘123456‘;
Query OK, 0 rows affected (0.00 sec)
mysql> change master to master_host=‘192.168.1.89‘,master_user=‘slave‘,master_password=‘123456‘,master_log_file=‘mysql-bin.000003‘,master_log_pos=191;
Query OK, 0 rows affected (0.05 sec)

# 在S1的数据库上执行锁表和查看二进制日志文件信息的命令。
mysql> flush tables with read lock;
Query OK, 0 rows affected (0.00 sec)
mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000003 |      260 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

# 在S2的数据库执行解锁表命令,并创建用于复制的用户并将S1配置成主复制服务器。
mysql> unlock tables;
Query OK, 0 rows affected (0.00 sec)
mysql> grant replication slave on *.* to ‘slave‘@‘192.168.1.88‘ identified by ‘123456‘;
Query OK, 0 rows affected (0.00 sec)
mysql> change master to master_host=‘192.168.1.88‘,master_user=‘slave‘,master_password=‘123456‘,master_log_file=‘mysql-bin.000003‘,master_log_pos=260;
Query OK, 0 rows affected (0.03 sec)

# 在S1的数据库执行解锁表命令,并启动复制。
mysql> unlock tables;
Query OK, 0 rows affected (0.00 sec)
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)

# 在S2的数据库启动复制。
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)

# 最后,执行show slave status;命令可以查看配置是否成功,如果下面这两个为YES即为成功。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
            
# 读者也可以通过创建数据库等操作来验证是否同步。
时间: 2024-08-27 14:04:42

配置MYSQL服务器实现主主复制的相关文章

CentOS6.4 配置mysql服务器启动多个端口,同步单表数据

============================================================ ====多端口启动==== ============================================================ 创建数据目录 mkdir /usr/local/mysql/var1/ mkdir /usr/local/mysql/var2/ =================================================

Confluence 6 配置 MySQL 服务器

在这一步,你将要配置你的 MySQL 数据库服务器. 注意: 如果你尝试连接你的 Confluence 到一个已经存在的 MySQL 数据库服务器.我们强烈建议你按照下面描述的安装步骤在 MySQL 中运行配置步骤: 配置 MySQL 服务器: 运行 MySQL 安装指南: 如果你连接 Confluence 到一个已经存在的 MySQL 服务器,请选择 重新配置实例(Reconfigure Instance). 选择 高级配置(Advanced Configuration). 选择符合你硬件要求

Linux下安装配置MySQL服务器

一.安装环境 ============ OS:centos6.8 MySQL:mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz 安装目录:/usr/local/mysql57 用root用户安装. 二.安装步骤 ============ 1.解压安装包 [root]#cd /usr/local [root]#mv  /path/to/mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz  . [root]#tar -xzf mysq

jsp 配置MySQL服务器 以及数据的插入和读取

不多说,直接上代码.百度上面也是一大堆,大家多问百度就行. 在利用JDBC访问数据库过程中,主要涉及三种资源:对数据库的连接的连接对象Connection,SQL语句对象 Statement,访问结果集ResultSet 或 RowSet. package ShopCar; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLExcepti

Centos7配置mysql主从:一主多从

mysql主从复制原理1.首先master将数据更新记录到二进制binlog文件2.slave通过I/O线程向master请求binlog日志文件指定位置之后的内容3.master接收到slave的io请求之后,就会从binlog相应的位置点开始,给slave传日志4.slave接收到日志后,会写入本地的relay log中继日志中5.slave通过sql线程读取中继日志的内容,在数据库中执行相应的操作,到此为止,master和slave上的数据一致,之后slave服务器进入等待状态,等待mas

MySQL数据库主从(主主)配置

一.系统环境: centos7.4 (centos 1708) mysql 5.7 master主机的IP地址为192.168.159.50 slave主机的IP地址为192.168.159.51 Master主机的同步用户名和密码:slave/[email protected] slave主机的同步用户名和密码:master/[email protected] 二.修改MySQL数据库配置文件 1.master主机 vi /etc/my.cnf 加入以下内容 server-id = 1 ---

使用mysql验证配置ftp服务器

配置说明: 1.mysql服务器:CentOS6.6    192.168.1.62 2.vsftpd服务器:CentOS6.6    192.168.1.61 一.配置mysql服务器 1.安装mysql [[email protected] ~]# yum -y install mysql-server [[email protected] ~]# service mysqld start [[email protected] ~]# mysql 2.准备数据库及相关表 mysql> cre

jmeter连接配置带跳板机(SSH)的mysql服务器

jmeter连接配置mysql服务器时,如果数据库服务器没有通过ssh连接,则只需要配置相应的jdbc参数就可以了,即请求域名或ip地址:3306,如果数据库服务器是通过SSH连接的,那需要通过中间远程连接工具来登录,此处使用的远程连接工具为Putty,配置的时候需要将数据库的ssh->tunnel中的请求域名先映射到本地3306的端口(一般mysql的请求端口设置为3306,只是符合大众流~~~),然后通过ssh的服务器ip及端口来访问,具体的配置请参考如下: 1.首先,下载并打开Putty喽

mysql主主复制(双主复制)配置步骤

以前我们介绍的都是主从复制,这里给各位介绍一个双主复制了,下面都希望两个主服务器数据自动复制的话可参考一下此文章. MySQL主主复制结构区别于主从复制结构.在主主复制结构中,两台服务器的任何一台上面的数据库存发生了改变都会同步到另一台服务器上,这样两台服务器互为主从,并且都能向外提供服务.有了上一节的主从复制,那么主主复制就很容易了. 一.先修改配置文件 服务器A(192.168.1.254)配置如下 log-bin   = mysql-binserver-id = 1 expire-logs