许多读者在安装mysql的时候是不是遇到了mysql无法安装的情况,没有发现报错但是就是安装不了,我在mysql也遇到了一样的错误,在查询资料后整理出了一下错误
无法安装mysql 的原因
MariaDB 是MySQL的一个分支,从MySQL被甲骨文收购之后开发的一个替代品,目前全部兼容MySQL。
MariaDB 是一个采用 Maria 存储引擎的 MySQL 分支版本,是由原来MySQL 的作者 Michael Widenius 创办的公司所开发的免费开源的数据库服务器。
由于满MySQL被Oracle收购后的日渐封闭与缓慢的更新,众多Linux发行版逐渐抛弃了这MySQL数据库,而转向了MariaDB
CentOS 7/RHEL7中,默认已经不再提供mysql的安装源,取而代之的是mysql的原开发者另起炉灶开发的mariadb数据库,不仅完全兼容mysql而且比mysql更加强大。
如果Linux中安装了mariadb数据库,先卸载掉,因为CentOS 7.6 内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb
解决方法
1、检查Linux是否安装了mariadb数据库,mariadb数据库是mysql的分支
执行命令:
yum list installed | grep mariadb
2、开始安装mysql,首先从官网下载mysql软件压缩包,并上传到Linux的opt/mysoft 目录下
解压下载下来的mysql软件压缩包,执行命令:
mkdir /usr/local/mysql //创建mysql目录
tar -zxvf /opt/mysoft/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz -C /usr/local/mysql //解压
local目录一般是linux上安装文件的地方,所以选这个路径
3、添加mysql用户及用户组
执行命令:
groupadd mysql
useradd mysql -g mysql (-g: 是指定用户所在组)
chown /usr/local/mysql //将mysql安装目录的所属组改为mysql
为什么要创建mysql分组:
我们在编译安装的时候创建一个mysql组和一个mysql用户,并把datadir和安装目录属主改为mysql,在MySQL启动的时候,单进程mysqld,该进程的属主就是mysql,这样就保证了mysql服务的独立性,即便mysql服务被黑掉,得到了mysql用户权限,也不会影响整个系统的安全
4.进入 /usr/local/mysql目录开始进行安装
rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm //安装服务器端
rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm //安装客户端
5.使用root用户登入msyql,初始密码在 /root/.mysql_secret
这样mysql就安装好了
卸载mysql
一、使用以下命令查看当前安装mysql情况,查找以前是否装有mysql
rpm -qa|grep -i mysql
二、停止mysql服务、删除之前安装的mysql
删除命令:rpm -e –nodeps 包名
rpm -ev MySQL-client-5.5.25a-1.rhel5
rpm -ev MySQL-server-5.5.25a-1.rhel5
三、查找之前老版本mysql的目录、并且删除老版本mysql的文件和库
find / -name mysql//查找命令
比如查到以下文件
/var/lib/mysql
/var/lib/mysql/mysql
/usr/lib64/mysql
一个个移除
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql
rm -rf /usr/lib64/mysql
注意:卸载后/etc/my.cnf不会删除,需要进行手工删除
rm -rf /etc/my.cnf
四、再次查找机器是否安装mysql
rpm -qa|grep -i mysql