TypechoJoeTheme

至尊技术网

统计
登录
用户名
密码

CentOS安装MySQL8.0图文详解:从小白到精通的完整指南

2025-08-10
/
0 评论
/
1 阅读
/
正在检测是否收录...
08/10


一、为什么选择MySQL 8.0?

作为2023年最流行的开源关系型数据库,MySQL 8.0相比5.7版本有着显著的性能提升:
- 事务吞吐量提升2倍
- JSON功能增强
- 窗口函数支持
- 默认字符集改为utf8mb4(完美支持emoji)

二、环境准备

系统要求

  • CentOS 7/8(本文以CentOS 7.9演示)
  • 至少2GB内存(实测1GB会报错)
  • 20GB可用磁盘空间

bash

查看系统版本

cat /etc/redhat-release

清理已有MariaDB(如有)

sudo yum remove mariadb*

三、分步安装教程

步骤1:添加官方YUM源

bash sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm

验证源是否添加成功:
bash yum repolist enabled | grep "mysql.*-community.*"

步骤2:安装MySQL服务端

bash sudo yum --enablerepo=mysql80-community install mysql-community-server

遇到Public key for mysql-community-client-8.0.34-1.el7.x86_64.rpm is not installed报错时:
bash sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

步骤3:启动服务并设置开机自启

bash sudo systemctl start mysqld sudo systemctl enable mysqld

检查运行状态:
bash systemctl status mysqld

四、初始配置关键步骤

1. 获取临时密码

bash sudo grep 'temporary password' /var/log/mysqld.log
输出示例:A temporary password is generated for root@localhost: Jqkf3z!aG12,

2. 安全配置向导

bash sudo mysql_secure_installation

重要提示:
- 修改密码需包含大小写字母+数字+特殊字符
- 先输入上述获取的临时密码
- 建议禁用root远程登录(选择Y)

3. 调整密码策略(开发环境)

sql
-- 查看当前策略
SHOW VARIABLES LIKE 'validate_password%';

-- 降低复杂度要求(仅测试环境)
SET GLOBAL validate_password.policy=LOW;
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';

五、远程连接配置

1. 创建专用用户

sql CREATE USER 'devuser'@'%' IDENTIFIED BY 'StrongPass!2023'; GRANT ALL PRIVILEGES ON *.* TO 'devuser'@'%'; FLUSH PRIVILEGES;

2. 开放防火墙

bash sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent sudo firewall-cmd --reload

六、验证安装结果

bash mysql -u root -p -e "SELECT VERSION();"
正常应显示:8.0.34

七、常见问题解决

Q1:无法通过Navicat连接
- 检查bind-address配置(应设为0.0.0.0
- 确认防火墙状态
- 查看/var/log/mysqld.log错误日志

Q2:忘记root密码bash
sudo systemctl stop mysqld
sudo mysqld_safe --skip-grant-tables &
mysql -u root

执行密码修改后重启服务

八、性能优化建议

  1. 修改/etc/my.cnf配置:
    ini [mysqld] innodb_buffer_pool_size = 1G # 建议物理内存的50-70% max_connections = 200

  2. 定期维护:bash

每周自动优化

sudo crontab -e
0 3 * * 0 /usr/bin/mysqlcheck --all-databases --optimize -u root -p

CentOS安装MySQL8.0MySQL8.0配置Linux数据库搭建MySQL安全设置
朗读
赞(0)
版权属于:

至尊技术网

本文链接:

https://www.zzwws.cn/archives/35449/(转载时请注明本文出处及文章链接)

评论 (0)