展示mysql主备的流程如下:
步骤 | 动作 |
---|---|
步骤一 | 创建主备数据库 |
步骤二 | 配置主服务器 |
步骤三 | 配置备服务器 |
步骤四 | 启动主备同步 |
步骤五 | 检查主备同步状态 |
步骤六 | 测试主备切换 |
下面是每一步需要做的事情以及相应的代码示例:
- 创建主备数据库
首先,我们需要在主服务器和备服务器上分别安装MySQL数据库,可以使用以下命令进行安装:
sudo apt-get install mysql-server
- 配置主服务器
在主服务器上,我们需要进行以下配置步骤:
-
编辑主服务器的配置文件
my.cnf
,通常位于/etc/mysql
目录下。使用以下命令进行编辑:sudo nano /etc/mysql/my.cnf
-
在配置文件中,找到并编辑以下参数:
server-id = 1 log_bin = /var/log/mysql/mysql-bin.log
这些参数设置了服务器的唯一ID和二进制日志文件的位置。
-
保存并退出配置文件。
-
重启主服务器以使配置生效:
sudo service mysql restart
- 配置备服务器
在备服务器上,我们需要进行以下配置步骤:
-
编辑备服务器的配置文件
my.cnf
,通常位于/etc/mysql
目录下。使用以下命令进行编辑:sudo nano /etc/mysql/my.cnf
-
在配置文件中,找到并编辑以下参数:
server-id = 2 relay-log = /var/log/mysql/mysql-relay-bin.log read_only = 1
这些参数设置了服务器的唯一ID、中继日志文件的位置和只读模式。
-
保存并退出配置文件。
-
重启备服务器以使配置生效:
sudo service mysql restart
- 启动主备同步
在主服务器上,我们需要在MySQL命令行界面执行以下操作:
-
创建用于主备同步的用户,并授予适当的权限:
CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password'; GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';
-
查看主服务器的当前状态,并记录下文件和位置的值:
SHOW MASTER STATUS;
-
在备服务器上,连接到主服务器并设置主备同步的参数:
CHANGE MASTER TO MASTER_HOST='主服务器IP地址', MASTER_USER='replication_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='主服务器的文件值', MASTER_LOG_POS=主服务器的位置值;
-
启动主备同步:
START SLAVE;
- 检查主备同步状态
在备服务器上,我们可以使用以下命令来检查主备同步的状态:
SHOW SLAVE STATUS\G
在输出结果中,可以查看Slave_IO_Running
和Slave_SQL_Running
两个字段的值。如果两个值都为Yes
,则说明主备同步正常。
- 测试主备切换
为了测试主备切换的过程,我们可以在主服务器上创建一个测试数据库,并在备服务器上验证是否同步成功。
-
在主服务器上,创建一个测试数据库和表:
CREATE DATABASE test_db; USE test_db; CREATE TABLE test_table (id INT PRIMARY KEY, name VARCHAR(50)); INSERT INTO test_table VALUES (1, 'John');
-
在备服务器上,使用以下命令检查是否同步成功:
USE test_db; SELECT * FROM test_table;
如果能够看到刚才在主服务器上插入的数据,则说明主备同步成功。
以上就是展示mysql主备的完整流程和相应的代码示例。通过这些步骤,你可以轻松地实现mysql主备,并确保数据的高可用性和冗余备份。