在CentOS系统中使用MySQL数据库是许多开发者和系统管理员的基本技能,本文将详细介绍从安装配置到基本操作的完整流程,帮助您快速上手。

安装MySQL数据库
在CentOS 7及以上版本,推荐使用官方MySQL Yum仓库进行安装,首先下载并添加MySQL官方仓库:
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm -y
安装完成后,使用以下命令检查仓库是否启用:
sudo yum repolist enabled | grep "MySQL.*-community.*"
然后执行安装命令:
sudo yum install mysql-community-server -y
安装完成后启动MySQL服务并设置开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld
安全配置
首次启动后,MySQL会生成一个临时root密码,可通过以下命令查看:
sudo grep 'temporary password' /var/log/mysqld.log
使用该密码登录并运行安全配置脚本:
mysql_secure_installation
按照提示设置root密码、移除匿名用户、禁止root远程登录等操作,建议全部选择"Y"(是)以增强安全性。

基本操作
登录MySQL
mysql -u root -p
输入密码后即可进入MySQL命令行界面。
数据库操作
创建数据库:
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
列出所有数据库:
SHOW DATABASES;
删除数据库:
DROP DATABASE mydb;
用户管理
创建新用户并授权:
CREATE USER 'user1'@'localhost' IDENTIFIED BY 'StrongPassword123!'; GRANT ALL PRIVILEGES ON mydb.* TO 'user1'@'localhost'; FLUSH PRIVILEGES;
用户权限说明: | 权限类型 | 说明 | |---------|------| | ALL PRIVILEGES | 所有权限 | | SELECT | 查询权限 | | INSERT | 插入权限 | | UPDATE | 更新权限 | | DELETE | 刻除权限 |
远程访问配置
如需允许远程访问,需修改MySQL配置文件:

sudo vi /etc/my.cnf
在[mysqld]部分添加:
bind-address = 0.0.0.0
重启MySQL服务后,在防火墙中开放3306端口:
sudo firewall-cmd --permanent --add-port=3306/tcp sudo firewall-cmd --reload
常用维护命令
- 备份数据库:
mysqldump -u root -p mydb > backup.sql
- 恢复数据库:
mysql -u root -p mydb < backup.sql
- 查看MySQL状态:
sudo systemctl status mysqld
常见问题排查
-
忘记root密码:
- 停止MySQL服务:
sudo systemctl stop mysqld - 跳过权限表启动:
sudo mysqld_safe --skip-grant-tables & - 重置密码后重启服务
- 停止MySQL服务:
-
端口冲突:
- 检查端口占用:
sudo netstat -tulnp | grep 3306 - 修改配置文件中的端口号
- 检查端口占用:
相关问答FAQs
Q1: 如何查看MySQL的版本信息?
A1: 登录MySQL后执行SELECT VERSION();,或在命令行使用mysql --version。
Q2: CentOS 8系统安装MySQL报错怎么办?
A2: CentOS 8默认移除了MySQL,需先安装dnf install mysql-community-server,或使用替代方案如MariaDB。