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

之前自己安装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用户已经可以登录,权限,密码也已经设置成功。

原创文章 1 获赞 1 访问量 41

猜你喜欢

转载自blog.csdn.net/weixin_42550666/article/details/106104249