Mysql

如何在 Google Compute Engine 伺服器上安裝 MySQL?

  • May 11, 2017

我最近一直在嘗試設置一個計算引擎實例,該實例將為我的一個項目託管一個 SQL 數據庫。問題是,每次我設置一個實例並安裝所有東西時,我在Google防火牆中打開的埠仍然關閉,我無法從外部連接到我的 SQL 伺服器。

到目前為止,我已經做了以下事情並且它們導致了失敗:

  1. 使用mysql-server代替mariadb-server
  2. 使用 Debian 8 而不是 Ubuntu 16.04 LTS
  3. 創建允許所有入口流量的實例

所有這些都導致nmap​​埠顯示為closed(以及我在創建實例時允許的埠 80 和 443),並且我本地電腦上的 MySQL 客戶端無法連接到伺服器。

ufw我每次都禁用,所以它不應該引起任何問題。

我最終解決了這個問題 - Zeb 和我正在一起工作。這根本不是 GCP 的問題,它mysql拒絕連接,因為預設情況下在位於的配置中設置bind-address為.127.0.0.1``/etc/mysql/mysql.conf.d/mysqld.cnf

# Instead of skip-networking the default is now to listen only on`
# localhost which is more compatible and is not less secure.
bind-address            = 0.0.0.0 
# 127.0.0.1 previously, changed to allow remote connections

在配置中更改後,mysql正在監聽,0.0.0.0:3306netstat -plutn.

然後,您需要添加一個具有訪問權限的遠端使用者,這篇文章完美地解釋了這一點。

花了很多時間探勘,所以希望這能為遇到這個問題的其他人清除它。

引用自:https://serverfault.com/questions/849409