在CentOS系统上安装MySQL是一个常见需求,但不同版本的MySQL可能有不同的安装步骤和注意事项,本文将详细介绍如何在CentOS系统上下载并安装指定版本的MySQL,包括必要的步骤、命令和常见问题的解决方法。
一、准备工作
在开始安装之前,需要确保系统已经更新到最新版本,并且具备基本的系统管理权限,执行以下命令以更新系统:
sudo yum update -y
二、添加MySQL Yum仓库
由于CentOS默认的Yum仓库中不包含MySQL,我们需要手动添加MySQL的官方Yum仓库,根据需要安装的MySQL版本,选择相应的Yum仓库进行添加,以下是添加MySQL 8.0和MySQL 5.7仓库的命令示例:
1. 添加MySQL 8.0 Yum仓库
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm sudo rpm -ivh mysql80-community-release-el7-3.noarch.rpm
2. 添加MySQL 5.7 Yum仓库
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm
三、安装MySQL
添加完Yum仓库后,可以通过Yum包管理器来安装MySQL,以下是安装MySQL 8.0和MySQL 5.7的命令示例:
1. 安装MySQL 8.0
sudo yum install mysql-community-server -y
2. 安装MySQL 5.7
sudo yum install mysql-community-server -y
由于我们之前添加了MySQL 5.7的Yum仓库,因此即使执行的是安装MySQL 8.0的命令,实际上也会安装MySQL 5.7,如果需要安装其他特定版本的MySQL,请确保添加了相应版本的Yum仓库。
四、启动MySQL服务
安装完成后,需要启动MySQL服务并设置其开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld
五、获取初始密码并登录MySQL
MySQL安装完成后,会为root用户生成一个临时密码,该密码存储在/var/log/mysqld.log
文件中,使用以下命令获取临时密码并登录MySQL:
grep 'temporary password' /var/log/mysqld.log
获取到临时密码后,使用以下命令登录MySQL:
mysql -u root -p
在提示符下输入临时密码,即可登录到MySQL控制台。
六、修改root用户密码并设置远程访问
为了安全起见,建议修改root用户的默认密码,并允许远程访问MySQL服务器,以下是相关命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;
七、配置防火墙(可选)
如果服务器启用了防火墙,需要开放MySQL的默认端口3306以允许外部访问:
firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd --reload
八、验证安装
可以通过运行以下命令来验证MySQL是否成功安装并正在运行:
sudo systemctl status mysqld
如果返回状态为“active (running)”,则说明MySQL已成功安装并正在运行。
九、FAQs
Q1: 如何更改MySQL的安装目录?
A1: 在解压tar.gz安装包时,可以使用-C
选项指定安装目录,若要将MySQL安装到/opt/mysql
目录下,请使用以下命令:
tar -zxvf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz -C /opt/mysql
然后在后续步骤中,将相关命令中的路径替换为实际安装路径即可。
Q2: 如果忘记MySQL的root密码怎么办?
A2: 如果忘记了MySQL的root密码,可以通过以下步骤重置密码:
1、停止MySQL服务:sudo systemctl stop mysqld
2、跳过权限表启动MySQL:sudo mysqld_safe --skip-grant-tables &
3、登录MySQL(无需密码):mysql -u root
4、重置root密码:FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123';
5、退出MySQL并重启服务:exit; sudo systemctl restart mysqld
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1412000.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复