Linux中Mysql5.7主从架构(一主多从)配置教程

  

🏡作者主页:点击! 

🐧Linux基础知识(初学):点击!

🐧Linux高级管理防护和群集专栏:点击!

🔐Linux中firewalld防火墙:点击!

⏰️创作时间:2024年7月24日14点10分

🀄️文章质量:93分


目录

1.所有节点配置

建立时间同步环境

主节点

从节点

2.MySQL数据库安装

3.配置传统复制的单主复制

主服务器 (master1)

从服务器 (master2)

4.测试主从同步


1.所有节点配置

  1. 配置IP地址、网关、DNS、主机名称
    通过适当的配置文件或命令设置网络相关信息,确保所有节点能正确互联互通。

  2. 停止并禁用防火墙

    setenforce 0
    systemctl stop firewalld
    systemctl disable firewalld
    

    这些命令用于关闭SELinux和防火墙,防止它们阻碍节点之间的通信。

  3. 下载所需组件

    yum groupinstall -y 'Development Tools'
    yum install -y lrzsz
    

    安装开发工具和文件传输工具,确保系统具备必要的开发和传输环境。

建立时间同步环境
主节点
  1. 安装NTP

    yum -y install ntp
    

    安装NTP服务以确保时间同步。

  2. 配置NTP

    vim /etc/ntp.conf
    

    添加如下两行:

    server 127.127.1.0
    fudge 127.127.1.0 stratum 8
    

    配置NTP服务以使用本地时间作为参考。

  3. 重启服务并设置为开机自动启动

    systemctl restart ntpd
    systemctl enable ntpd
    

    重启NTP服务并设置为开机自启动,以确保时间同步服务持续运行。

从节点
  1. 安装ntpdate

    yum install -y ntpdate
    

    安装ntpdate工具,用于手动同步时间。

  2. 同步时间

    ntpdate NTP服务器IP
    

    使用NTP服务器IP同步时间。例如:

    ntpdate 192.168.192.100
    

灵办AI免费ChatGPT4人工智能浏览器插件快速便捷(多功能)

打开方式点击!icon-default.png?t=N7T8https://ilingban.com/browser_extension?from=smqnz

(点击添加到Edge浏览器),十分便捷!大家可以去试试。

2.MySQL数据库安装

  1. 下载MySQL 5.7.29安装包

    wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar
    

    从官方源下载MySQL安装包。

  2. 解压并创建MySQL yum仓库

    mkdir /mysql57
    tar xf mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar -C /mysql57
    createrepo /mysql57
    

    解压安装包并创建本地YUM仓库。

  3. 配置yum仓库

    cat >> /etc/yum.repos.d/CentOS-mysql57.repo <<EOF
    [mysql57]
    name=mysql57
    enabled=1
    gpgcheck=0
    baseurl=file:///mysql57
    EOF
    

    配置本地yum仓库以便后续安装。

  4. 刷新yum并安装MySQL服务器

    yum clean all
    yum install -y mysql-server
    

    安装MySQL服务器。

  5. 启动并更改默认管理密码

    systemctl start mysqld
    grep "password" /var/log/mysqld.log  //获取默认密码
    mysqladmin -uroot -p password "Abc-1234"  //使用默认密码改密码
    

    启动MySQL服务并更改默认root用户的密码。

3.配置传统复制的单主复制

主服务器 (master1)
  1. 编辑MySQL配置文件

    vim /etc/my.cnf
    

    添加以下内容:

    [mysqld]
    server-id = 100
    log_bin = mysql-bin
    

    设置服务器ID和启用二进制日志。

  2. 重启MySQL服务

    systemctl restart mysqld
    

    重启MySQL服务以应用配置更改。

  3. 创建具有复制权限的用户

    mysql -uroot -pAbc-1234
    mysql -uroot -pAbc-1234 -e "GRANT REPLICATION SLAVE ON *.* TO 'repluser'@'192.168.192.%' IDENTIFIED BY 'Abc-1234'; 
    FLUSH PRIVILEGES;"
    

    创建用于复制的用户并授予必要权限。

  4. 查看主服务器状态

    SHOW MASTER STATUS\G;
    

    获取二进制日志文件和位置,用于配置从服务器。

从服务器 (master2)
  1. 编辑MySQL配置文件

    vim /etc/my.cnf
    

    添加以下内容:

    [mysqld]
    server-id = 2
    

    设置从服务器的ID。

  2. 重启MySQL服务

    systemctl restart mysqld
    

    重启MySQL服务以应用配置更改。

  3. 连接主服务器

    mysql -uroot -pAbc-1234
    CHANGE MASTER TO
    MASTER_HOST='192.168.192.100',
    MASTER_USER='repluser',
    MASTER_PASSWORD='Abc-1234',
    MASTER_PORT=3306,
    MASTER_LOG_FILE='mysql-bin.000002',
    MASTER_LOG_POS=740;
    

    根据主服务器状态配置从服务器的复制信息。

  4. 启动从服务器

    START SLAVE;
    
  5. 查看从服务器状态

    SHOW SLAVE STATUS\G;
    

    检查从服务器复制状态,确保成功连接并同步。

4.测试主从同步

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

mysql> create database smqnz;
mysql> use smqnz;
mysql> create table test(age int);
mysql> insert into test values(1);
mysql> select * from test;
+------+
| age  |
+------+
|    1 |
+------+

在从服务器上检查数据是否同步:

mysql> select * from smqnz.test;
+------+
| age  |
+------+
|    1 |
+------+
1 row in set (0.00 sec)

以上操作确保了主服务器的数据成功复制到从服务器,实现了主从同步。

总结


通过本文的介绍,我们成功地在Linux系统中配置了MySQL数据库的主从复制,确保了数据的实时同步与备份。这不仅提高了数据的安全性,还为后续的扩展和维护提供了便利。希望读者能够运用所学知识,进一步探索和优化自己的数据库管理方案,为实现更高效的业务运营打下坚实的基础。

 成功的路上没有捷径,只有不断的努力与坚持。如果你和我一样,坚信努力会带来回报,请关注我,点个赞,一起迎接更加美好的明天!你的支持是我继续前行的动力!"

"每一次创作都是一次学习的过程,文章中若有不足之处,还请大家多多包容。你的关注和点赞是对我最大的支持,也欢迎大家提出宝贵的意见和建议,让我不断进步。"

神秘泣男子

  • 121
    点赞
  • 139
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 114
    评论
Linux MySQL 5.7主从配置是一种常用的数据库架构,用于提高数据库的可用性和性能。在主从配置,一个MySQL服务器充当主服务器,负责处理写操作和更新数据,而其他MySQL服务器充当从服务器,负责复制主服务器上的数据并处理读操作。 以下是Linux MySQL 5.7主从配置的步骤: 1. 安装MySQL:在Linux服务器安装MySQL 5.7版本,并确保主从服务器上都安装了相同版本的MySQL。 2. 配置服务器:在主服务器上进行以下配置: - 打开MySQL配置文件(一般位于/etc/mysql/my.cnf)。 - 设置server-id参数,为主服务器分配一个唯一的ID号。 - 启用二进制日志(binlog),以记录所有的写操作。 - 重启MySQL服务使配置生效。 3. 创建复制用户:在主服务器上创建一个用于复制的用户,并为其授予复制权限。 4. 备份主服务器数据:在主服务器上执行数据库备份操作,以便在从服务器上进行初始化。 5. 配置服务器:在从服务器上进行以下配置: - 打开MySQL配置文件。 - 设置server-id参数,为从服务器分配一个唯一的ID号。 - 配置服务器的连接信息,包括主服务器的IP地址、复制用户和密码。 - 启动从服务器,并连接到主服务器进行数据复制。 6. 同步数据:从服务器连接到主服务器后,会自动开始复制主服务器上的数据。可以使用SHOW SLAVE STATUS命令来查看复制状态。 7. 测试主从配置:在主服务器上进行写操作,并在从服务器上进行读操作,以确保主从复制正常工作。
评论 114
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神秘泣男子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值