在OSX上使用jdbc将Java连接到mysql
问题内容:
因此,我在项目的构建路径中添加了MySQL Connector / J 5.1.16。我正在使用默认的OSX Java软件包和MAMP Pro
1.9.4,以及MySQL 5.1.44和Eclipse。
我用以下功能设置了一个简单的Java应用程序:
private static String dbUrl = "jdbc:mysql://127.0.0.1:3306/mpp";
private static String dbUsername = "root";
private static String dbPassword = "root";
private Statement statement = null;
private void dbConnect() {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection(dbUrl, dbUsername, dbPassword);
statement = connection.createStatement();
} catch(SQLException e) {
System.err.print(e.getMessage() + " ARGH!");
} catch(Exception e) {
System.err.print(e.getMessage() + " FUUUUUUUUUU!");
}
}
当我运行它时,出现以下错误:
Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. ARGH!
我用谷歌搜索了大约一个小时,没有成功。有想法该怎么解决这个吗?JDBC驱动程序应该很好,我对此进行了测试。
编辑
我尝试通过控制台运行
SnowCave:src stefanschipor$ java -cp $CLASSPATH test
我得到与上面相同的输出
问题答案:
好,这只是愚蠢的。:)
您已打开MAMP,转到服务器> MySQL,然后取消选中默认情况下选中的“仅允许本地访问”。这很奇怪,因为我的工作是本地的,但是无论如何…
我的程序似乎正常工作,@ JamesA建议的命令也产生了预期的输出!
晕!