Linux下MySQL 8.0安装配置与基础操作指南
2026/8/10 9:06:35 网站建设 项目流程

1. Linux环境下MySQL数据库入门指南

作为最流行的开源关系型数据库之一,MySQL在Linux服务器上的部署占比超过70%。不同于Windows平台的图形化安装,Linux环境下需要掌握命令行操作才能高效完成数据库的配置与管理。本文将基于CentOS 8和MySQL 8.0版本,详解从安装配置到基础操作的完整流程。

提示:所有命令都需要在具有sudo权限的用户下执行,遇到权限问题时可在命令前添加sudo

1.1 环境准备与依赖检查

在开始安装前,建议先更新系统并检查现有MySQL组件:

# 更新系统软件包 yum update -y # 检查是否已安装旧版MySQL rpm -qa | grep mysql

如果发现旧版本存在,需要先彻底卸载以避免冲突:

# 卸载MariaDB(CentOS默认包含) sudo yum remove mariadb-server mariadb-client mariadb-libs # 清理残留配置文件 sudo rm -rf /var/lib/mysql/ sudo rm -rf /etc/my.cnf

1.2 官方仓库配置

MySQL官方提供了专属的YUM仓库,比系统默认仓库版本更新:

# 下载MySQL官方YUM源 wget https://dev.mysql.com/get/mysql80-community-release-el8-4.noarch.rpm # 安装仓库配置 sudo rpm -ivh mysql80-community-release-el8-4.noarch.rpm # 验证仓库是否启用 yum repolist enabled | grep mysql

2. MySQL 8.0安装与初始化

2.1 核心组件安装

执行以下命令安装服务器和客户端工具:

sudo yum install -y mysql-community-server mysql-community-client

安装完成后检查服务状态:

systemctl status mysqld

2.2 安全初始化

首次启动需要进行安全配置:

# 启动服务 sudo systemctl start mysqld # 获取临时密码 sudo grep 'temporary password' /var/log/mysqld.log # 执行安全向导 sudo mysql_secure_installation

初始化过程中需要:

  1. 修改root密码(需包含大小写字母、数字和特殊字符)
  2. 移除匿名用户
  3. 禁止root远程登录
  4. 删除测试数据库
  5. 重新加载权限表

2.3 防火墙配置

开放3306端口并重载规则:

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

3. 基础数据库操作

3.1 连接MySQL服务器

使用root账户登录:

mysql -u root -p

3.2 用户与权限管理

创建新用户并授权:

CREATE USER 'devuser'@'%' IDENTIFIED BY 'StrongPass123!'; GRANT ALL PRIVILEGES ON *.* TO 'devuser'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;

查看用户权限:

SHOW GRANTS FOR 'devuser'@'%';

3.3 数据库基本操作

创建测试数据库:

CREATE DATABASE testdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

表操作示例:

USE testdb; CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); -- 插入数据 INSERT INTO users (username, email) VALUES ('user1', 'user1@example.com'), ('user2', 'user2@example.com'); -- 查询数据 SELECT * FROM users WHERE username LIKE 'user%';

4. 日常维护与故障排查

4.1 备份与恢复

使用mysqldump进行逻辑备份:

# 全库备份 mysqldump -u root -p --all-databases > full_backup.sql # 单库备份 mysqldump -u root -p testdb > testdb_backup.sql

恢复数据库:

mysql -u root -p testdb < testdb_backup.sql

4.2 性能监控

查看运行状态:

SHOW STATUS LIKE 'Threads_connected'; SHOW PROCESSLIST;

检查慢查询(需先在配置文件中启用):

SHOW VARIABLES LIKE 'slow_query%';

4.3 常见问题处理

问题1:忘记root密码

  1. 修改/etc/my.cnf,在[mysqld]段添加:
    skip-grant-tables
  2. 重启服务后无需密码登录
  3. 执行ALTER USER修改密码
  4. 移除配置参数并重启

问题2:连接数过多

-- 查看最大连接数 SHOW VARIABLES LIKE 'max_connections'; -- 临时调整 SET GLOBAL max_connections = 200;

5. 进阶配置建议

5.1 配置文件优化

/etc/my.cnf关键参数示例:

[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock # 内存配置 innodb_buffer_pool_size = 4G key_buffer_size = 256M # 日志配置 slow_query_log = 1 long_query_time = 2 log-error = /var/log/mysqld.log

5.2 定期维护任务

设置自动备份脚本(crontab示例):

0 2 * * * /usr/bin/mysqldump -u root -pPASSWORD --all-databases | gzip > /backup/mysql_$(date +\%Y\%m\%d).sql.gz

5.3 安全加固措施

  1. 定期审计用户权限
  2. 启用SSL连接
  3. 安装企业版防火墙插件
  4. 配置审计日志

重要提示:生产环境务必定期测试备份文件的可用性,避免备份文件损坏导致无法恢复

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询