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

本地连接Heroku托管MySQL报错:--require_secure_transport=ON时禁止不安全传输

解决Heroku MySQL连接错误:Connections using insecure transport are prohibited while --require_secure_transport=ON

这个错误的核心原因是Heroku托管的MySQL实例强制要求使用加密(SSL)连接,而当前数据库配置未启用SSL传输,导致连接被拒绝。

修复步骤:修改数据库配置,启用SSL连接

在mysql2配置的connection对象中添加SSL相关配置即可解决问题,具体修改如下:

require('dotenv/config');
const path = require('path');

module.exports = {
  client: 'mysql2',
  connection: {
    host: process.env.DB_HOST,
    user: process.env.DB_USER,
    password: process.env.DB_PASSWORD,
    database: process.env.DB_NAME,
    port: process.env.DB_PORT, // 建议从环境变量读取端口,避免硬编码
    // 添加SSL配置
    ssl: {
      rejectUnauthorized: false
    }
  },
  migrations: {
    directory: path.resolve(__dirname, 'src', 'database', 'migrations'),
  },
  seeds: {
    directory: path.resolve(__dirname, 'src', 'database', 'seeds'),
  },
  useNullAsDefault: true,
};

补充说明:

  • rejectUnauthorized: false:Heroku的MySQL使用公共CA签发的证书,本地连接时可能出现证书验证问题,该配置可绕过本地校验,同时保持加密连接。
  • 确保环境变量DB_HOST、DB_USER、DB_PASSWORD、DB_NAME均正确填写Heroku提供的数据库信息(可通过heroku config命令查看)。

内容的提问来源于stack exchange,提问作者Maicon Luiz Anschau

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 01:17:05