CnetOS7通过yum安装MySQL8.0

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;

Nginx安装部署WordPress保姆级教程