我在Linux上使用--skip-networking选项使用MySQL 。
尝试使用JDBC将基于J2EE的应用程序(使用servlet)连接到MySQL数据库。
使用禁用了--skip-networking选项的MySQL时,我以以下方式连接到数据库:
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase","myuser","mypassword");
启用--skip-networking选项后,我尝试将其连接为:
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase","myuser","mypassword");
但这似乎不起作用,当我尝试连接到应用程序中的数据库时,出现java.lang.NullPointerException。
注释掉--skip-networking选项并使用旧的JDBC语句后,我可以连接到数据库。
注意-我能够通过启用--skip-networking选项的命令行mysql客户端连接到数据库。
谁能告诉我如何从JDBC连接到数据库?我尝试搜索它,但无法找到满意的答案。提前致谢。
您根本无法做到这一点:MySQL JDBC驱动程序仅支持TCP / IP,并且-在Windows上-支持连接到数据库的命名管道。因此,指定--skip-networking
将完全不允许您使用JDBC MySQL Connector / J。
另请参见http://lists.mysql.com/java/8749:
Java本身不支持Unix域套接字,但是由于您在Windows上,因此可以使用命名管道[..]
上一篇文章中的死链接现在为http://dev.mysql.com/doc/connector-j/en/connector-j-reference-configuration-properties.html
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句