Ubuntu18.04 下安装MySQL密码问题

版权声明:本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。 https://blog.csdn.net/riba2534/article/details/85249415

Ubuntu18.04 下安装MySQL密码问题

在之前的ubuntu版本中,我们通过apt install mysql-server mysql-client这样的方式来安装mysql的时候,会提醒我们设置root用户密码,但是在18.04中不再提示了,所以我们就不知道root密码是啥,导致接下来要做的事情不能继续,经过我的搜索,找到了两个解决办法,任选其一:

如果你的MySQL有问题,建议先卸载:

apt autoremove mysql-client mysql-server --purge -y

然后再安装:

apt install mysql-client mysql-server -y

这个时候在系统的root账户下,直接输入:mysql就可以进入,但是在普通用户下输入mysql -u root -p后就不能进入,这时参考以下的两个解决办法,以下两种办法都是在系统的普通用户下进行的。

方法一

在MySQL安装的时候,系统自动生成了一个配置文件,里面有一个初始的账户和密码:

sudo cat /etc/mysql/debian.cnf

然后这个文件里面有默认的用户名和密码,用这个登录系统:

mysql -u 用户名 -p 

进入MySQL命令提示符下,输入:

update mysql.user set authentication_string=PASSWORD("密码") where User="root";
# 这个操作是在生成一个用户,但是有一个wraning

解决warning:

update mysql.user set plugin="mysql_native_password";

接着,刷新和退出:

flush privileges;
exit;

再重启一下MySQL服务,然后就可以正常的mysql -u root -p登录了

方法二

首先在系统的shell中输入:

扫描二维码关注公众号,回复: 4887596 查看本文章
sudo mysql_secure_installation

根据提示,进行初始化密码设置。

在系统普通账户下,直接输入sudo mysql,进入MySQL命令提示符,然后输入:

SELECT user,authentication_string,plugin,host FROM mysql.user;

这时候我们看到:

Output
+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             |                                           | auth_socket           | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)

登录的方式不是密码,而是auth_socket方式进行登录.

我们修改这个方式即可,继续在MySQL的命令行输入:

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

然后刷新:

FLUSH PRIVILEGES;

这时,也可以正常登录了。

参考:How To Install MySQL on Ubuntu 18.04

猜你喜欢

转载自blog.csdn.net/riba2534/article/details/85249415