在CentOS 7上安装MySQL是一个相对简单的过程,但需要按照步骤进行操作以确保安装和配置成功,以下是详细的安装步骤及相关信息:
一、安装准备
1、系统要求:确保CentOS 7系统是最新的,可以通过以下命令更新系统:
yum update y
2、检查现有数据库:如果系统中已经安装了MariaDB或其他版本的MySQL,建议先卸载它们以避免冲突。
二、下载并安装MySQL Yum Repository
1、下载MySQL Yum Repository:
wget http://repo.mysql.com/mysql57communityreleaseel710.noarch.rpm
2、安装MySQL Yum Repository:
sudo rpm Uvh mysql57communityreleaseel710.noarch.rpm
3、安装MySQL服务器:
sudo yum install y mysqlcommunityserver
三、启动MySQL服务
1、启动MySQL服务:
sudo systemctl start mysqld.service
2、检查MySQL服务状态:
sudo systemctl status mysqld.service
四、获取临时密码并登录MySQL
1、获取临时密码:
sudo grep 'temporary password' /var/log/mysqld.log
2、使用临时密码登录MySQL:
mysql uroot p
3、修改root用户密码(密码策略调整):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword!';
五、配置MySQL
1、授权远程访问:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'NewPassword!' WITH GRANT OPTION; FLUSH PRIVILEGES;
2、开启MySQL服务开机自启动:
sudo systemctl enable mysqld sudo systemctl daemonreload
3、设置字符集为UTF8:
编辑/etc/my.cnf
文件,添加或修改以下内容:
[mysql] defaultcharacterset=utf8 [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock defaultstorageengine=INNODB charactersetserver=utf8 symboliclinks=0 logerror=/var/log/mysqld.log pidfile=/var/run/mysqld/mysqld.pid
4、重启MySQL服务:
sudo systemctl restart mysqld
六、防火墙配置
1、开放MySQL端口(3306):
sudo firewallcmd zone=public addport=3306/tcp permanent sudo firewallcmd reload
七、卸载MySQL Yum Repository(可选)
为了避免每次Yum操作都更新,可以选择卸载MySQL Yum Repository:
sudo yum remove y mysql57communityreleaseel710.noarch
八、常见问题及解答(FAQs)
Q1: 如何更改MySQL的默认存储引擎?
A1: 可以在/etc/my.cnf
文件中的[mysqld]
部分添加或修改defaultstorageengine
参数,
[mysqld] defaultstorageengine=INNODB
然后重启MySQL服务以使更改生效。
Q2: 如果忘记MySQL Root密码怎么办?
A2: 如果忘记了MySQL root密码,可以通过以下步骤重置:
1、停止MySQL服务:
sudo systemctl stop mysqld
2、以安全模式启动MySQL,跳过权限表:
sudo mysqld_safe skipgranttables &
3、登录MySQL:
mysql uroot
4、重置root密码:
FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword!';
5、退出MySQL并重启服务:
EXIT; sudo systemctl restart mysqld
通过以上步骤,您可以在CentOS 7上成功安装并配置MySQL,如果在安装过程中遇到问题,可以参考官方文档或社区论坛寻求帮助。