跳至主要內容

Centos7下安装MySql

三思原创大约 4 分钟mysqlcentos7mysql-安装数据库

本文详细介绍了在Centos7下安装MySQL的步骤,包括安装前的检测、下载MySQL源、安装MySQL源、安装MySQL、启动MySQL并修改默认密码、授予root用户远程访问权限等。同时也提供了卸载MySQL的方法以及解决安装中可能遇到的问题。

image
image

Centos7下安装MySQL详细步骤

​​

(11条消息) Centos7下安装MySQL详细步骤_欢欢李的博客-CSDN博客_centos安装mysqlopen in new window

一、安装之前检测系统是否有自带的MySQLcd

rpm -qa | grep mysql #检查是否安装过MySQL
rpm -qa | grep mariadb #检查是否存在 mariadb 数据库(内置的MySQL数据库),有则强制删除
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64 #强制删除
rpm -e --nodeps mariadb-5.5.68-1.el7.x86_64 #强制删除

​​image​​

二、安装步骤

1、下载MySQL源

curl -O https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

​​image​​

2、安装MySQL源

yum localinstall mysql57-community-release-el7-11.noarch.rpm

image

image

3、检查MySQL源是否安装成功

yum repolist enabled | grep "mysql.*-community.*"

出现以下信息表示安装成功了

image

4、有了MySQL源后安装MySQL

yum install mysql-community-server

输入确认继续安装

image

安装报错,提示无公共秘钥

解决方法:

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

然后再次安装

image

5、 查看是否安装成功

yum list installed mysql-*

​​image​​

6、启动MySQL并检查MySQL运行状态

systemctl start mysqld
systemctl status mysqld

image

7、获取MySQL默认登录密码,登录MySQL,并修改默认密码

grep 'temporary password' /var/log/mysqld.log

输入以下命令后,再输入默认登录密码,就能以 root 帐号登录 mysql

mysql -uroot -p

在创建数据库或数据表之前,要先用一下命令修改 root 用户的密码

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

PS:MySQL默认的密码复杂度为 MEDIUM,所以新密码至少为8位,并且必须包含大、小写字母、数字和特殊字符

image

8、授予root用户远程访问权限,并刷新权限使生效

grant all privileges on *.* to 'root' @'%' identified by 'Mysql@123';   

第一个*是数据库,可以改成允许访问的数据库名称

第二个 是数据库的表名称,代表允许访问任意的表

root代表远程登录使用的用户名,可以自定义

%代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了

password代表远程登录时使用的密码,可以自定义

让权限立即生效:

flush privileges;

​​image​​

三、卸载MySQL

1、查看MySQL安装情况:

rpm -qa | grep mysql

强制删除已安装MySQL

​​image​​

2、查找所有MySQL目录并删除:

find / -name mysql 

image

3、 删除my.cnf:

rm -f /etc/my.cnf

image

四、安装MySQL时遇到问题

1、启动MySQL时,出现以下提示

image

查看日志找到原因:cat /var/log/mysqld.log

可参考这位博主解决方法:https://blog.csdn.net/qq_44895681/article/details/104937426?ops_request_misc=&request_id=&biz_id=102&utm_term=centos7%E4%B8%8B%E5%AE%89%E8%A3%85MySQL%E6%8F%90%E7%A4%BAOperating%20sys&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-1-104937426.142v10pc_search_result_control_group,157v4control&spm=1018.2226.3001.4187

image

image

我参考解决方案关闭selinux后再重启,问题还是一直没得到解决,我就卸载MySQL后再重装了,就可以了

2、在启动MySQL时,也有出现以下提示:

Failed to start mysqld.service: Unit not found

这个原因还未找到,我的解决方法就是卸载了重装,之后问题解决了

但是有博主针对这个问题做出了反馈,可参考:https://blog.csdn.net/weixin_44455388/article/details/107997716?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165295131816781435496489%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=165295131816781435496489&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-1-107997716-null-null.142v10pc_search_result_control_group,157v4control&utm_term=Linux%E4%B8%8B%E5%AE%89%E8%A3%85MySQL%E6%8F%90%E7%A4%BA%EF%BC%9AFailed+to+start+mysql.service%3A+Unit+not+found.&spm=1018.2226.3001.4187

五、常见问题

1、服务器关机重启后,mysql 一般也需要重新启动。可以使用以下命令将 mysql 设置为开机自启动

systemctl enable mysqld

​​image​​

2、Linux下退出MySQL命令:Ctrl+z

3、MySQL配置文件保存在/etc/路径下,可修改配置,重启MySQL服务后配置生效

重启MySQL服务:

systemctl restart mysqld

​​image​​