[[目錄]]
MySQL 是 Pterodactyl Panel 的核心元件,但如果您以前從未這樣做過,那麼它的設定和使用可能會令人困惑。 這是一個非常基礎的教程,只瀏覽了足夠的表面內容來設定 MySQL 並使用面板運行。 如果您有興趣了解更多信息,互聯網上有一些很棒的教程。
此過程的第一步是登入 MySQL 命令列,我們將在其中執行一些語句來獲取 事情設定。為此,只需執行以下命令並提供您在執行時間設定的 Root MySQL 帳戶的密碼 安裝MySQL。如果您不記得這樣做過,很可能您可以直接按 Enter 鍵,因為沒有設定密碼。
# If using MariaDB (v11.0.0+)
mariadb -u root -p
# If using MySQL
mysql -u root -p
出於安全考慮,並且由於 MySQL 5.7 中的更改,您需要為面板建立一個新使用者。為此,我們想要 首先告訴MySQL使用mysql資料庫,該資料庫儲存了這些資訊。
接下來,我們將建立一個名為 pterodactyl 的用戶,並允許從本地主機登錄,這會阻止任何外部連接
到我們的資料庫。您也可以使用 % 作為通配符或輸入數字 IP。我們也會設定帳戶密碼
到 somePassword 。
# Remember to change 'somePassword' below to be a unique password specific to this account.
CREATE USER 'pterodactyl'@'127.0.0.1' IDENTIFIED BY 'somePassword';
接下來,我們需要為面板建立一個資料庫。在本教程中,我們將命名資料庫 panel ,但您可以
將其替換為您想要的任何名稱。
CREATE DATABASE panel;
最後,我們需要告訴 MySQL 我們的翼手龍使用者應該有權存取面板資料庫。要做到這一點,只需 運行下面的命令。
GRANT ALL PRIVILEGES ON panel.* TO 'pterodactyl'@'127.0.0.1';
:::提示 本節介紹建立有權建立和修改使用者的 MySQL 使用者。這允許面板在給定主機上建立每個伺服器資料庫。 :::
如果您的資料庫與安裝 Panel 或 Daemon 的主機位於不同的主機上,請確保使用執行 Panel 的電腦的 IP 位址。如果您使用 127.0.0.1 並嘗試從外部連接,您將收到連接被拒絕的錯誤。
# You should change the username and password below to something unique.
CREATE USER 'pterodactyluser'@'127.0.0.1' IDENTIFIED BY 'somepassword';
下面的命令將使您新建立的使用者能夠建立其他使用者以及建立和銷毀資料庫。如上所述,請確保 127.0.0.1 與您在上一個命令中使用的 IP 位址相符。
GRANT ALL PRIVILEGES ON *.* TO 'pterodactyluser'@'127.0.0.1' WITH GRANT OPTION;
您可能需要允許外部存取此 MySQL 實例,以便伺服器能夠連接到它。為此,請開啟 my.cnf ,該位置會根據您的作業系統和 MySQL 的安裝方式而有所不同。您可以輸入 find /etc -iname my.cnf 來找到它。
開啟 my.cnf ,將下列文字新增至檔案底部並儲存:
[mysqld]
bind-address=0.0.0.0
重新啟動 MySQL/MariaDB 以套用這些變更。這將覆蓋預設的 MySQL 配置,預設情況下該配置僅接受來自 localhost 的請求。更新此項目將允許所有介面上的連接,從而允許外部連接。確保在防火牆中允許 MySQL 連接埠(預設 3306)。
如果您的資料庫和 Wings 在同一台電腦上並且不需要外部訪問,您也可以使用 docker0 介面 IP 位址而不是 127.0.0.1 。可以透過執行 ip addr | grep docker0 找到此 IP 位址,它可能看起來像 172.x.x.x 。
從 MySQL 8.0.13 / MariaDB 10.11 或更高版本開始, bind_address 現在也接受以逗號分隔的接口列表,以更好地控制它將偵聽哪些接口,哪些不偵聽。