在本文中,我们将深入探讨如何进行MySQL主从安装部署,这是构建高可用性数据库架构的关键步骤。我们需要准备必要的环境并下载安装包。 1. **安装包下载与依赖安装** 在开始安装MySQL之前,确保系统已经安装了必要的依赖。这里提到的依赖是`libaio2`。可以通过运行`yum install -y libaio2`命令来安装。同时,检查`cglib`的版本,确认它是否满足MySQL的要求。可以使用`strings /lib64/libc.so.6 | grep GLIBC`命令来查看。 2. **检查和卸载可能存在的冲突软件** 在部署MySQL之前,要确保系统中没有安装过MariaDB或旧版本的MySQL。通过`rpm -qa | grep mariadb`命令查询是否有相关包。如果有,使用`rpm -e --nodeps`命令卸载它们。接着,查找并删除任何遗留的MySQL目录,例如`find / -name mysql`,然后用`rm -rf {目录名}`删除。 3. **安装MySQL** 将MySQL的安装包复制到`/opt/software`目录,然后解压缩。例如,对于MySQL 5.7.27,可以使用`tar -zxvf mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz`命令。解压后,将文件夹重命名为`/usr/local/mysql`。接着,在数据盘创建一个用于存储MySQL数据的目录,如`mkdir /data/mysqldata`。 4. **配置MySQL** 配置MySQL的`my.cnf`文件,定义MySQL的各项参数。例如,设置`basedir`、`datadir`、`port`、`socket`等。此外,还需要配置日志位置、服务器ID、最大连接数、字符集等。示例配置如下: ``` [mysqld] basedir=/usr/local/mysql datadir=/data/mysqldata port = 3306 socket=/tmp/mysql.sock symbolic-links=0 log-error=/var/log/mysql/mysqld.log pid-file=/tmp/mysqld/mysqld.pid sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' server_id=1 max_connections=1500 lower_case_table_names=1 init_connect='SET collation_connection = utf8mb4_general_ci' init_connect='SET NAMES utf8mb4' character-set-server=utf8mb4 collation-server=utf8mb4_general_ci [client] default-character-set=utf8mb4 [mysql] default-character-set=utf8mb4 ``` 5. **创建必要文件和权限设置** 创建MySQL所需的文件,如`/tmp/mysql.sock`、`/tmp/mysqld/mysqld.pid`、`/var/log/mysql/mysqld.log`,并设置相应的用户组和权限。这可以通过以下命令完成: ``` cd /tmp touch mysql.sock chown mysql:mysql mysql.sock chmod 755 mysql.sock cd /tmp mkdir mysqld cd mysqld touch mysqld.pid cd .. chown -R mysql:mysql mysqld cd mysqld chmod 755 mysqld.pid mkdir /var/log/mysql touch /var/log/mysql/mysqld.log chown -R mysql:mysql /var/log/mysql chmod 755 /var/log/mysql/mysqld.log ``` 6. **初始化数据库** 初始化MySQL数据库,使用如下命令: ``` cd /usr/local/mysql/bin/ ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysqldata ``` 初始化完成后,以安全模式启动MySQL服务: ``` cd /usr/local/mysql/bin/ ./mysqld_safe --user=mysql & ps -ef | grep mysql ``` 默认的root用户的初始密码会记录在`/var/log/mysql/mysqld.log`日志文件中。 7. **设置root用户密码** 登录MySQL,使用`mysql -u root`,然后输入初始密码。在MySQL客户端中,更改root用户的密码: ``` ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; FLUSH PRIVILEGES; exit ``` 8. **启动和验证MySQL服务** 使用`systemctl start mysqld`启动MySQL服务,并使用`systemctl status mysqld`检查其状态。为了使MySQL在系统启动时自动启动,可以运行`systemctl enable mysqld`。 9. **配置主从复制** 要建立主从复制,需要在主服务器上配置二进制日志(已设置`log-bin`和`server_id`),并在从服务器上设置复制配置。这包括在从服务器上创建一个复制用户,获取主服务器的二进制日志文件名和位置,然后在从服务器上设置这些信息。 以上就是MySQL主从安装部署的基本步骤。通过这种方式,可以实现数据库的高可用性和故障切换能力,确保业务的连续性和数据的安全性。在实际操作中,还需要根据具体环境和需求进行调整和优化。
剩余8页未读,继续阅读
- 粉丝: 16
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于Spring Boot框架的博客管理系统.zip
- (源码)基于ESP8266和Blynk的IR设备控制系统.zip
- (源码)基于Java和JSP的校园论坛系统.zip
- (源码)基于ROS Kinetic框架的AGV激光雷达导航与SLAM系统.zip
- (源码)基于PythonDjango框架的资产管理系统.zip
- (源码)基于计算机系统原理与Arduino技术的学习平台.zip
- (源码)基于SSM框架的大学消息通知系统服务端.zip
- (源码)基于Java Servlet的学生信息管理系统.zip
- (源码)基于Qt和AVR的FestosMechatronics系统终端.zip
- (源码)基于Java的DVD管理系统.zip