前段時間在服務器上安裝MySQL,但是安裝過程中並沒有像教程裏說的會跳出提示設置密碼的文段。它自己就安裝好了。安裝完成後用mysql -uroot -p
登錄,輸了很多次密碼也沒登錄成功,於是在網上查了很多提問,我在這裏歸納一下兩種可行的方法:
一、修改mysql服務器的配置文件,跳過登錄驗證
-
首先找到mysql的配置文件,我電腦上的路徑是
/etc/mysql/my.cnf
,然後在[mysqld]的部分添加一行信息skip-grant-tables
(沒有[mysqld]
這個部分的話可以自己加上去,[mysqld]
是服務器啓動加載的配置部分):[mysqld] port=3306 datadir=/mysqldata01/data pid-file=/mysqldata01/mysql57.pid socket=/mysqldata01/mysql57.sock log-error=/mysqldata01/mysql57-err.log user=mysql skip-grant-tables # 添加的信息
-
保存成功後就可以直接用
mysql -uroot -p
無密碼登錄了,登錄後修改密碼的方法跟正常密碼登錄想修改密碼的方法一樣:use mysql; update user set authentication_string=PASSWORD("yourpassword") where user='root'; flush privileges;
進入mysql數據庫然後修改user數據表的authentication_string字段,5.7版本的MySQL沒有了password字段,所以網上有些方法寫的是更改password字段,這個是以前版本的,可以提前用desc user看看你當前版本的MySQL是password還是authentication_string