使用/ JDBC将Google Spreadsheets连接到MySQL

时间:2013-04-17 01:33:03

标签: javascript mysql jdbc google-apps-script google-sheets

我一直在努力寻找答案,并在Google上找到答案...希望有人可以提供帮助。

我要做的是从这里的Google Spreadsheet脚本连接到MySQL:

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

首先,我按照以下说明设置服务器:

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

我收到此错误:“无法建立数据库连接。检查连接字符串,用户名和密码。(第2行,文件”代码“)关闭”

第2行看起来像这样:

var conn = Jdbc.getConnection(“jdbc:mysql://65.65.65.65:3306 / dbname”,“user”,“password”)

然后我发现JDBC中存在一个错误,但它是由Hostnames引起的,解决方案是使用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

.......现在我不相信我的问题是上面提到的bug。我认为它是由于mysql只能通过SSH访问?

如果是这种情况,那么我相信我需要帮助的是修改我的代码以通过SSH连接。

或许我错了,我需要探索将mysql公开......但这感觉不对。

任何和所有的想法都非常受欢迎。

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:0)

我知道这是一个防火墙问题,但我正在分享以防其他人想要一个能够将数据输入您的Google电子表格的免费JDBC工具。您可以在一个工具中创建查询并刷新内容。

你可以在这里找到它。 Google Spreadsheet JDBC Connector