0
点赞
收藏
分享

微信扫一扫

CentOS8安装MySQL8.0.23

悄然丝语 2022-03-23 阅读 53
linuxcentos

一、下载

链接:https://dev.mysql.com/downloads/mysql/

在这里插入图片描述

二、安装

2.1 将下载的mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz上传到服务器,并解压为tar

2.2 解压mysql-8.0.23-linux-glibc2.12-x86_64.tar

解压命令:tar -xvf mysql-8.0.23-linux-glibc2.12-x86_64.tar -C /opt/module/

重命名: mv mysql-8.0.23-linux-glibc2.12-x86_64 mysql8

2.3 进入mysql解压后的目录mysql8,并创建存放mysql日志的目录

cd /opt/module/mysql8/

mkdir data

2.4 配置mysql环境变量

MYSQL_HOME=/opt/module/mysql8/bin
PATH=$PATH:$MYSQL_HOME
export MYSQL_HOME PATH

配置完成后重载:

2.5 创建mysql用户组和mysql用户

2.6 关联myql用户到mysql用户组中

进入到mysql8所在目录,此例中为/opt/module/
在这里插入图片描述

2.7 更改mysql安装文件夹mysql的权限

2.8 安装libaio依赖包

查询是否安装libaio依赖包

如果没安装,可以用下面命令安装:

2.9 初始化mysql命令

在这里插入图片描述
:红色框内的是mysql数据库登录的临时密码,保存备用,每个人安装生成的临时密码不一样。

2.10 启动mysql服务

上面启动mysql服务命令是会报错的,因为没有修改mysql的配置文件,报错内容大致如下:
在这里插入图片描述

2.11 修改Mysql配置文件

在这里插入图片描述
接下来

cp /opt/module/mysql8/support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld

2.12将mysql服务加到系统服务中

2.13 开机自启动

2.14修改my.cnf文件

这里下载的mysql8.0.23版本并没有这个my.cnf文件,因此直接创建的。

[client]
port=3306
socket=/tmp/mysql.sock

[mysqld]
basedir=/opt/module/mysql8
datadir=/opt/module/mysql8/data
socket=/tmp/mysql.sock
user=mysql
port=3306
character_set_server=utf8
# symbolic-links=0
bind-address=0.0.0.0


[mysqld_safe]
log-error=/opt/module/mysql8/data/error.log
pid-file=/opt/module/mysql8/data/mysqld.pid
tmpdir=/tmp

2.14.1授权文件my.cnf

(注意:这一步有待思考?)

 chown mysql:mysql my.cnf
chown mysql my.cnf
 chmod 755 my.cnf

再次启动mysql服务

2.15 启动服务

查看服务:service mysqld status
停止服务:service mysqld stop
启动服务:service mysqld start

2.16 登录mysql

此时出现错误:
./mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory

解决办法:yum install libncurses* 完美解决!

再次登录mysql(注意:这里的密码是初始化生成的临时密码)

2.17 修改初始化用的临时密码

修改初始密码:

刷新:

2.18远程连接错误

2003

Navicat Premium 连接MYSQL8出现10060 “Unkown error”解决办法:
在这里插入图片描述

首先检查是否ping得通,其次再检查如下原因:
原因一:由于mysql 没有开启对外访问权限
原因二:由于防火墙没有对外开放mysql的默认端口3306导致
原因三:由于阿里云或者是腾讯云的安全组规则没有开放3306端口

2059

在这里插入图片描述
原因分析:
其实是mysql8.0版更换了新的身份验证(caching_sha2_password)之前身份验证是(mysql_native_password),Navicat,和SQLyog客户端软件其实是不支持新的身份验证,也就是说新的身份验证找不到(caching_sha2_password),既然知道了是这个问题,那么我们就把登录密码加密规则改回(mysql_native_password),就好啦

1,登录MySQL,使用命令

2,修改加密规则

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

3,更新用户密码

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

4,刷新权限

FLUSH PRIVILEGES; 

5,重置密码

alter user 'root'@'localhost' identified by '你的密码';

1130

在这里插入图片描述
是无法给远程连接的用户权限问题

1.登录mysql

mysql -u root -p

2.创建用户并设置密码

create user ‘root’@’%’ identified with mysql_native_password by ‘123456’;
root:用户名
123456:密码

3,刷新权限

FLUSH PRIVILEGES; 
举报

相关推荐

0 条评论