目录
一、安装之前检测系统是否有自带的MySQL
二、安装步骤
1、下载MySQL源
2、安装MySQL源
3、检查MySQL源是否安装成功
4、有了MySQL源后安装MySQL
5、 查看是否安装成功
6、启动MySQL并检查MySQL运行状态
7、获取MySQL默认登录密码,登录MySQL,并修改默认密码
8、授予root用户远程访问权限,并刷新权限使生效
三、卸载MySQL
1、查看MySQL安装情况:rpm -qa | grep mysql
2、查找所有MySQL目录并删除:find / -name mysql
3、 删除my.cnf:rm -f /etc/my.cnf
四、安装MySQL时遇到问题
1、启动MySQL时,出现以下提示
2、在启动MySQL时,也有出现以下提示:
五、常见问题
1、服务器关机重启后,mysql 一般也需要重新启动。可以使用以下命令将 mysql 设置为开机自启动
2、Linux下退出MySQL命令:Ctrl+z
3、MySQL配置文件保存在/etc/路径下,可修改配置,重启MySQL服务后配置生效
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 #强制删除
curl -O
https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
yum localinstall mysql57-community-release-el7-11.noarch.rpm
yum repolist enabled | grep "mysql.*-community.*"
出现以下信息表示安装成功了
yum install mysql-community-server
输入确认继续安装
安装报错,提示无公共秘钥
解决方法:
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
然后再次安装
yum list installed mysql-*
systemctl start mysqld
systemctl status mysqld
grep 'temporary password' /var/log/mysqld.log
输入以下命令后,再输入默认登录密码,就能以 root 帐号登录 mysql
mysql -uroot -p
在创建数据库或数据表之前,要先用一下命令修改 root 用户的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
PS:MySQL默认的密码复杂度为 MEDIUM,所以新密码至少为8位,并且必须包含大、小写字母、数字和特殊字符
grant all privileges on *.* to 'root' @'%' identified by 'Mysql@123';
第一个*是数据库,可以改成允许访问的数据库名称
第二个 是数据库的表名称,代表允许访问任意的表
root代表远程登录使用的用户名,可以自定义
%代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了
password代表远程登录时使用的密码,可以自定义
让权限立即生效:flush privileges
强制删除已安装MySQL
查看日志找到原因: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-2~all~sobaiduweb~default-1-104937426.142^v10^pc_search_result_control_group,157^v4^control&spm=1018.2226.3001.4187
我参考解决方案关闭selinux后再重启,问题还是一直没得到解决,我就卸载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-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-107997716-null-null.142^v10^pc_search_result_control_group,157^v4^control&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
systemctl enable mysqld
重启MySQL服务:systemctl restart mysqld