ubuntu安裝mysql Mysql ERROR 1045 (28000): Access denied for user root@localhost詳細解決辦法

使用舊的MySQL的時候通常賬號為root密碼為空就可以登錄成功了,但最近在ubuntu伺服器上安裝新的MySQL後,像以前一樣mysql -uroot -p,想要使用MySQL的時候會報ERROR 1045(28000),下面解釋下原因,以及我的解決過程。

再說一下:我CSDN是:lynnlinlin,所以下面的圖上的水印也是我CSDN博客的水印啦。

我的MySQL版本為5.5.50,系統為ubuntu

原因

Mysql 出處於安全考慮,root密碼已經不為空,會隨機生成root密碼,可以使用debian.cnf文件中提供的用戶名和密碼修改root密碼。

解決過程

安裝MySQL:

$ sudo apt-get update

安裝MySQL

$ sudo apt-get install mysql-server mysql-client

像舊的MySQL使用mysql -uroot -p會報錯:

找出MySQL的安裝路徑:

$ whereis mysql

在進入MySQL安裝路徑,通過debian.cnf文件查看原始的隨機密碼:

可以看到賬號名為debian-sys-maint,密碼為sLRAz4tzOMztUhd9,通過該賬號密碼登錄:

$mysql -udebian-sys-maint -psLRAz4tzOMztUhd9

後面進行改密碼:

mysql> use mysql;

查看root許可權,有全部許可權:

mysql> select * from mysql.user where user=』root』G;

查看debian-sys-maint許可權也有全部許可權:

mysql> select * from mysql.user where user=』debian-sys-maint』G;

更改root賬號密碼:

mysql> UPDATE user SET Password = Password(『newpass』) WHERE user = 『root』;

刪除debian-sys-maint賬號

msql> DELETE FROM USER WHERE user=』debian-sys-maint』;

刷新MySQL的系統許可權相關表:

mysql> flush privileges;


推薦閱讀:

現代科技沃土滋養下的數據黑市和網路犯罪
小議實名制
汽車「無鑰匙進入系統」遭破解,身邊的安全不容忽視
HTTPS那些事之HTTPS原理
軟體安全live第六期:軟體安全-格式化字元串攻擊

TAG:網路安全 | MySQL | Web安全測試 |