Linux主从同步配置指南

1. 概述

Linux主从同步是一种用于在多个服务器之间实现数据同步的技术。当一个服务器作为主服务器,其他服务器作为从服务器时,主服务器上的数据更改会自动同步到从服务器上。这种配置可以提高数据的可用性和可靠性,同时也可以减轻主服务器的负载。本文将介绍如何配置Linux服务器的主从同步。

2. 准备工作

2.1 安装和配置MySQL

首先,要进行主从同步,我们需要在服务器上安装并配置MySQL数据库。以下是在Ubuntu服务器上安装MySQL的步骤:

sudo apt update

sudo apt install mysql-server

安装完成后,我们需要编辑MySQL配置文件以启用二进制日志。打开MySQL配置文件:

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

找到以下行,并将其取消注释:

#log_bin                         = /var/log/mysql/mysql-bin.log

保存并关闭文件后,重新启动MySQL服务:

sudo systemctl restart mysql

至此,MySQL的安装和配置已经完成。

2.2 确定主服务器和从服务器

在配置主从同步之前,我们需要确定哪些服务器将充当主服务器和从服务器。主服务器是数据变更的源头,而从服务器用于接收和应用这些变更。

假设我们选择的主服务器IP地址为192.168.1.100,从服务器IP地址为192.168.1.101。

3. 配置主服务器

3.1 创建用于主从同步的用户

首先,我们需要在主服务器上创建一个用于主从同步的MySQL用户,并赋予适当的权限。

登录MySQL:

mysql -u root -p

创建新用户:

CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password';

将用户赋予复制权限:

GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';

刷新权限:

FLUSH PRIVILEGES;

3.2 启用二进制日志

在主服务器上,我们需要启用二进制日志以记录数据变更。登录MySQL,并执行以下命令:

SET GLOBAL binlog_format = 'ROW';

SET GLOBAL log_bin = ON;

查看二进制日志的文件名和位置:

SHOW MASTER STATUS;

记录下File和Position的值,我们将在配置从服务器时使用。

4. 配置从服务器

4.1 设置主服务器信息

在从服务器上,我们需要设置主服务器的信息,以便从服务器能够与主服务器建立连接并接收数据变更。

登录MySQL,并执行以下命令(将<master_ip>替换为主服务器的IP地址,将<master_user>和<master_password>替换为在主服务器上创建的用户的用户名和密码):

CHANGE MASTER TO MASTER_HOST='', MASTER_USER='', MASTER_PASSWORD=''; 

将主服务器的二进制日志文件名和位置填入:

MASTER_LOG_FILE='', MASTER_LOG_POS=;

4.2 启动从服务器复制

在从服务器上,启动复制进程:

START SLAVE;

检查从服务器状态:

SHOW SLAVE STATUS\G;

如果状态中的Slave_IO_Running和Slave_SQL_Running都显示为"YES",则表示主从同步已经成功配置。

5. 测试主从同步

为了验证主从同步是否正常工作,我们可以在主服务器上进行一些数据更改,并检查从服务器是否相应地进行了更新。

在主服务器上,创建数据库和表:

CREATE DATABASE test_db;

USE test_db;

CREATE TABLE test_table (id INT PRIMARY KEY, data VARCHAR(100));

INSERT INTO test_table VALUES (1, 'Data 1');

INSERT INTO test_table VALUES (2, 'Data 2');

在从服务器上,查询刚创建的表,应该能看到相同的数据:

USE test_db;

SELECT * FROM test_table;

如果从服务器中能够查询到相同的数据,则表示主从同步配置成功。

6. 总结

通过以上步骤,我们成功地配置了Linux服务器的主从同步。这种配置可以使数据实时同步到从服务器上,并提高系统的可用性和可靠性。在实际应用中,您还可以根据不同的需求进行高级配置和优化。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

操作系统标签