在CentOS操作系统上下载并安装MySQL是一个相对直接的过程,但需要遵循一系列步骤以确保成功安装和配置,以下是一个详细的指南,包括从下载到配置的所有步骤,并以表格形式归纳关键信息:
一、准备工作
1、更新系统:
打开终端并运行以下命令以更新系统的包列表和已安装的包:
sudo yum update y
2、检查现有MySQL或MariaDB安装:
如果系统中已经安装了MySQL或其分支MariaDB,可能需要先卸载它们以避免冲突,使用以下命令检查:
rpm qa | grep mysql rpm qa | grep mariadb
如果找到相关软件包,可以使用以下命令卸载:
sudo yum remove mysqllibs mysql mysqlserver mysqlcommunitylibs mysqlcommunityserver mysqlcommunityclient
二、下载MySQL YUM源
1、访问MySQL官方网站:
前往[MySQL官方下载页面](https://dev.mysql.com/downloads/repo/yum/)。
2、下载YUM源RPM包:
根据CentOS的版本(如7或8),选择合适的YUM源链接并下载RPM包,对于CentOS 7,链接可能是:
https://dev.mysql.com/get/mysql57communityreleaseel710.noarch.rpm
对于CentOS 8,则可能是:
https://dev.mysql.com/get/mysql80communityreleaseel83.noarch.rpm
使用wget
命令下载:
wget https://dev.mysql.com/get/mysql57communityreleaseel710.noarch.rpm
3、安装YUM源RPM包:
sudo yum localinstall mysql57communityreleaseel710.noarch.rpm
三、安装MySQL服务器
1、安装MySQL服务器:
sudo yum install mysqlcommunityserver y
2、启动MySQL服务:
sudo systemctl start mysqld
3、查看MySQL运行状态:
sudo systemctl status mysqld
四、配置MySQL
1、获取临时密码:
MySQL安装后会生成一个临时密码,可以通过以下命令找到:
grep 'temporary password' /var/log/mysqld.log
输出示例(注意:实际密码会不同):
[Note] A temporary password is generated for root@localhost: r4s3CrGzQ,!
2、登录MySQL并修改密码:
使用临时密码登录MySQL控制台:
mysql uroot p
输入临时密码后,运行以下命令修改密码(将NewStrongPassword
替换为你想要的强密码):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewStrongPassword';
3、设置远程访问权限(可选):
如果你需要允许远程访问MySQL,可以运行以下命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'NewStrongPassword' WITH GRANT OPTION; FLUSH PRIVILEGES;
>注意:出于安全考虑,不建议在生产环境中启用远程访问或使用弱密码。
4、配置防火墙:
为了允许外部访问MySQL(如果需要),请开放MySQL的默认端口3306:
sudo firewallcmd permanent addport=3306/tcp sudo firewallcmd reload
五、验证安装
1、登录MySQL:
使用新设置的密码登录MySQL控制台:
mysql uroot pNewStrongPassword
2、运行简单查询:
SHOW DATABASES;
如果看到MySQL内置的数据库列表,说明安装成功。
六、常见问题及解决方案
Q1: 为什么在安装过程中遇到“依赖关系问题”?
A1: 这可能是由于系统缺少必要的依赖包或库文件,尝试安装所需的依赖项,或者使用force nodeps
参数强制安装(不推荐,除非确定这样做是安全的),确保你的YUM源是最新的。
Q2: 如何更改MySQL的默认编码为UTF8?
A2: 编辑MySQL配置文件(通常位于/etc/my.cnf
或/etc/mysql/my.cnf
),添加或修改以下行:
[client] defaultcharacterset=utf8mb4 [mysql] defaultcharacterset=utf8mb4 [mysqld] charactersetserver=utf8mb4 collationserver=utf8mb4_unicode_ci
然后重启MySQL服务以应用更改。