2013-04-17 215 views
5

我一直在深入挖掘,嘗試在Google和Google上找到答案......希望有人能夠提供幫助。將Google電子表格連接到具有JDBC的MySQL

我所試圖做的是從谷歌電子表格腳本連接到MySQL在這裏找到:

https://developers.google.com/apps-script/jdbc#reading_from_a_database

首先,我設置服務器以下說明:

https://help.ubuntu.com/community/JDBCAndMySQL

我得到這個錯誤:「無法建立數據庫連接,檢查連接字符串,用戶名和密碼(第2行,文件」代碼「)關閉」

第2行是這樣的:

變種康恩= Jdbc.getConnection( 「JDBC:MySQL的://65.65.65.65:3306/DBNAME」, 「用戶」, 「密碼」)

然後我發現在JDBC中存在一個錯誤,但是這是由於主機名造成的,解決方案是使用IP來代替。我已經使用的IP,所以我不認爲這個bug是

這裏所說:Google Apps Script - JDBC Connection Failed

這裏:What is the root error behind "Failed to establish a database connection. Check connection string, username and password."

證實並詳細位置:https://code.google.com/p/google-apps-script-issues/issues/detail?id=1856

..... ..我不相信我的問題是與上述錯誤。我認爲這是由於mysql只能通過SSH訪問?

如果是這種情況,那麼我認爲我需要幫助修改我的代碼以通過SSH進行連接。

或者,也許我錯了,我需要探索使MySQL公開...但這只是感覺不對。

任何和所有的想法都是值得歡迎的。

+1

你可以檢查你的mysql服務器是否可以通過JDBC/ODBC訪問 - 例如使用telnet連接到IP +端口。 (或其他工具)。 – eddyparkinson

+0

還好,返回:telnet 198.98.76.54 3306 嘗試198.98.76.54 ... 連接到65-65-65-65.static.cloud-ips.com。 轉義字符是'^]'。 _Host '77 -77-7-7-SFBA.hfc.comcastbusiness.net'不允許連接到這個由外部主機關閉的MySQL服務器連接。 – lcm

回答

4

嘆息......解決方案就在我面前。我需要授予Google App Server IP。我確定你可以添加更多的代碼通過ssh進行連接,並且它更安全,但現在情況良好。

這裏有IP地址範圍:

216.239.32.0 - 216.239.63.255 64.233.160.0 - 64.233.191.255 66.249.80.0 - 66.249.95.255 72.14.192.0 - 72.14.255.255 209.85.128.0 - 209.85.255.255 66.102.0.0 - 66.102.15.255 74.125.0.0 - 74.125.255.255 64.18.0.0 - 64.18.15.255 207.126.144.0 - 207.126.159.255 173.194.0.0 - 173.194.255.255

https://developers.google.com/apps-script/jdbc#accessing_local_databases

+0

@Icm感謝您發佈此內容 - 您能更具體地瞭解您如何「授予Google App Server IP」嗎?你需要在哪裏輸入這些IP? – ekta

+0

最有可能位於託管MySQL數據庫的服務器的防火牆中。 – IsmailS

0

我知道這是一個防火牆問題,但如果其他人想要一個免費的JDBC工具,可以將數據導入到您的Google電子表格中,我就可以共享它。您可以在一個工具中創建查詢並刷新您的內容。

你可以在這裏找到它。 Google Spreadsheet JDBC Connector

相關問題