0
点赞
收藏
分享

微信扫一扫

mysql 安装从库

腊梅5朵 2024-09-22 阅读 19

MySQL 安装从库指南

在现代数据库架构中,主从复制是为了提高数据的可用性和扩展性。本文将指导刚入行的小白如何在自己的系统中配置 MySQL 从库(Slave),以实现主从复制。我们将按照以下步骤进行操作,并逐步深入每一步的具体细节。

整体流程概览

以下表格展示了安装 MySQL 从库的主要步骤:

步骤编号 步骤名称 说明
1 安装 MySQL 在主库和从库上都需要安装 MySQL
2 配置主库 设置主库的相关参数
3 创建复制用户 在主库上创建专用于复制的用户
4 获取主库状态 获取主库的当前二进制日志信息
5 配置从库 在从库上配置相关参数
6 启动从库 启动从库并开始复制
7 验证复制 验证主从复制是否成功

各步骤详细说明

步骤 1: 安装 MySQL

首先,需要在主库和从库的服务器上安装 MySQL。你可以通过以下命令进行安装:

sudo apt update
sudo apt install mysql-server
  • sudo apt update:更新包列表
  • sudo apt install mysql-server:安装 MySQL 数据库服务器

步骤 2: 配置主库

在主库的 my.cnf 文件中添加如下配置:

[mysqld]
server-id=1               # 设置主库的 server-id,唯一标识
log_bin=mysql-bin         # 开启二进制日志
  • server-id:用于标识每个MySQL服务器,确保主从复制中各个端的唯一性
  • log_bin:开启二进制日志,这对于主从复制是必须的

修改配置后,重启 MySQL 服务:

sudo systemctl restart mysql

步骤 3: 创建复制用户

在主库上,使用 MySQL 登录后创建一个用于从库的复制用户:

CREATE USER 'replica_user'@'%' IDENTIFIED BY 'password';  -- 创建用户
GRANT REPLICATION SLAVE ON *.* TO 'replica_user'@'%';    -- 授权复制权限
FLUSH PRIVILEGES;                                         -- 刷新权限
  • CREATE USER:创建新的用户
  • GRANT REPLICATION SLAVE:为新用户授予从库的复制权限
  • FLUSH PRIVILEGES:刷新权限,使新权限立即生效

步骤 4: 获取主库状态

获取主库的当前二进制日志文件名和位置,以便从库能够配置:

SHOW MASTER STATUS;
  • 该命令将返回当前的日志文件名和位置,需要记录下来用于后续的配置。

步骤 5: 配置从库

在从库的 my.cnf 文件中添加如下配置:

[mysqld]
server-id=2               # 确保 server-id 不同于主库

如同主库,重启 MySQL 服务:

sudo systemctl restart mysql

在从库上执行以下命令,设置主库的信息:

CHANGE MASTER TO
    MASTER_HOST='主库的IP地址',                     -- 主库地址
    MASTER_USER='replica_user',                     -- 复制用户
    MASTER_PASSWORD='password',                      -- 密码
    MASTER_LOG_FILE='mysql-bin.000001',             -- 上一步中获取的日志文件名
    MASTER_LOG_POS=12345;                            -- 上一步中获取的日志位置
  • MASTER_HOST:主库的 IP 地址
  • MASTER_USER:之前创建的复制用户
  • MASTER_PASSWORD:该用户的密码
  • MASTER_LOG_FILE & MASTER_LOG_POS:主库的当前日志文件和位置

步骤 6: 启动从库

在从库上启动复制进程:

START SLAVE;
  • START SLAVE:开始从主库读取数据并进行复制。

步骤 7: 验证复制

你可以通过以下命令检查从库的状态:

SHOW SLAVE STATUS\G;
  • 该命令将显示从库的状态信息,包括是否正在接收并应用来自主库的更新,检查 Slave_IO_RunningSlave_SQL_Running 是否均为 Yes,表明复制正常运行。

序列图表示主从复制的过程

下面的序列图展示了主从复制的过程:

sequenceDiagram
    participant Master as 主库
    participant Slave as 从库
    Master->>Slave: 复制数据
    Slave->>Master: 发送确认

结尾

通过上述步骤,你已经完成了 MySQL 从库的安装与配置。主从复制能够为你的应用提供更高的可用性,保证数据安全。在生产环境中,确保定期检查主从状态,并做好监控和维护工作。如果你在过程中遇到任何问题,不要犹豫,参考文档或寻求社区的帮助。这将对你的职业发展有所帮助,祝你在数据库领域的学习和工作一切顺利!

举报

相关推荐

0 条评论