Java 为什么在使用DriverManager.getConnection时SQL连接会卡住?

Java 为什么在使用DriverManager.getConnection时SQL连接会卡住?,java,mysql,jdbc,Java,Mysql,Jdbc,我有如下的Java代码和一个在我的机器上运行的MySQL数据库 System.out.println("Loading JDBC"); Class.forName("com.mysql.jdbc.Driver").newInstance(); System.out.println("JDBC loaded"); System.out.println("Establishing connection"); myConnection = DriverMan

我有如下的Java代码和一个在我的机器上运行的MySQL数据库

System.out.println("Loading JDBC");     
Class.forName("com.mysql.jdbc.Driver").newInstance();           
System.out.println("JDBC loaded");      
System.out.println("Establishing connection");
myConnection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:1186/dbname","username","password");
System.out.println("Connection established");
但是,我得到的输出如下:

Loading JDBC
JDBC loaded
Establishing connection
然后什么都没有?它不会报告连接错误,因此必须连接。 发生什么事?为什么不转到下一行代码


非常感谢您的帮助

我通常不会在IP地址后输入端口号。我使用SQLYog,它是mysql的用户界面。SQLYog比MySql命令行更易于使用。

几点:

  • 数据库的名称是什么?如果您试图运行上面显示的代码,那么数据库名称必须是“dbname”,用户名必须是“username”,密码必须是“password”

  • 您的MySQL正在侦听端口1186吗?我只是想知道在安装时默认端口一般设置为3306

  • 如果您想遵循将MySQL与JDBC连接所涉及的步骤,可以参考本教程了解更多信息


    Jwalant

    它被卡住了多长时间?将该语句放入try-catch块中,看看异常是什么……它在try/catch块中,没有异常,它只是停止输出,但程序仍在运行。您是否可以使用“用户名”和“密码”手动连接到MySql??…我尝试了mysql-h 127.0.0.1-P 5000-u用户名-密码,但出现错误1045(28000):用户“用户名”@“本地主机”的访问被拒绝(使用密码:是)我输入的密码正确吗?它需要任何“或”吗?如果需要,我如何授予“用户名”访问权限?