目标
本文目标是简单介绍如何在CentOS 7上使用RPM包安装MySQL 5.7,然后描述如何调整存储路径datadir。
环境准备
- 操作系统 —— CentOS 7
- MySQL版本 —— MySQL 5.7.44
获取MySQL-rpm包
官网下载地址:https://dev.mysql.com/downloads/mysql/5.7.html
在官网上下载以下安装文件(如图所示,总计大小200M左右):
序号 | 安装文件 | 大小 |
---|---|---|
1 | mysql-community-common-5.7.44-1.el7.x86_64.rpm | 314 KB |
2 | mysql-community-libs-5.7.44-1.el7.x86_64.rpm | 2.94 MB |
3 | mysql-community-libs-compat-5.7.44-1.el7.x86_64.rpm | 1.2 MB |
4 | mysql-community-client-5.7.44-1.el7.x86_64.rpm | 31.1 MB |
5 | mysql-community-server-5.7.44-1.el7.x86_64.rpm | 184 MB |
安装MySQL
参考官方文档:Installing MySQL on Linux Using RPM Packages from Oracle
步骤 1 :上传安装包
将MySQL的rpm包上传到服务器/root。
步骤 2 :执行安装命令
yum install mysql-community-*.rpm
注意:
使用yum命令安装mysql,会自动卸载mariadb,不用再手动卸载。
rpm包安装mysql,会自动创建mysqld服务,且是开机自启的,不用再手动配置。
安装时会自动创建mysql用户和mysql组,用于运行mysqld服务。
配置MySQL
修改存储路径
使用rpm包安装mysql,存储路径默认在/var/lib/mysql。若有需要修改该路径(比如改为:/home/mysql/data),可按照以下步骤进行修改:
1. 修改/etc/my.cnf
修改/etc/my.cnf中的配置条目:
datadir=/home/mysql/data
2. 创建存储目录
创建存储目录/home/mysql/data,并授予mysql所属权限。
mkdir -p /home/mysql/data
chown -R mysql:mysql /home/mysql
3. 修改数据目录上下文
默认数据目录位置为 /var/lib/mysql/;并且使用的 SELinux 上下文是 mysqld_db_t。需要将相应的路径也修改成/home/mysql/data与/etc/my.cnf的datadir保持一致,否则会被selinux校验住导致无法启动MySQL服务(参考: SELinux File Context)。
semanage fcontext -a -t mysqld_db_t "/home/mysql/data(/.*)?"
restorecon -Rv /home/mysql/data
4. 启动mysqld服务验证
[root@localhost mysql]# systemctl restart mysqld
[root@localhost mysql]# mysql -uroot -p
mysql> show variables like '%datadir%';
+---------------+-------------------+
| Variable_name | Value |
+---------------+-------------------+
| datadir | /home/mysql/data/ |
+---------------+-------------------+
1 row in set (0.02 sec)
结语:本文写的得很简单,后续有时间再继续完善,欢迎大佬们多提建议。