1. 安装 MySQL 8.0 官方仓库
下载 MySQL 官方 YUM 仓库配置文件
yum install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
确认仓库安装成功
yum repolist enabled | grep "mysql.*-community.*"
2. 安装 MySQL 8.0
yum clean all
yum makecache
yum install mysql-community-server
3. 启动 MySQL 服务
systemctl start mysqld
systemctl enable mysqld
4. 获取 MySQL 初始密码
在 MySQL 8.0 安装完成后,MySQL 会自动生成一个初始的 root 密码,并将其记录在 /var/log/mysqld.log
文件中。可以通过以下命令查看:
grep 'temporary password' /var/log/mysqld.log
5. 安全配置 MySQL
使用临时密码登录 MySQL,并修改密码:
mysql_secure_installation
系统会要求你输入临时密码,并根据提示进行一系列配置,包括设置新密码、移除匿名用户、禁止远程登录 root 用户等。可以根据需要选择 “yes” 或 “no”。
使用新的 root 密码登录 MySQL
mysql -u root -p
输入刚设置的密码即可。
登录到 MySQL 后,检查安装的 MySQL 版本:
SELECT VERSION();
这将显示当前安装的 MySQL 版本,确认是否为 MySQL 8.0。
6.MySQL 8.0调优
在原有配置下增加如下配置,针对不同配置得vps可以适当调整参数:
# InnoDB settings
# InnoDB 缓存池大小,通常设置为服务器内存的 50%-70%,影响数据库性能
innodb_buffer_pool_size = 1G
# InnoDB 日志文件大小,影响事务提交的性能
innodb_log_file_size = 64M
# 控制事务提交时日志的刷新方式。设置为 2 可提高性能,但牺牲数据安全性
innodb_flush_log_at_trx_commit = 2
# 控制数据写入磁盘的方式,O_DIRECT 可以提高性能,避免操作系统缓存
innodb_flush_method = O_DIRECT
# MySQL 可以同时打开的表的数量。增大此值有助于提升性能,避免频繁打开表
table_open_cache = 400
# 临时表大小(内存中),较大的值可以减少磁盘临时表的使用
tmp_table_size = 64M
# 内存中表的最大大小,防止内存消耗过大
max_heap_table_size = 64M
# 磁盘 IO 性能,设置适当的值可以提高 SSD 磁盘的性能
innodb_io_capacity = 200
# Connections
# 同时连接 MySQL 的最大连接数,根据服务器负载进行调整
max_connections = 250
# Slow Query Log
# 启用慢查询日志功能,可以帮助诊断低效查询
slow_query_log = 1
slow_query_log_file = /var/log/mysql-slow-query.log
long_query_time = 2 # 设置慢查询日志的阈值,单位秒,2秒以上的查询会被记录
创建 WordPress 数据库(可选)
需要以 root
用户身份登录到 MySQL 数据库。创建WordPress数据库、创建用户并赋予数据库权限、刷新权限:
mysql -u root -p
CREATE DATABASE wordpress;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
exit;