You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Google Apps Script通过SSH隧道连接MySQL数据库?

Google Apps Script 连接 PythonAnywhere MySQL 数据库方案

核心方案:直接JDBC连接(无需SSH隧道)

既然你的数据库已允许任意IP访问,完全可以跳过SSH隧道,直接使用Google Apps Script内置的JDBC服务连接,关键是要匹配PythonAnywhere MySQL的特定参数格式。

必备连接参数(从PythonAnywhere数据库页面获取)

  • 主机地址:格式为 {你的PythonAnywhere用户名}.mysql.pythonanywhere-services.com
  • 端口:固定为 3306
  • 数据库用户名:格式为 {你的PythonAnywhere用户名}${你的数据库名}(必须包含$符号)
  • 数据库密码:你在PythonAnywhere设置的数据库专属密码(≠SSH密码,除非你特意设为一致)
  • 数据库名:与用户名中的后缀一致,即 {你的PythonAnywhere用户名}${你的数据库名}

完整代码示例

function fetchMySQLData() {
  // 替换为你的实际参数
  const PYAW_USER = "your_pythonanywhere_username";
  const DB_NAME = "your_database_name";
  const DB_PASSWORD = "your_database_password";

  // 构建连接参数
  const host = `${PYAW_USER}.mysql.pythonanywhere-services.com`;
  const port = 3306;
  const fullDbName = `${PYAW_USER}$${DB_NAME}`;
  const jdbcUrl = `jdbc:mysql://${host}:${port}/${fullDbName}?useSSL=true&requireSSL=false`;

  try {
    // 建立数据库连接
    const conn = Jdbc.getConnection(jdbcUrl, fullDbName, DB_PASSWORD);
    Logger.log("数据库连接成功");

    // 执行查询(替换为你的SQL语句)
    const stmt = conn.createStatement();
    const queryResult = stmt.executeQuery("SELECT * FROM your_target_table LIMIT 10");

    // 解析并打印结果
    const colCount = queryResult.getMetaData().getColumnCount();
    while (queryResult.next()) {
      let rowStr = "";
      for (let i = 1; i <= colCount; i++) {
        rowStr += `${queryResult.getMetaData().getColumnName(i)}: ${queryResult.getString(i)}, `;
      }
      Logger.log(rowStr.slice(0, -2)); // 移除末尾多余的逗号和空格
    }

    // 关闭资源(必须执行,避免连接泄漏)
    queryResult.close();
    stmt.close();
    conn.close();
  } catch (err) {
    Logger.log("操作失败: " + err.message);
  }
}

关键注意事项

  • 参数格式错误是常见坑:PythonAnywhere的MySQL用户名和数据库名必须包含$分隔符,不要省略或替换为其他字符
  • SSL参数配置:添加useSSL=true&requireSSL=false是为了兼容Google JDBC驱动与PythonAnywhere MySQL的SSL策略,避免连接被拒绝
  • 权限验证:确保你在PythonAnywhere的数据库页面已开启"Allow external access"选项(你已确认无IP限制,此步骤已完成)
  • 测试方式:运行脚本后,查看Google Apps Script编辑器的「日志」(视图 > 日志)验证连接和查询结果

内容的提问来源于stack exchange,提问作者Nacho

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 23:47:13