centos mysql集群搭建方案

487
2025/3/29 18:32:53
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS系统上搭建MySQL集群可以采用多种方案,其中最常见的是基于主从复制的高可用性方案。以下是一个基本的CentOS MySQL主从复制集群搭建步骤:

环境准备

  1. 更新系统
sudo yum update -y
  1. 安装必要的工具
sudo yum install curl wget -y
  1. 安装MySQL
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm
sudo yum install mysql-community-server -y

配置MySQL服务

  1. 启动MySQL服务
sudo systemctl start mysqld
sudo systemctl enable mysqld
  1. 查找初始密码
sudo grep 'temporary password' /var/log/mysqld.log
  1. 登录MySQL并修改密码
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword';

配置主从复制

主服务器配置

  1. 编辑主服务器配置文件 /etc/my.cnf
[mysqld]
server-id=1
log_bin=/var/log/mysql/mysql-bin.log
binlog_do_db=example_database
  1. 重启MySQL服务
sudo systemctl restart mysqld
  1. 创建复制用户
mysql -uroot -p
CREATE USER 'mastj'@'%' IDENTIFIED BY '123456';
GRANT REPLICATION SLAVE ON *.* TO 'mastj'@'%';
FLUSH PRIVILEGES;
  1. 锁定数据库并导出数据(如果有现有数据):
mysql -uroot -p
FLUSH TABLES WITH READ LOCK;
SELECT * INTO OUTFILE '/tmp/data.sql' FROM orders;
UNLOCK TABLES;

从服务器配置

  1. 编辑从服务器配置文件 /etc/my.cnf
[mysqld]
server-id=2
relay-log=/var/log/mysql/mysql-relay-bin.log
read-only=1
  1. 重启MySQL服务
sudo systemctl restart mysqld
  1. 配置从服务器复制
mysql -uroot -p
CHANGE MASTER TO
    MASTER_HOST='192.168.1.18',
    MASTER_USER='mastj',
    MASTER_PASSWORD='123456',
    MASTER_LOG_FILE='mysql-bin.000003',
    MASTER_LOG_POS=2005;
START SLAVE;
  1. 检查复制状态
mysql -uroot -p
SHOW SLAVE STATUS\G;

验证集群

通过连接到MySQL并运行特定的查询来验证集群是否构建成功,例如:

SHOW VARIABLES LIKE 'version';
SHOW VARIABLES LIKE 'datadir';

此外,还可以考虑使用Percona XtraDB Cluster (PXC)或MySQL Group Replication (MGR)等更高级的集群方案,这些方案提供了更高的可用性和扩展性。

请注意,以上步骤是一个基本的主从复制集群搭建示例,实际生产环境中可能需要更多的配置和优化。此外,还需要考虑网络配置、防火墙设置、监控和日志管理等因素。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: CentOS系统上怎么更新软件包