【问题标题】:SQLException: No suitable driver found for jdbc:mysql://localhost:3306/dbnameSQLException: 找不到适合 jdbc:mysql://localhost:3306/dbname 的驱动程序
【发布时间】:2013-05-09 19:14:50
【问题描述】:

我继承了一个项目(而且我完全没有 Java 经验)而且我陷入了困境。

我们有一个运行 redhat 的服务器,我需要更新其中一个 jar 文件。所以我只是复制了更新的文件并重新启动了该文件的服务。然而,这个过程已经在我们的另一台服务器上运行了,我也这样做了,但是在这台服务器上,它在日志文件中出现了以下内容。

Exception: com.mysql.jdbc.Driver
SQLException: No suitable driver found for jdbc:mysql://localhost:3306/dbanme

jar 文件被上传到网站根目录中的一个文件夹,该 jar 文件夹中是一个 lib 文件夹,mysql-connector-java-5.1.6-bin.jar 所在的位置。

有谁知道我可能缺少什么,因为我也是 linux 的新手。

提前致谢

【问题讨论】:

  • 贴出你的代码,我们猜不出你写的什么并告诉你错误在哪里,我们需要一些代码
  • 试试这个:stackoverflow.com/questions/5556664/… 如果它不起作用,请发布一些代码
  • 你还没有加载JDBC驱动..

标签: java mysql linux jdbc sqlexception


【解决方案1】:

你只需要设置:

[jdbc:mysql://localhost/dbanme] 

而不是

[jdbc:mysql://localhost:3306/dbanme]

因为java编译器默认理解一个端口3306,所以“localhost:”后不需要填写“3306”

【讨论】:

    【解决方案2】:

    java.sql.SQLException: 找不到合适的驱动程序

    此异常可能有 2 个原因:

    1. 根本没有加载 JDBC 驱动程序。
    2. URL 与任何加载的 JDBC 驱动程序都不匹配。

    由于驱动程序似乎已加载,因此该 URL 在该机器上似乎无效:

    jdbc:mysql://localhost:3306/dbname

    您是否在该机器上的 3306 端口上运行并侦听 mysql。还要确保你在那里 hte schema dbname。

    【讨论】:

    • 我认为您对驱动程序已加载的假设是不正确的。驱动程序只能根据前缀拒绝 URL,而不是根据机器未运行或在不同端口上运行的事实
    猜你喜欢
    • 2016-10-01
    • 2012-05-08
    • 2014-07-28
    • 1970-01-01
    • 1970-01-01
    • 2012-05-27
    • 2012-07-30
    • 2014-06-09
    • 2020-05-21
    相关资源
    最近更新 更多