我有一个使用带有Connector/J MySQL连接器的MySQL的Java应用程序。我想在应用程序用户的$HOME/.my.cnf文件中指定默认客户端字符集,这样它就不会影响同一台服务器上的其他应用程序。
为了测试连接器/J是否使用$HOME/.my.cnf,我创建了包含以下内容的文件:
[client]
socket=/tmp/inexisting-mysql.sock我原以为Java应用程序无法连接到数据库,因为/tmp/inexisting-mysql.sock不存在。但是,应用程序仍然可以成功连接到数据库。看起来Connector/J根本没有读取这个配置文件。
如何使连接器/J读取$HOME/.my.cnf?或者,如何仅为我的[client]应用程序指定Java节选项,而不为使用相同数据库的其他应用程序指定?
问候你,Benedikt
发布于 2013-04-30 18:48:45
要为连接设置默认客户端字符集,您可以将其作为parameter to the connection本身提供:
jdbc:mysql://localhost:3306/sakila?useUnicode=true&characterEncoding=UTF-8我不认为有一种方法可以让Connector/J直接读取你的$HOME/.my.cnf。您可以在java应用程序中读取该文件,并相应地设置url参数。
https://stackoverflow.com/questions/16297921
复制相似问题