CentOS7离线安装Mysql8.0

首先去mysql官网下载mysql的离线rpm安装包(https://downloads.mysql.com/archives/community/)

Mysql8.0.2离线rpm包下载地址:点击下载

上传到/data/rpm/mysql8.0目录下

因为Mysql依赖于mariadb,所以我们先用rpm -qa | grep mariadb 查找mariadb的包信息

 

然后使用rpm -e --nodeps mariadb-libs-5.5.65-1.el7.x86_64去除此依赖

接着按照以下顺序安装

rpm -ivh net-tools-2.0-0.25.20131004git.el7.x86_64.rpm
rpm -ivh mysql-community-common-8.0.20-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.20-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.0.20-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.20-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.20-1.el7.x86_64.rpm

安装完成后,执行systemctl start mysqld.service来运行Mysql

当登录的时候发现需要输入密码

 

百度得知,mysql7.4以后的版本安装后都会有一个随机密码,可以用 grep 'temporary password' /var/log/mysqld.log 来查看安装时的默认密码(此次是triBcK0/NP;o)

 

输入密码,登录成功

 

我们可以使用 ALTER USER 'root'@'localhost' IDENTIFIED BY 'Test!23$';来修改登录密码

为了能在主机外管理工具连接上mysql方便管理,我们需要让mysql的3306端口可以让外面访问到

执行以下命令

iptables -I INPUT 1 -p tcp --dport 3306 -j ACCEPT
firewall-cmd --zone=public --add-port=3306/tcp --permanent

在mysql中建立一个用户,用来进行远程登录

CREATE USER 'yuancheng'@'%' IDENTIFIED BY 'Test12#$';
GRANT ALL PRIVILEGES ON *.* TO 'yuancheng'@'%' WITH GRANT OPTION;
flush privileges;

在本地使用数据库连接工具测试连接

 

 至此,我们完成了在Centos下离线安装Mysql并实现了通过远程管理工具连接。

 ASP.NET CORE如果是从低版本(5.7)连接到8.0的Mysql,会提示密码加密方式不正确( One or more errors occurred. (Authentication method 'caching_sha2_password' failed. Either use a secure connection, specify the server's RSA public key with ServerRSAPublicKeyFile, or set AllowPublicKeyRetrieval=True.))

解决方法:

1、在/etc/my.cnf中注释 default-authentication-plugin=mysql_native_password

2、mysql -h127.0.0.1 -P6033 -uroot -p 输入密码连接到mysql,然后输入

ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY '你的密码';

FLUSH PRIVILEGES;

3、 重启MySQL服务

posted @ 2020-07-18 10:18  踏平扶桑  阅读(2915)  评论(0编辑  收藏  举报