Published on

ubuntu mysql踩坑指南

Authors
  • avatar
    Name
    Lif
    Twitter

今天再ubuntu装了下mysql,

sudo apt-get -y install mysql-server

然后登录

$ mysql -u root -p

提示:

Enter password: 

然后我写下root的密码,提示

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

反复尝试后,发现要输入的是mysql密码……但是在安装的时候,压根没提示要自己写密码啊……这时候,只能查看配置文件里的密码了。 进入到etc/mysql 目录下,查看debian.cnf文件

# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host     = localhost
user     = debian-sys-maint
password = rAb1DTDOndXMieKP
socket   = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host     = localhost
user     = debian-sys-maint
password = rAb1DTDOndXMieKP
socket   = /var/run/mysqld/mysqld.sock

然后使用自带的账号密码登录……

mysql -u debian-sys-maint -p

登录完成后就可以修改账号密码了

update mysql.user set authentication_string=password('root') where user='root' and Host ='localhost';
update user set plugin="mysql_native_password";  
flush privileges;   #更新操作权限
quit; #关闭sql控制台

重启mysql服务

sudo service mysql restart

再次使用

 mysql -u root -p

就可以了!