Ubuntu解决mysql安装之后未设置密码无法登录的问题

1 篇文章 0 订阅
1 篇文章 0 订阅

之前自己安装mysql遇到过非常多的坑,每次重装老是要搜索半天还不一定能解决问题,特此记录下!

本文针对mysql-server8.0以上的版本!8.0以上!8.0以上!

关于网上有许多解决新装mysqlroot用户登录不进去的问题,但是大多都是之前发的老帖或者老版本的mysql,自己试了好多已经解决不了问题。

1.安装过程我就不详细记录了,完成之后登录mysql出现如下问题:

在这里插入图片描述
access denied for user ‘root’@'localhost 用户访问被拒绝

2.因为在安装过程中没有提示用户设置密码,所以需要使用mysql自动创建的用户进行登录:

查看debian用户名及密码:

kangel@tm1701:~$ sudo apt cat /etc/mysql/debian.cnf

在这里插入图片描述
可以看到,有一个名为 debian-sys-maint 的用户,password就是它对应的密码,然后我们使用这个用户密码进行登录:

kangel@tm1701:~$ mysql -u debian-sys-maint -p

在这里插入图片描述
ok,mysql登录进来了,接下来就要修改root的密码及权限。

3.修改root用户

首先切换到mysql数据库,查看user表中root用户的权限及密码:

mysql> use mysql
mysql> select Host,user,authentication_string,plugin from user;

查看用户的权限,是否是mysql_native_password,如果不是,则将auth_sock改为mysql_native_password。

mysql> ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘你的密码’;

在这里插入图片描述
OK,修改权限,密码一步到位。
网上有很多帖子修改密码使用 _update user set password=password(‘你的密码’) where user=‘root’ and host=‘localhost’;_这种的,因为mysql 8.0+ 版本 password 字段更改了, 采用原来的 password = password(“XXX”) 语句会报语法错误,所以要使用ALTER语句进行修改

4.quit退出,重新登录

在这里插入图片描述
在这里插入图片描述
可以看到root用户已经可以登录,权限,密码也已经设置成功。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值