在安装MySQL的过程中,并没有要求设置root账户密码的步骤,导致很多人无法使用root账户登录 这个问题早已有解决方案,笔者在deepin15.7下安装也遇到同样问题,只是做一个简单的记录
解决思路
在安装mysql-server 的时候,其实会自动设置一个账户在系统中,即保存在/etc/mysql/debian.conf 文件中。 另外,MySQL的账户信息其实保存在一个叫mysql 的数据库的user 表中。 这样我们可以先登录默认的账户,然后修改user 表中的root账户信息即可。
具体步骤
查看默认账户信息
cat /etc/mysql/debian.conf
结果如下
[client]
host = localhost
user = debian-sys-maint
password = password
socket = /var/run/mysqld/mysqld.sock
其中[user]和[password]就是默认的账户
登录mysql,修改user表信息
一般安装后数据库会自动启动,如果没有service start mysql 即可
运行以下指令
mysql -u debian-sys-maint -p
use mysql;
update user set authentication_string=password("cus_defined_pass") where user='root';
update user set plugin="mysql_native_password";
flush privileges;
之后重启,service mysql restart 。再使用root:cus_defined_pass 登录即可
参考
deepin mysql5.7安装不显示设定密码的解决 |