1、如果知道初始面密碼則直接輸入如下命令 後輸入密碼就可以直接登錄mysql了
sudo mysql -u root -p
2、如果忘記了密碼,則應該首先停止mysql服務
service mysql stop
3、修改mysqld.cnf中的配置,使用命令
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
在[mysqld]下添加配置語句:skip-grant-tables
修改後樣式如下:
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
skip-grant-tables
4、再次登錄mysql,輸入mysql -u root -p,因爲已經忽略密碼校驗,這時候密碼隨便輸入就可以登錄mysql,因此直接回車就可以登陸了
5、登錄後,執行以下語句,注意將mypassword替換爲自己的密碼
update mysql.user set authentication_string=PASSWORD('mypassword'), plugin='mysql_native_password' where user='root';
flush privileges;
\q
6、再次打開mysqld.cnf文件,輸入
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
刪除上面添加的配置:skip-grant-tables
7、重啓mysql,執行如下命令
sudo service mysql restart
8、最後使用新設置的密令再次登錄就可以了