MySQL 8是一個廣泛使用的數據庫管理系統,但是很多用戶會被它的一個小問題困擾:它沒有初始密碼。
在MySQL 8中進行安裝時,用戶不需要像以前版本那樣輸入root用戶的密碼。這意味著在安裝后,任何人都可以通過root用戶連接到數據庫。這可能會使你的數據庫的安全性受到威脅。
為了避免這個問題,我們需要為MySQL 8創建一個新的root用戶和密碼。我們可以通過以下步驟完成:
$ sudo systemctl stop mysql $ sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables" $ sudo systemctl start mysql $ mysql -u root mysql mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; mysql>FLUSH PRIVILEGES; mysql>exit $ sudo systemctl restart mysql
首先,我們需要停止MySQL服務,然后在啟動MySQL服務之前設置參數--skip-grant-tables。這將使我們在跳過權限表的情況下以root身份連接到MySQL實例。
然后我們通過mysql -u root mysql命令連接到了MySQL實例,接著通過ALTER USER修改root用戶的密碼。最后,我們需要刷新MySQL權限,以便它可以立即使用新密碼進行身份驗證。
現在我們已經看到了如何為MySQL 8創建一個新的root用戶和密碼,這將提高我們的數據庫的安全性。