解决Ubuntu安装Mysql时没有提示设置密码的问题

Ubuntu安装Mysql时没有提示设置密码问题

注:mysql版本不一样可能效果不一致,mysql 8.0.21请参照后面的方法。

经过了好几个小时的查找资料,终于设置好了。

参考了解决Ubuntu安装Mysql时为设置密码

1. 打开/etc/mysql/debian.cnf文件,在这个文件中有系统默认给我们分配的用户名和密码,通过这个密码就可以直接对MySQL进行操作了。

$sudo vim /etc/mysql/debian.cnf

可以看到里面有:

user = debian-sys-maint

password = qEjxHklFPe8RxZik

其中每个人的user应该都是一样的,password不同而以。

2. 以debian-sys-maint为用户名登录mysql

$ mysql -u debian-sys-maint -p
然后输入密码,密码就上面的说的,我的是:qEjxHklFPe8RxZik 

这里要特别注意密码的大小写!!!

3. 在mysql shell里执行语句:

mysql> update mysql.user set authentication_string=password('new password') where user='root' and Host ='localhost';
mysql> update user set plugin="mysql_native_password"; 

mysql> flush privileges;
mysql> quit;

其中new password为你设置的新密码。

注意每条语句后面要有分号结尾!!!

4. 重启mysql服务sudo service mysql restart,之后就可以以root用户登陆了,密码就是你刚才设置的"new password"。

 

mysql 8.0.21的看这里

同样,参照上面步骤1的方法

$sudo vim /etc/mysql/debian.cnf

先查看默认账号和密码,然后使用该账号密码登陆

$ mysql -u debian-sys-maint -p
$ Enter password: 输入密码 

成功登陆后执行如下语句:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
mysql> exit;

然后就可以使用root账号登陆了。

如果出现如下报错,

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

可以如下方式进行登陆,加了一个sudo

sudo mysql -uroot -p

解决使用sudo才可以登陆的方法

首先使用默认账号登陆

$ mysql -u debian-sys-maint -p
$ Enter password: 输入密码 

登陆成功后:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '你的密码';
mysql> exit;

完成。

 

 

 

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值