1. 程式人生 > >(轉)MySQL - 在Ubuntu下密碼初始化

(轉)MySQL - 在Ubuntu下密碼初始化

方法一:

1. 開啟/etc/mysql/debian.cnf檔案,在這個檔案中有系統預設給我們分配的使用者名稱和密碼,通過這個密碼就可以直接對MySQL進行操作了。 2. 以debian-sys-maint為使用者名稱登入,密碼就是debian.cnf裡那個。使用mysql -u debian-sys-maint -p 進行登入。 3. 進入mysql之後修改MySQL的密碼,具體的操作如下用命令:set password for 'root'@'localhost' = password('yourpass');當修改之後就可應正常對MySQL進行操作了。

from:https://www.cnblogs.com/jpfss/p/7932019.html

方法二:

安全模式登入MySQL

$ sudo /etc/init.d/mysql stop

-------------------------------------
[sudo] wl 的密碼:
[ ok ] Stopping mysql (via systemctl): mysql.service.

$ sudo /usr/bin/mysqld_safe --skip-grant-tables --skip-networking &

輸入第一行終止MySQL執行,成功,會提示下面兩行;輸入第四行,成功,沒有任何報錯則可以另外開啟一個終端視窗進行下一步操作;但是一般會報錯,比如提示mysqld_safe Directory ‘/var/run/mysqld’ for UNIX socket file don’t exists

因此我們嘗試輸入以下程式碼

$ sudo mkdir -p /var/run/mysqld

$ sudo chown mysql:mysql /var/run/mysqld

最後再次輸入:

sudo /usr/bin/mysqld_safe --skip-grant-tables --skip-networking &

 

到了這裡不在提示錯誤,可以開啟另一個終端埠了,嘗試無密碼登入MySQL。

mysql -u root

 

到這裡應該可以進入MySQL了,繼續操作

> use mysql;

> update user set authentication_string=PASSWORD("這裡輸入你要改的密碼") where User='root'; #更改密碼
> update user set plugin="mysql_native_password"; #如果沒這一行可能也會報一個錯誤,因此需要執行這一行

> flush privileges; #更新所有操作許可權
> quit;

 

4、使用修改的密碼登入MySQL

經過上面一系列的操作,應該可以正常使用你更改的密碼登入了。

> sudo /etc/init.d/mysql stop
> sudo /etc/init.d/mysql start # reset mysql

> mysql -u root -p

 

第一行先終止資料庫執行,第二行重啟資料庫服務,第三行root使用者登入。

from https://blog.csdn.net/xy707707/article/details/80820189

 

set password for 'root'@'localhost' = password('linhuang')