一、mysqld–initialize-insecure是什麼?
mysqld–initialize-insecure是MySQL 5.7.6版本新增的一個選項,可以在首次安裝MySQL時創建一個未加密的超級用戶賬號,以方便用戶進行配置。之前的MySQL版本安裝時需要手動創建超級用戶賬號,現在通過指定這個選項,可以自動創建一個未加密的賬號,方便用戶配置。
下面是MySQL官網對mysqld–initialize-insecure的定義:
--initialize-insecure Perform the server installation and initialize the data directory, but without setting up a password for the superuser account. This enables you to start the MySQL server, and then set the root password with the instructions from the next section.
二、mysqld–initialize-insecure的使用方法
在安裝MySQL時,可通過指定–initialize-insecure選項來創建未加密的超級用戶賬號。
$ sudo mysqld --initialize-insecure
執行成功後,MySQL會在默認的數據目錄下創建一個未加密的超級用戶賬號,賬號名為root。
三、mysqld–initialize-insecure的注意事項
1、–initialize-insecure選項只在首次安裝MySQL時有效,如果MySQL已經安裝過了,則無法使用此選項。
2、使用–initialize-insecure選項創建的超級用戶賬號是未加密的,不安全,用戶在使用時需要及時設置密碼。
3、如果已經使用了–initialize-insecure選項創建了超級用戶賬號,又需要重新創建加密的超級用戶賬號,可以使用–initialize選項重新安裝MySQL,並重新設置密碼。
4、–initialize-insecure選項在創建超級用戶賬號時,不會進行其他額外的配置,例如創建其他用戶、設置授權、啟用日誌等,用戶需自行進行相關配置。
四、mysqld–initialize-insecure的代碼示例
下面是在Ubuntu 18.04操作系統下使用mysqld–initialize-insecure創建未加密的超級用戶賬號的代碼示例:
$ sudo apt update $ sudo apt install mysql-server $ sudo systemctl start mysql $ sudo systemctl status mysql $ sudo mysqld --initialize-insecure $ sudo systemctl restart mysql $ mysql -u root mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword'; mysql> exit
執行成功後,用戶就可以使用創建的超級用戶賬號登錄MySQL,並且可以通過ALTER USER語句來設置賬號的密碼。
五、結語
mysqld–initialize-insecure選項是MySQL 5.7.6版本新增的一個選項,可以在首次安裝MySQL時創建一個未加密的超級用戶賬號,以方便用戶進行配置。使用時需要注意安全問題並及時設置賬號密碼。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/198187.html