mysql5.6安装参考:https://blog.csdn.net/lgxzzz/article/details/124409836
mysql5.7安装参考:https://blog.csdn.net/weixin_44767040/article/details/124070626
下面是mysql8.0安装
一、MySQL8.0的安装
-
首先清除系统中默认的mariadb数据库,否则不能安装mysql
rpm -qa |grep mariadb |xargs yum remove -y
-
执行下面命令没有数据则表明已经清除mariadb了
rpm -qa |grep mariadb
-
禁用selinux、关闭防火墙
# 检查selinux状态 sestatus # SELinux status: enabled # Current mode: enforcing #永久禁用selinux # 打开/etc/sysconfig/selinux vi /etc/sysconfig/selinux # 将SELINUX=enforcing(你的可能不是enforcing,总之是改SELINUX的值)更改为SELINUX=disabled # 重启是禁用selinux生效 reboot # 再次检查selinux状态,为disabled则禁用成功 sestatus # SELinux status: disabled # 检查防火墙状态 systemctl status firewalld # 禁止启动防火墙 # disable : 禁止开机启动 # enable : 开机自启动 # --now : 立即执行 systemctl disable --now firewalld # 关闭防火墙 systemctl stop firewalld
注意:
- 如果mysql开启服务提示权限不够可能是selinux没有成功禁用
- 其他电脑连不上mysql检查一下防火墙是不是没关
-
官网下载mysql的rpm安装包,下载地址点这里
-
在linux上/usr/local目录下创建mysql文件夹
cd /usr/local mkdir mysql
-
然后将安装包传到mysql文件夹下并解压
tar axvf mysql-8.0.15-1.el7.x86_64.rpm-bundle.tar
-
进入解压的目录依次对rpm进行安装(不同版本mysql的rpm包可能不一样,都安装就行了)
ls | grep .rpm$ | xargs rpm -ivh --force --nodeps
⚠️注意:如果安装过程中提示依赖检测失败,可在安装命令后面加“-i --force --nodeps”忽略依赖强制安装,例如:
rpm -ivh mysql-community-client-8.0.28-1.el7.x86_64.rpm --force --nodeps
-
修改MySql配置
vi /etc/my.cnf
修改其中部分配置如下:
#datadir=/var/lib/mysql datadir=/data/mysql socket=/var/lib/mysql/mysql.sock log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
-
在根目录下创建data文件夹,然后通过以下命令,完成对 mysql 数据库的初始化和相关配置
mysqld --initialize-insecure chown mysql:mysql /data/mysql -R systemctl start mysqld systemctl enable mysqld
-
这里安装好mysql没有密码
# 进入mysql mysql -u root # 切换至mysql库 use mysql # 给root用户设置新密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; # 将root用户的Host改为%以便不限制ip访问数据库 update user set Host='%' where USER ='root'; # ctrl+z退出mysql # 重启mysql使刚刚的修改生效 systemctl restart mysqld
二、安装过程中可能存在的问题
-
初始化时报错“Error while setting value ‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE…’ to ‘sql_mode’”
报错信息:
解决方式:修改配置文件(vi /etc/my.cnf)注释掉sql_mode相关信息
参考文档:mysql8 启动报错:Error while setting value ‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DI -
初始化时报错
报错信息:
解决方式:清空对应目录下的所有文件(此处是/data/mysql,具体以实际提示的为准)
以上问题是我或者其他参考该文章安装mysql的朋友遇到的问题记录,有其他问题可作补充