You need to enable JavaScript to run this app. IntelliJ中Java连接MySQL报错No suitable driver found for jdbc:mysql如何解决
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ中Java连接MySQL报错No suitable driver found for jdbc:mysql如何解决

解决方案

该报错的核心原因是你的Java项目运行时类路径下没有加载到MySQL对应的JDBC驱动包,IntelliJ内置的数据库工具自带独立的驱动依赖,和你的项目类路径不互通,因此会出现自带工具可运行SQL但代码执行报错的情况,可按以下步骤排查修复:

  • 引入匹配版本的MySQL JDBC驱动
    如果你使用Maven管理依赖,在pom.xml中添加如下配置(注意版本匹配你的MySQL服务版本,以下分别为MySQL 5.x和8.x的示例):

    <!-- MySQL 5.x 驱动 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.49</version>
    </dependency>
    
    <!-- MySQL 8.x 驱动 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.33</version>
    </dependency>
    

    如果你使用Gradle管理依赖,在build.gradle中添加如下配置:

    // MySQL 5.x
    implementation 'mysql:mysql-connector-java:5.1.49'
    // MySQL 8.x
    implementation 'mysql:mysql-connector-java:8.0.33'
    

    如果你手动导入jar包,可在IntelliJ中依次进入File > Project Structure > Libraries,点击+号选择Java,选中你下载的对应版本mysql-connector-java jar包,添加到对应模块的依赖中即可。

  • (可选但建议)显式注册驱动类
    在调用DriverManager.getConnection前添加驱动加载代码,避免自动加载失效的问题:

    // MySQL 5.x 用这行
    Class.forName("com.mysql.jdbc.Driver");
    // MySQL 8.x 用这行
    Class.forName("com.mysql.cj.jdbc.Driver");
    
  • 校验JDBC URL格式
    若你使用的是MySQL 8.x版本,需要在URL后补充时区、SSL等参数,修改后的URL示例如下:

    String jdbcUrl = "jdbc:mysql://sql11.freesqldatabase.com:3306/sql11418144?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true";
    
  • 确认运行时类路径包含驱动
    普通Java项目可检查运行配置的类路径是否已经包含引入的驱动依赖;Web项目需要确认驱动包已经放置在WEB-INF/lib目录下,避免打包时遗漏依赖。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 12:36:03