IntelliJ IDEA 2025.1 Help

无法连接到数据库

第 1 步. 检查您的网络设置

数据库可以本地工作、在服务器上工作或在云端工作。 对于服务器和云数据库,您需要网络连接。 要验证连接是否可用,请使用 pingtelnet 命令。

使用 ping 命令,您可以确保目标计算机可以从源计算机访问。 打开命令行并输入以下命令: ping -a <host_IP> ,其中 -a 是一个命令选项,用于将地址解析为主机名(如果可能的话)。 如果您在 ping 命令中使用主机名,则主机名将解析为 IP 地址。 例如, ping -a example.com 解析为 PING example.com (93.184.216.34)

ping -a <host_IP>
使用 ping 命令测试连接

使用 telnet 命令,您可以测试与远程计算机的连接并发出命令。 如果您将端口作为 telnet 命令的参数指定,您可以测试与给定端口上远程主机的连接性。 如果连接成功,您会看到消息: Connected to <host_IP>

telnet <host_IP> <port_number>
使用 telnet 命令测试连接

第 2 步. 检查您的连接属性

每个数据库(MySQL、PostgreSQL、Oracle或任何其他供应商)都有自己的连接设置。 大多数数据库包括以下连接设置:

  • 主持人 :存储数据库的计算机或其他设备的主机名。 它可以是一个 IP 地址 127.0.0.1 或一个域名 localhost

  • 数据库 :您想要连接的数据库名称。 您可以在数据库服务器的设置中找到数据库名称,或者可以询问您的数据库管理员。 在某些情况下,可以在数据库命令行中运行查询以查看所有可用数据库的名称。 例如,在 MySQL 您可以运行 SHOW DATABASES;

    SHOW DATABASES 查询
  • 用户 :具有足够权限执行数据库操作的用户的名称。 在数据库命令行中运行查询以查看所有可用数据库的名称。 例如,在 MySQL 您可以运行 SHOW GRANTS;

    SHOW GRANTS 查询
  • 密码 :用户的密码。

  • 端口 :用于标识主机之间连接点的编号。 主机使用端口号来确定必须与哪个应用程序、服务或进程建立连接。 不同的数据库供应商为其数据库使用不同的端口。 以下列表是默认端口号列表。

    供应商

    默认端口

    Amazon Redshift

    5439

    Apache Derby

    1527

    Apache Cassandra

    9042

    Apache Hive

    10000(Hive 服务器2)或 9083(Hive Metastore)

    Azure SQL 数据库

    1433

    ClickHouse

    8123

    Couchbase 查询 查询服务

    11210

    Exasol

    8563

    Greenplum

    5432

    H2

    8082

    HSQLDB

    9001

    IBM Db2 LUW

    50000

    MariaDB

    3306

    Microsoft SQL 服务器

    1433 (TCP),1434 (UDP可能需要)

    MySQL

    3306

    Oracle

    1521

    PostgreSQL

    5432

    Snowflake

    443

    SQLite

    Sybase ASE

    5000

    Vertica

    5433

请验证所选数据源的连接设置是否正确。 有关创建和更改数据源的更多信息,请参阅 创建数据源会话

第 3 步. 检查驱动程序版本

有了 JDBC 驱动程序,您就可以与 IntelliJ IDEA 中的数据库管理系统 (DBMS) 进行交互。 每个 DBMS 需要自己的 JDBC driver。 确保驱动程序版本和 DBMS 版本彼此兼容。

从 IntelliJ IDEA,您可以下载所有受支持厂商的驱动程序。 您可以在 驱动程序 列表中查看支持供应商的完整列表。 或者,您可以将自己的驱动程序添加到现有供应商,或为不在 驱动程序 列表上的供应商创建新的驱动程序条目。

要打开 驱动程序 列表,请在 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击 数据源属性 图标 数据源属性图标 或按 Ctrl+Alt+Shift+S

下载驱动程序并选择驱动程序版本

要从 JetBrains FTP 服务器下载驱动程序,请从 驱动程序 列表中选择供应商,并点击 下载版本 <version_number> 链接 驱动文件 窗格中的链接。

要更改驱动程序版本,请点击 版本 <version_number> 链接在 驱动文件 面板中并选择您需要的驱动程序版本。

驱动程序列表和驱动程序设置

    使用用户驱动文件

    1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

      • 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击 数据源属性 图标 数据源属性图标

      • 按下 Ctrl+Alt+Shift+S

    2. 数据源和驱动程序 对话框中,确保您位于 驱动程序 选项卡。

    3. 数据源和驱动程序 对话框中,点击 添加 图标("添加"图标)。

    4. 名称 字段中,输入驱动程序的名称。

    5. 驱动程序文件 面板中,点击 添加 图标("添加"图标 )并选择 自定义JAR…

    6. 请导航到 JDBC 驱动程序的 JAR 文件,选择它,并点击 确定

    7. 字段中,指定您想要用于驱动程序的值。

    8. 点击 应用(A)

    9. 要从驱动程序对话框中创建数据源,请点击 创建数据源

    为现有数据源配置 JDBC 驱动程序

    您可以向现有驱动程序添加库,或完全替换驱动程序。

    为了正常工作,一些 JDBC 驱动程序需要与驱动程序一同提供库文件的路径。 有关库路径的更多信息,请参阅 用户驱动程序的库路径

    1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

      • 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击 数据源属性 图标 数据源属性图标

      • 按下 Ctrl+Alt+Shift+S

    2. 点击数据源设置中的 驱动程序 链接并选择 转到驱动程序

    3. 点击所提供的驱动程序条目,然后点击 移除"移除"按钮)。

      要撤销更改,点击窗口右下角的 回滚更改 图标(“回滚更改”图标)。

    4. 驱动程序文件 面板中,点击 添加 图标("添加"图标 )并选择 自定义JAR…

    5. 在文件浏览器中,导航到 JDBC 驱动的 JAR 文件,选择它,然后点击 确定

    6. 字段中,指定您想要用于驱动程序的值。

      驱动程序类是 JDBC 驱动程序的驱动程序特定主类。 对于您使用的 JDBC 驱动程序的适当驱动程序类,请参考驱动程序的文档。

    7. 如果您的自定义驱动程序需要额外的属性,请转到对话框中的 高级 选项卡。 在属性窗格中,在 名称 列的最后一行中输入额外属性的名称和值,其中显示了 <user defined> 和 <value>。

    8. 点击 应用(A)

    第 4 步. (仅限 Windows)检查临时目录路径是否包含非 ASCII 字符

    目前,临时目录路径不应包含非 ASCII 字符。 如果包含,您可以通过以下方法之一解决问题:

    • 打开 Windows 控制面板并导航到 设置 | 时间与语言 | 语言 | 管理语言设置 或 Windows 10 的 设置 | 时间和语言 | 语言和区域 | 管理语言设置。 在 非 Unicode 程序的语言 部分,将语言更改为您的本地语言。

    • 为了让 Java 使用仅包含 ASCII 字符的另一个临时目录路径,请在 IDE 中转到 帮助 | 编辑自定义 VM 选项 并将 -Djava.io.tmpdir=<ASCII_characters_only_temp_directory_path> 添加到 IDEA.vmoptions 文件中。

    第 5 步. 检查是否需要使用 SSH 或 SSL 连接

    为了使与数据库的连接更加安全,一些服务需要使用 SSH 或 SSL。

    SSL

    以下过程描述了适合大多数数据库的 SSL 配置。 对于某些数据库,您需要采用另一种方法才能成功连接。 您可以在 DataGrip 文档中看到 CassandraHeroku Postgres 的配置示例。

    连接到支持 SSL 的数据库

    1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

      • 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击 数据源属性 图标 数据源属性图标

      • 按下 Ctrl+Alt+Shift+S

    2. 数据源 选项卡上,选择您要修改的数据源。

    3. 点击 SSH/SSL 选项卡并选择 使用SSL(L) 复选框。

    4. CA 文件(A) 字段中,导航到 CA 证书文件(例如, mssql.pem )。

    5. 您可以将证书文件字段留空,并使用信任库从中包含的证书中获取所需的证书。 要实现这一点,勾选 使用信任库 复选框并选择您要使用的 truststore。

      • IDE :使用 IDE 接受的证书。 您可以在 工具 | 服务器证书 中添加新的已接受证书。

      • JAVA :使用 JAVA 信任库证书。

      • 系统: 使用系统信任库证书。

    6. 客户端证书文件 字段中,导航至客户端证书文件(例如, client-cert.pem )。

    7. 客户端密钥文件(K) 字段中,导航到客户端密钥文件(例如, client-key.pem )。

    8. 模式 列表中选择验证模式:

      需要

      验证服务器是否识别客户端证书(如果提供了证书)。

      验证CA

      • 验证服务器是否识别客户端证书(如果提供了证书)。

      • 通过检查一直到存储在客户端上的根证书的证书链来验证服务器。

      全面验证

      • 验证服务器是否识别客户端证书(如果提供了证书)。

      • 通过检查一直到存储在客户端上的根证书的证书链来验证服务器。

      • 验证服务器主机以确保其与存储在服务器证书中的名称匹配。

      如果任何一个证书无法验证,SSL 连接将失败。

    9. 为了确保数据源连接成功,请点击 测试连接

      连接到支持 SSL 的数据库

    禁用与数据库的 SSL 连接

    1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

      • 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击 数据源属性 图标 数据源属性图标

      • 按下 Ctrl+Alt+Shift+S

    2. 数据源 选项卡上,选择您要修改的数据源。

    3. 点击 SSH/SSL 选项卡并取消选中 使用SSL(L) 复选框。

    4. 点击 应用

    从其他数据源复制 SSL 设置

    如果您为一个数据源配置了 SSL 设置,您可以将其复制到另一个数据源。

    1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

      • 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击 数据源属性 图标 数据源属性图标

      • 按下 Ctrl+Alt+Shift+S

    2. 数据源 选项卡上,选择您要修改的数据源。

    3. 点击 SSH/SSL 选项卡并选择 使用SSL(L) 复选框。

    4. 点击 复制自… 链接并选择您想要复制的配置。

    SSH

    安全外壳或 SSH 是一种网络协议,用于加密客户端和服务器之间的连接。

    在 IntelliJ IDEA 中,您可以通过以下方式之一创建一个 SSH 连接:

    IntelliJ IDEA SSH隧道

    IntelliJ IDEA 可以基于您设置的 SSH 配置创建 SSH 隧道。 要访问 SSH 配置设置,请按 Ctrl+Alt+S 打开设置并选择 工具 | SSH 配置

    要为数据源使用 SSH 隧道,请在 SSH/SSL 选项卡的 数据源和驱动程序 对话框(Ctrl+Alt+Shift+S )中选中 使用 SSH 隧道 复选框。

    "您在项目中创建的所有 SSH 连接都将在所有数据源之间共享。" 如果您不想在项目之间共享连接,请在 SSH 连接设置中选择 仅对此项目可见 复选框。

    通过 SSH 连接数据库

    1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

      • 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击 数据源属性 图标 数据源属性图标

      • 按下 Ctrl+Alt+Shift+S

    2. 选择您想要更改连接设置的数据源配置文件。

    3. 点击 SSH/SSL 选项卡并选择 使用SSH 隧道(H) 复选框。

    4. 点击 添加SSH 配置 按钮 (添加 SSH 配置)。

    5. SSH 对话框中,点击 添加 按钮。

    6. 如果您不想在项目之间共享配置,请选择 仅对此项目可见 复选框。

    7. 主机用户名(U)端口 字段中,指定您的连接详细信息。

    8. 身份验证类型(Y) 列表中,您可以选择一种认证方法:

      • 密码 :使用密码访问主机。 要将密码保存在 IntelliJ IDEA,请选择 保存密码 复选框。

      • 密钥对(OpenSSH 或 PuTTY) :使用 SSH 认证与密钥对。 要应用此身份验证方法,您必须在客户端机器上拥有一个私钥,并在远程服务器上拥有一个公钥。 IntelliJ IDEA 支持使用 OpenSSH 工具生成的私钥。

        指定存储 private key 的文件路径,并在相应字段中输入密码短语(如果有)。 若要使 IntelliJ IDEA 记住密码短语,请选中 保存密码短语(E) 复选框。

      • OpenSSH 配置和身份验证代理 :使用管理您的 SSH 密钥的凭据帮助程序,例如 ssh-agent

    9. 点击 OK 确认新的 SSH 配置设置。

    10. 本地端口 字段的 数据源和驱动程序 对话框中,指定您想要转发连接的本地端口号。 否则,IntelliJ IDEA 动态选择端口。

    数据源的 SSH 设置

    禁用 SSH 连接到数据库

    1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

      • 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击 数据源属性 图标 数据源属性图标

      • 按下 Ctrl+Alt+Shift+S

    2. 选择您想要更改连接设置的数据源配置文件。

    3. 点击 SSH/SSL 选项卡并取消选中 使用SSH 隧道(H) 复选框。

    4. 点击 应用

    手动创建 SSH 隧道

    使用 PuTTY(Windows)创建 SSH 隧道

    1. 下载并运行最新版本的 PuTTY SSH 和 Telnet 客户端(从 https://www.putty.org/ 下载客户端)。

    2. PuTTY配置 对话框中,导航到 连接 | SSH | 身份验证

    3. 用于身份验证的私钥文件 字段中,指定您的私钥文件的路径,然后点击 打开

    4. 在命令行窗口中,指定您用于 SSH 隧道的用户名,然后按 Enter。 请勿关闭命令行窗口。

    5. 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击工具栏上的 数据源属性 图标 """
数据源属性图标
"""

    6. 选择您想要更改连接设置的数据源配置文件。

    7. 点击 SSH/SSL 选项卡并选择 使用 SSH 隧道 复选框。

    8. 身份验证类型 列表中选择 OpenSSH 配置和认证代理

    9. 代理主机代理用户端口 字段中,指定连接详细信息。

    10. 为了确保数据源连接成功,请点击 测试连接

    使用 PuTTY(Windows)创建 SSH 隧道

    使用 Pageant(Windows)创建 SSH 隧道

    Pageant 是 PuTTY、PSCP、PSFTP 和 Plink 的 SSH 认证代理。 Pageant 存储 您 的私钥,只要它在运行,它就会将解锁的私钥提供给 PuTTY 或其他工具,如 IntelliJ IDEA。 您可以在 Windows 任务栏中找到 Pageant 图标。

    1. 下载最新版本的 Pageant(从 https://www.putty.org/ 下载客户端)。

    2. 在 Windows 任务栏中,右键点击 Pageant 图标,然后选择 添加 Key

    3. 选择私钥文件 对话框中,导航到私钥文件( PPK 文件)并点击 打开

    4. (可选)输入私钥密码并按 Enter

    5. 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击工具栏上的 数据源属性 图标 """
数据源属性图标
"""

    6. 选择您想要更改连接设置的数据源配置文件。

    7. 点击 SSH/SSL 选项卡并选择 使用 SSH 隧道 复选框。

    8. 身份验证类型 列表中选择 OpenSSH 配置和认证代理

    9. 代理主机代理用户端口 字段中,指定连接详细信息。

    10. 为了确保数据源连接成功,请点击 测试连接

    使用 Pageant(Windows)创建 SSH 隧道

    使用 ssh-agent 创建 SSH 隧道(macOS 和 Linux)

    在命令行中运行所有 ssh-agent 命令。

    1. 确保 ssh-agent 正在运行。

      ssh-agent
    2. 将您的 key 添加到代理中(在以下示例中,key 路径为 ~/.ssh/id_rsa )。

      ssh-add ~/.ssh/id_rsa
    3. (可选)在 macOS 上,您可以将 -K 选项添加到 ssh-add 命令,以便将密码短语存储在您的钥匙串中。 在 macOS Sierra 及其之后的版本中,您需要在 ~/.ssh/ 中创建 配置 文件,内容如下:

      Host * UseKeychain yes AddKeysToAgent yes IdentityFile ~/.ssh/id_rsa

      如您在 .ssh 目录中有其他私钥,请为每个私钥添加一行 IdentityFile。 例如,如果第二个密钥具有 id_ed25519 名称,请将 IdentityFile ~/.ssh/id_ed25519 作为第二个私钥的附加行。

    4. 列出所有添加的键。

      ssh-add -L
    5. 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击工具栏上的 数据源属性 图标 """
数据源属性图标
"""

    6. 选择您想要更改连接设置的数据源配置文件。

    7. 点击 SSH/SSL 选项卡并选择 使用 SSH 隧道 复选框。

    8. 身份验证类型 列表中选择 OpenSSH 配置和认证代理

    9. 代理主机代理用户端口 字段中,指定连接详细信息。

    10. 为了确保数据源连接成功,请点击 测试连接

    使用 ssh-agent 创建 SSH 隧道(macOS 和 Linux)

    第 6 步. 如果您仍然需要帮助,请联系我们

    联系 IntelliJ IDEA 团队

    • 请发送电子邮件至 idea-support@jetbrains.com。 描述您的问题,并附上所有可加快故障排除的材料(代码样本、截图、日志、动画、视频及其他材料)。

    如需了解更多其他故障排除资源的信息,请参阅 支持与协助

    最后修改日期: 2025年 4月 24日