Tan*_*edi 1 jdbc database-connectivity amazon-rds google-apps-script
我正在尝试将 AWS RDS 连接到 Google Sheets,但我得到的只是
无法建立数据库连接。检查连接字符串、用户名和密码。
我已经尝试了跟踪器中找到的方法,即“使用端点主机地址的IP”,但仍然出现相同的错误,
我有:
设置 [RDS 设置 - 公共可访问性 - 开启] 并验证端点和访问详细信息适用于所有其他查看器(Navicat、Adminer 等)
在“RDS VPC-安全组”入站和出站中添加了所有需要的 google IP 白名单(请参阅: https: //developers.google.com/apps-script/guides/jdbc)。
这是我正在使用的代码:
var connectionName = 'x.x.x.x:3306'
var user = 'admin';
var userPwd = 'pass';
var db = 'dbname';
var dbUrl = 'jdbc:mysql://' + connectionName + '/' + db;
function readFromTable11() {
var conn = Jdbc.getConnection(dbUrl, user, userPwd); //error here
Logger.log(conn);
var start = new Date();
var stmt = conn.createStatement();
stmt.setMaxRows(1000);
var results = stmt.executeQuery('SELECT * FROM items');
var numCols = results.getMetaData().getColumnCount();
while (results.next()) {
var rowString = '';
for (var col = 0; col < numCols; col++) {
rowString += results.getString(col + 1) + '\t';
}
Logger.log(rowString);
}
results.close();
stmt.close();
var end = new Date();
Logger.log('Time elapsed: %sms', end - start);
}
Run Code Online (Sandbox Code Playgroud)
我已经搜遍了网络,但仍然无法让它工作。
好吧,事实证明 Google Scripts 仅支持 MySql v5.5.x 版本,因此上面的操作会导致问题是“数据库连接失败”。因此,为了确保成功连接,只需在 RDS 中进行与上述相同的设置,但选择 MySQL Engine 版本为 5.5.x 并使用此 - (toolbox.googleapps.com/apps/dig) 查找您的端点 IP 地址以查找可能的 DNS 问题。我会更新更多。
| 归档时间: |
|
| 查看次数: |
1575 次 |
| 最近记录: |