在Ubuntu下密碼初始化
阿新 • • 發佈:2019-01-03
方法一:
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進行操作了。
方法二:
安全模式登入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使用者登入。
set password for 'root'@'localhost' = password('linhuang')