centos7安装mysql8

7 篇文章 0 订阅

一直想在别的电脑上安装一个数据,用于测试,但总是各种原因,没有做,只能在自己电脑上安装测试。今天买了台centos测试服务器,于是,花了点时间安装了mysql8,并将步骤一一记录。安装过程有很多中方法,我选用最简单的一种。

一、下载适合自己系统的mysql安装包

MySQL Community Server 8.0.21

选择mysql版本
由于我的系统是centOS,所以这里我选了Red Hat,版本为mysql-8.0.21-1.el7.x86_64.rpm-bundle.tar

二、检查系统中是否已经有安装mysql

linux 中使用命令 ls -l | grep mysql 查看是否有其他的mysql文件,由于我的系统是新装的,所以没有找到任何mysql文件。

三、安装mysql8

1、 通过xftp或其他工具将文件上传到linux系统中。
2、解压

tar -xvf mysql-8.0.21-1.el7.x86_64.rpm-bundle.tar

解压后会在目录中出现以下文件:
解压后的文件
3、安装
安装使用命令:rpm -vih 包
由于这些包之间会有依赖,所以安装时要按照以下步骤进行:

rpm -vih mysql-community-common-8.0.13-1.el7.x86_64
rpm -vih mysql-community-libs-8.0.13-1.el7.x86_64
rpm -vih mysql-community-libs-compat-8.0.13-1.el7.x86_64
rpm -vih mysql-community-client-8.0.13-1.el7.x86_64
rpm -vih mysql-community-embedded-compat-8.0.13-1.el7.x86_64
rpm -vih mysql-community-server-8.0.13-1.el7.x86_64

其中像test、devel 包没有安装,我觉得没什么用。

安装过程中遇到以下问题:
mariadb
由于linux 系统默认内部集成了mariaDB 数据库,与mysql冲突,解决该问题的方法就是卸载mariaDB 。
首先查看mariaDB,使用命令rpm -qa | grep mariadb,在我的系统中找到的版本为 mariadb-libs-5.5.56-2.el7.x86_64
卸载:rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

4、安装完成后,启动服务
使用命令:service mysqld restart
查看服务状态:service mysqld status

四、使用mysql

1、新安装的数据库root密码查看
通过grep命令查找mysql日志文件,找到数据库密码:

grep 'temporary password' /var/log/mysqld.log

日志文件

2、进入mysql数据库

使用命令:mysql -uroot -p 输入刚才查找到的密码。
进去之后需要先修改密码才能做其他操作。

3、修改root密码

命令:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘密码’; 修改密码的时候,密码必须包含大小写,数字及特殊字符,否则会修改失败。并提示您的密码不满足当前策略的要求

修改完成后就可以使用了。

五、遇到的坑

1、使用navcat 无法连接mysql8,修改加密规则。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; 

更新一下用户的密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

刷新权限(刷新权限命令,是对mysql数据库中默认配置项修改后,使用该命令进行刷新,可即时生效)

FLUSH PRIVILEGES;

解决这个问题,也可以执行下面命令重置用户密码:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '%hsdh#shjKSdf123123';

2、mysql 8 设置大小写不敏感

编辑vim /etc/my.cnf,添加如下行。
在这里插入图片描述
重启服务。
如果不成功,可以做以下操作:
rm -rf /var/lib/mysql 删库,前提是数据库没有重要的数据。
vim /etc/my.cnf 在编辑加入上面的内容。重启服务。

这样的话你之前设置的用户名密码都会重置,所以你需要重新设置,设置步骤如下:

grep 'temporary password' /var/log/mysqld.log  通过该命令查询默认生成的密码。
mysql -uroot -p 通过该命令输入密码登录。
alter user user() identified by '%hsdh#shjKSdf123123'; 输入该命令修改默认密码。

use mysql ;
update user set host='%' where user='root'; 主机可访问用户
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Kagday@123456';修改密码规则,可以用navcat登录
flush privileges; 刷新权限

3、连接10060错误的解决
检查网络:ping id
检查下用户权限: select host,user from user;
检查CentOS防火墙:

firewall-cmd --permanent --zone=public --add-port=3306/tcp
firewall-cmd --reload
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值