在CentOS 7上部署MySQL 8和Keepalived实现双主热备高可用的步骤如下:

  1. 安装MySQL 8:
  • 在终端中执行以下命令,安装MySQL 8的官方Yum存储库:
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm
  • 1.
  • 2.
  • 安装MySQL服务器:
sudo yum install mysql-server
  • 1.
  • 配置MySQL,包括设置密码和其他安全设置。

蓝易云服务器 - Centos7部署MySQL8+keepalived双主热备高可用_mysql

  • 启动MySQL服务:
sudo systemctl start mysqld
  • 1.
  • 运行MySQL安全脚本,进行必要的安全性配置:
sudo mysql_secure_installation
  • 1.
  1. 安装Keepalived:
  • 在终端中执行以下命令,安装Keepalived:
sudo yum install keepalived
  • 1.
  • 配置Keepalived,包括虚拟IP(VIP)的设置和监控脚本的编写。
  1. 配置MySQL主从复制:
  • 在MySQL的主服务器上,编辑MySQL配置文件(my.cnf),启用二进制日志(binary log)和GTID(全局事务标识):
server_id = 1
log_bin = /var/lib/mysql/mysql-bin.log
gtid_mode = ON
enforce_gtid_consistency = ON
  • 1.
  • 2.
  • 3.
  • 4.
  • 在MySQL的主服务器上,创建用于复制的用户,并授予相应的权限:
CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';
FLUSH PRIVILEGES;
  • 1.
  • 2.
  • 3.
  • 在MySQL的主服务器上,查看并记录二进制日志文件名和位置:
SHOW MASTER STATUS;
  • 1.
  • 在MySQL的从服务器上,编辑MySQL配置文件,设置主服务器的连接信息和复制参数:
server_id = 2
gtid_mode = ON
enforce_gtid_consistency = ON
log_bin = /var/lib/mysql/mysql-bin.log
relay_log = /var/lib/mysql/mysql-relay-bin.log
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 在MySQL的从服务器上,启动复制进程并连接到主服务器:
CHANGE MASTER TO MASTER_HOST='主服务器IP地址', MASTER_USER='replication_user', MASTER_PASSWORD='password', MASTER_AUTO_POSITION=1;
START SLAVE;
  • 1.
  • 2.
  • 验证主从复制是否正常运行:
SHOW SLAVE STATUS;
  • 1.
  1. 配置Keepalived的主备模式:
  • 编辑Keepalived的配置文件(/etc/keepalived/keepalived.conf),设置虚拟IP和监控脚本的相关配置。
  • 在主服务器上启动Keepalived服务:
sudo systemctl start keepalived
  • 1.
  • 在备服务器上启动Keepalived服务:
sudo systemctl start keepalived
  • 1.

通过以上步骤,你可以在CentOS 7上部署MySQL 8和Keepalived,实现双主热备高可用的环境。请注意,根据具体的需求和环境,可能需要进行其他配置和调整。建议参考MySQL和Keepalived的官方文档或安装指南,获取更详细的信息和指导。