ubuntu 安装mysql密码修改

  在ubuntu上(我使用的是mint)和ubuntu基本没区别。安装mysql。

      1sudo apt-get install mysql-server

      2)  sudo apt-get install mysql-client

      3)  sudo apt-get install libmysqlclient-dev

 

     安装完毕后,mysql就是默认启动的,可以通过:

 

 ps -aux | grep mysql 

来查看mysql进程。

 有时候安装1)时并没有弹出提示框来要求输入 root 密码。此时mysql无法登录。我不清楚root密码是什么(反正不是空,我试过了)。

      折腾了许久有两种方式可以解决:

    方式一 进入mysql目录,修改mysqld.cnf文件,加入skip-grant-tables  

  

 cd /etc/mysql/mysql.conf.d/

 vim mysqld.cnf 

找到 [mysqld]这一节,在其中加入:
 skip-grant-tables

wq保存退出,重启mysql服务
sudo service mysql restart

方式二 (我使用的是这一种):

sudo vim /etc/mysql/debian.cnf

此处,一定要加入sudo(除非你是使用的root账户),否则打开看不到内容,vim底部会提示没有权限。

[client]
host     = localhost
user     = debian-sys-maint
password = xxxxxxxxxxxxxxxxxxxx
socket   = /var/run/mysqld/mysqld.sock

可以看到,有用户debian-sys-maint , 下面有密码(很难记忆的字符串)。使用此用户和密码进入到mysql中。

 

use mysql;

// 不要直接使用
update user set authentication_string=password('xiaolu----') where user='root' and host='localhost';

重启mysql服务后,你会发现,看似修改了,然后依然登录不上去(使用 root用户和xiaolu----密码)

此时应当(在mysql中,通过方式一或者方式二进入到mysql):

mysql> select plugin from user where host = 'root';

得到的结果是: auth_socket;

请使用:

mysql>update user set plugin='mysql_native_password';

然后,再去执行修改密码操作。此时成功。

mysql>flush privileges;

mysql> exit 退出mysql sudo service mysql restart; mysql -uroot -p 输入密码。 成功登录。

ps:如果采用方式一(即skip-grant-tables方式,登录成功后,请将 skip-grant-tables注释掉或者删除)

 

  

 

posted @ 2018-12-28 01:26  一粒粟  阅读(516)  评论(0编辑  收藏  举报