情景:
按照网上的流程,甚至是官方文档都出现很多错误,比如:
安装mysql-communtiy-server时出现什么
GPG密钥已安装,但不适用此软件包
安装成功,但启动时出现什么
-bash: ./mysqld: 没有那个文件或目录解决方法
或者什么
/etc/init.d/mysql: line 239: my_print_defaults: command not found Starting MySQLCouldn‘t find MySQL
或者
Starting MySQL * Couldn‘t find MySQL server (/usr/bin/[false]ld_safe)mysql
太多了,多的记不清了,一直在安装、卸载、安装、卸载(多个版本来回切换)
解决:
看了一个b站up主的安装教学视频,虽然也出了一些小问题,但都成功解决了
步骤:
卸载,一定要卸载干净
rpm -qa |grep mysql //先查看安装了哪些
systemctl status mysqld //查看运行状态,正在运行中就进行下一步
/etc/init.d/mysqld stop //停止运行
rpm -e --nodeps mysql-libs-5.1.73-3.el6_5.i686 //直接强制删除最开始查询到的包,不多哔哔
find / -name mysql //然后再看看有没有残留
rm -rf /var/lib/mysql //有的话就删,像这样
rm -rf /etc/my.cnf //这个是查不出来的,要额外删一下
然后删除用户组
# id mysql //先查一下
uid=100(mysql) gid=100(mysql) 组=100(mysql) //有的话就会这样显示
# userdel mysql //分别删除
# groupdel mysql
# cat /etc/passwd |grep mysql #验证用户是否被删除
# cat /etc/group |grep mysq #验证用户组是否被删除
到这卸载就结束了,以上卸载步骤参考这篇文章
安装
链接community 8.0.28版本下载地址
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.28-1.el7.x86_64.rpm-bundle.tar
解压
tar -xvf mysql-8.0.28-1.el7.x86_64.rpm-bundle.tar
在安装之前,查一个东西,这个东西会和mysql的安装有冲突,
# rpm -qa|grep mariadb
mariadb-connector-c-config-3.1.11-2.1.al8.noarch //就是这玩意
# rpm -e --nodeps mariadb-connector-c-config-3.1.11-2.1.al8.noarch //强删,删完可以再查一下
开始安装
# rpm -ivh mysql-community-common-8.0.28-1.el7.x86_64.rpm
# rpm -ivh mysql-community-client-plugins-8.0.28-1.el7.x86_64.rpm
# rpm -ivh mysql-community-libs-8.0.28-1.el7.x86_64.rpm
# rpm -ivh mysql-community-client-8.0.28-1.el7.x86_64.rpm
# rpm -ivh mysql-community-icu-data-files-8.0.28-1.el7.x86_64.rpm
# rpm -ivh mysql-community-server-8.0.28-1.el7.x86_64.rpm
//只需要安装这几个
安装过程中如果报依赖错误,可以在后面加上 --force --nodeps
# rpm -ivh mysql-community-server-8.0.28-1.el7.x86_64.rpm --force --nodeps
//比如这样
然后初始化一下数据库
# mysqld --initialize --console
有可能出现报错:
mysqld: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file or directory
下载openss并安装,我这个好像是最新的
# wget https://vault.centos.org/centos/8/AppStream/x86_64/os/Packages/compat-openssl10-1.0.2o-3.el8.x86_64.rpm
# rpm -i compat-openssl10-1.0.2o-3.el8.x86_64.rpm
再次初始化,然后设置权限
# chown -R mysql:mysql /var/lib/mysql/
启动,终于成功了!
# systemctl start mysqld
查看初始化时生产的密码
# cat /var/log/mysqld.log|grep localhost
登录!
# mysql -uroot -p