Linux下安装MySQL问题及报错解决

前言:

在Linux环境下,安装MySQL服务

环境:

虚拟机CentOS7 -----------------------------------------------

流程:

确保mysql已卸载

`rpm -qa|grep -i mysql` //查看rpm包
 `yum list install mysql`
 
 卸载前,关闭mysql服务
`systemctl stop mysqld`

 卸载mysql安装包
`rpm -e mysql.. `//普通删除
`rpm -e --nodeps mysql..` //强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

`yum remove mysql..`
 
 再次执行rpm -qa |grep -i mysql和yum list intall mysql会发现已经卸载完。

删除残留的文件:
`find / -name mysql`//查找出目录
`rm -rf 目录  ` //删除目录
**/etc/my.cnf 配置文件,手动删除**

下载源:

在[]选择对应rpm源下载地址。 wget 下载地址: 如:wget //对应centOS8,注意此处应选7版本

weget下载默认路径:当前用户目录下,或者/root下

安装源

yum install mysql80-community-release-el7-3.noarch.rpm -y

查看源://可忽略

`yum repolist`

修改源配置文件以安装mysql指定版本//可忽略

`vim /etc/yum.repos.d/mysql-community.repo`

安装MySQL服务

`yum install mysql-community-server`

开启Mysql服务

centos7:  `systemctl start mysqld`

查看服务是否启动

`systemctl status mysqld`

查看mysql root用户密码

`cat /var/log/mysqld.log |grep password`

客户端本地连接并修改密码

数据库连接成功后,此时使用的是临时密码,无法进行任何操作,需要修改root用户的密码(遵循密码策略)。

  `mysql -uroot -p `
  `alter user root@localhost identified with mysql_native_password by new_passwd;`

参考:

---CentOS安装Mysql8.0图文教程 ---CentOS7卸载mysql ---centos7.4彻底卸载mysql详细过程 ---Centos7彻底卸载MySQL

报错:

获取 GPG 密钥失败:[Errno 14] Could not open/read file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora

解释:每个 fusion源发布的稳定 RPM 软件包都配有一个 GPG 签名。默认情况下,yum 和图形更新工具验证这些签名并拒绝安装任何没有签名或者签名损坏的软件包。您总是应该在安装软件包之前验证其签名。这些签名可确保您要安装的软件包出自fusion仓库,且没有被提供该软件包的网页或者镜像更换(无意的或者恶意的)。 解决:我是下载的源和放在/var/cache/yum/x86_64/7/mysql80-community/packages的rpm包不一致。

我选择按wget源重新安装。

在/var/cache/yum/x86_64/7/mysql80-community/packages路径下,安装 yum localinstall mysql80-community-release-el8-3.noarch.rpm 再次安装mysql-community-server服务 yum install mysql-community-server //此时,会把用finalshell传入的rpm包做替换,同时GPG密钥也会重新导入

问题解决

参考文献:

---获取 GPG 密钥失败:[Errno 14] 2011-05-26 14:43 ---yum 安装 获取 GPG 密钥失败 ---【mysql 错误】/var/cache/yum/x86_64/7/mysql80-community/packages/mysql-community-client-8.0.28-1.el7.x86

您可以尝试添加 --skip-broken 选项来解决该问题 您可以尝试执行:rpm -Va --nofiles --nodigest 解决方案

原因:根据文献,说是软件包没有卸载完成 解决方式:清理yum yum clean all 有时还是依赖缺失的问题: 直接安装该依赖

参考文献:

---您可以尝试添加 --skip-broken 选项来解决该问题 您可以尝试执行:rpm -Va --nofiles --nodigest 解决方案 ---解决yum安装软件报错--skip-broken

mariadb-libs

报错描述:

尝试了安装libstdc++.so.6但还是出现该问题。 原因:postfix-2.10.1-6.el7.x86_64包与mysql-community不兼容。 解决办法

查看mariadb相关的包:yum list installed mariadb
    移除mariadb-libs:sudo yum remove mariadb-libs
    重新安装mysql-comunity

参考文献:

---CENTOS7.5安装MYSQL5.7.28RPM包报错:POSTFIX-2.10.1-6.EL7.X86_64需要:LIBMYSQLCLIEN Package: 2:postfix-2.10.1-6.el7.x86_64 (@anaco

经验分享 程序员 微信小程序 职场和发展