ubuntu安装mysql8.0之一波三折

本文详细介绍了在Ubuntu20.04上安装MySQL8.0的过程,包括安全配置、创建用户、授权、开启远程连接以及解决常见问题,如密码策略和认证插件错误。同时,提到了如何修改配置文件以允许远程访问,并提供了应对防火墙和密码策略问题的解决方案。
摘要由CSDN通过智能技术生成

安装环境:阿里云服务器+ubuntu20+mysql8

一. 安装mysql,ubuntu默认mysql版本是8.0的

apt install mysql-server

二. 安装后初始配置,命令行执行

mysql_secure_installation

然后会开始一个配置,这个不难就不写了。
ps:出现的问题

  1. 这里有个问题,root设置的密码是无效的【我安装时出现这个问题,不确定是怎么引起的】
  2. 密码策略建议选择0(low),其它的都太坑了

三. 检查安装是否成功,命令行执行

mysql -V

有输出就是成功

四. 配置

创建用户,并且开启远程连接,在mysql命令行执行(mysql -uroot -p进入的命令行里面执行)

1.创建用户,【%】表示所有人可以连接,如果只需要本地访问,可以设置为127.0.0.1

create user '用户名'@'%' identified by '密码';

2.授权

grant all privileges on *.* to '用户名'@'%'  with grant option;

3.刷新

flush privileges;

4.开启mysqld的远程登录,ubuntu的配置在/etc/mysql/mysql.conf.d/mysqld.cnf

vim /etc/mysql/mysql.conf.d/mysqld.cnf
 修改bind-address值为0.0.0.0,或者把bind-address注释掉都是可以的
bind-address            = 0.0.0.0

五. 我碰到的问题

1.配置后用户和授权后还是无法远程登录,确认防火墙端口已开,解决方法见【四. 配置 4小段】

2.修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements,这是是因为密码策略问题,解决如下:

查看密码策略
SHOW VARIABLES LIKE 'validate_password%';
修改密码策略(其实这就是我建议初始配置密码策略选择0(low)的原因)
set global validate_password.policy=0;
刷新
flush privileges;
这个时候去修改密码就没有问题了

3.在完成所有配置后,使用远程mysql工具访问,出现2059 Authentication plugin错误,这是mysql8后才有的问题,解决如下:

查看所有用户和信息,这个时候你会发现出现问题的账号`authentication_string`是会出现乱码和异常的
SELECT `user`, `host`, `authentication_string`, `plugin` FROM mysql.user;
修改密码解密规则【%是代表所有人可以访问】
ALTER USER '用户名'@'%' IDENTIFIED BY '密码' PASSWORD EXPIRE NEVER
更新密码
ALTER USER '用户名'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
刷新
flush privileges;
再连接mysql应该就可以了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值