我想使用mysql-java驱动程序在mac os 10.8上的MySQL 5中插入一些日语和中文的项目。
但我发现所有的国际性格都是因为?????。
我用谷歌搜索,发现这是character_set_server的问题。
我用命令检查了它:显示像'character%'这样的变量,发现character_set_server现在是latin。
我想将其更改为utf-8,并发现互联网上的大多数解决方案是将my.cnf文件修改为:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
但我在Mac上找不到my.cnf。我只是在/ usr / local / mysql / support-files /.
下找到了my-default.cnf我更改了它并重新启动mysql,没有任何改变。
然后我在/ etc下创建了一个my.cnf并将上面的内容放入其中。重启mysql,仍然没有改变。
我不知道如何解决它,我真的很着急。
答案 0 :(得分:1)
当我在搜索同一个问题时,我看到了你的问题:为什么存储在mysql中的中文字符变成了????(我已经在我的webapp中处理字符集问题)以及如何在mac上更改MySQL的character_set_server(我无法找到my.cnf在我的Mac上也是;)
以下是解决方案:
1.copy my-default.cnf从/usr/local/mysql/support-files/
到/etc
(my-default.cnf只是一个模板);
2.将my-default.cnf发送到my.cnf;
3.在系统偏好设置中停止mysql服务器(或者可能遇到无法连接到mysql sock问题);
4.edit my.cnf,在character-set-server = utf8
后加[mysqld]
;
5.保存文件并运行mysql服务器并重启mysql;
在这之后,我成功地将我的mysql character_set_server更改为utf8,并且mysql中的中文字符很好;
答案 1 :(得分:0)
我找到了方法:修改/ usr / local / mysql ...目录下的my.cnf。