位置: 文档库 > 数据库 > CentOS 5.5 安装 mysql-5.1.53-linux-x86_64 及主从复制集群配置

CentOS 5.5 安装 mysql-5.1.53-linux-x86_64 及主从复制集群配置

孤城落日 上传于 2020-09-08 23:12

CentOS 5.5 安装 mysql-5.1.53-linux-x86_64 及主从复制集群配置》

一、引言

MySQL作为开源关系型数据库的代表,因其高性能、高可靠性和易用性被广泛应用于互联网和企业级系统。在CentOS 5.5环境下部署MySQL 5.1.53并配置主从复制集群,可实现数据冗余、读写分离和负载均衡,提升系统可用性。本文将详细介绍从环境准备到主从复制配置的全流程,适用于需要构建高可用数据库架构的技术人员。

二、环境准备

1. 系统要求

CentOS 5.5(64位)需配置至少2GB内存和20GB磁盘空间。主从服务器需保持网络互通,建议关闭防火墙或开放3306端口。

2. 依赖安装

执行以下命令安装基础依赖:

yum install -y gcc gcc-c++ make cmake ncurses-devel bison openssl-devel

3. 创建MySQL用户

避免使用root运行MySQL服务,创建专用用户:

groupadd mysql
useradd -g mysql -s /sbin/nologin mysql

三、MySQL 5.1.53安装

1. 下载与解压

从MySQL官方仓库获取5.1.53版本(需匹配x86_64架构):

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.1.53-linux-x86_64-glibc23.tar.gz
tar zxvf mysql-5.1.53-linux-x86_64-glibc23.tar.gz
mv mysql-5.1.53-linux-x86_64-glibc23 /usr/local/mysql

2. 初始化数据目录

mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
/usr/local/mysql/bin/mysql_install_db --user=mysql --datadir=/data/mysql

3. 配置环境变量

编辑/etc/profile,添加:

export PATH=/usr/local/mysql/bin:$PATH

执行source /etc/profile使配置生效。

4. 创建服务启动脚本

复制MySQL提供的init脚本到/etc/init.d/:

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld

修改脚本中的basedir和datadir路径:

basedir=/usr/local/mysql
datadir=/data/mysql

5. 启动MySQL服务

service mysqld start

6. 安全配置

运行安全脚本移除匿名用户和测试数据库:

/usr/local/mysql/bin/mysql_secure_installation

四、主从复制配置原理

MySQL主从复制基于二进制日志(Binary Log)实现,主库记录所有数据变更操作,从库通过I/O线程拉取日志并由SQL线程重放。配置需确保:

1. 主库开启二进制日志

2. 从库配置唯一server-id

3. 主从服务器时间同步

五、主库配置

1. 修改主库配置文件

编辑/etc/my.cnf,在[mysqld]段添加:

[mysqld]
server-id = 1
log-bin = mysql-bin
binlog-format = MIXED
expire_logs_days = 10
max_binlog_size = 100M

2. 创建复制专用用户

登录MySQL后执行:

CREATE USER 'repl'@'%' IDENTIFIED BY 'repl_password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;

3. 获取主库二进制日志位置

SHOW MASTER STATUS;

记录File和Position值,后续从库配置需使用。

六、从库配置

1. 修改从库配置文件

编辑/etc/my.cnf,在[mysqld]段添加:

[mysqld]
server-id = 2
relay-log = mysql-relay-bin
log-slave-updates = ON
read_only = ON  # 防止从库写入

2. 配置主从关系

登录从库MySQL后执行:

CHANGE MASTER TO
MASTER_HOST='主库IP',
MASTER_USER='repl',
MASTER_PASSWORD='repl_password',
MASTER_LOG_FILE='记录的File值',
MASTER_LOG_POS=记录的Position值;

START SLAVE;

3. 验证复制状态

SHOW SLAVE STATUS\G

检查Slave_IO_Running和Slave_SQL_Running是否为Yes,Seconds_Behind_Master是否为0。

七、常见问题处理

1. 复制中断修复

当出现错误时,可执行:

STOP SLAVE;
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
START SLAVE;

或根据错误号跳过特定事务。

2. 数据不一致修复

使用pt-table-checksum和pt-table-sync工具检测并修复数据差异。

3. 性能优化建议

主库配置sync_binlog=1保证数据安全,从库启用并行复制(MySQL 5.6+)提升同步速度。

八、集群管理技巧

1. 监控方案

部署Prometheus+Grafana监控主从延迟、QPS等指标,设置阈值告警。

2. 故障切换演练

定期模拟主库故障,测试从库自动提升为主库的流程。

3. 版本升级策略

采用蓝绿部署方式,先升级从库再切换主库角色。

九、总结

通过在CentOS 5.5上部署MySQL 5.1.53并配置主从复制,可构建基础的高可用数据库架构。实际生产环境中,建议结合半同步复制、MHA工具或ProxySQL实现更完善的故障自动转移方案。随着业务发展,可逐步升级至Percona XtraDB Cluster或MySQL Group Replication等集群方案。

关键词:CentOS 5.5、MySQL 5.1.53、主从复制、二进制日志服务器配置数据同步高可用架构

简介:本文详细阐述在CentOS 5.5系统上安装MySQL 5.1.53数据库并配置主从复制集群的全过程,涵盖环境准备、依赖安装、服务初始化、主从参数配置、复制状态监控及常见故障处理等内容,适用于需要构建基础高可用数据库架构的技术人员参考。