修改默认字符集,是个很常见的需求,应该也不难搞,可偏偏过程比较神奇。
MACOS X Yosemite
系统,使用mysql官网下载的dmg文件,直接安装,安装目录为/usr/local/mysql
,即为basedir,配置文件my.cnf即在basedir中。
MySQL Preference Pane
利用MySQL Preference Pane
,也就是mac的系统偏好设置
里的配置面板,实现管理mysqld,下文中的重启均是利用此管理工具。
它的启动配置文件路径为:
mysqld的启动参数包含在上述配置文件中:
my.cnf
修改my.cnf,增加默认字符集配置,在[client]
和[mysqld]
区块中都增加default-character-set=utf8
。然后重启服务器,结果,字符集没有任何变化。
修改配置文件并没有改变以上命令的输出,由此可知,服务器根本就没有读取该配置文件
。
既然服务器没有自动读取,那我希望通过手动提供参数来实现,通过以下命令求助:
发现输出中包含以下内容:
恍然大悟,根本就没有读到my.cnf的路径/usr/local/mysql/my.cnf,修复方式如下:
配置文件成功读取,不过又遇到了新的问题~~
character-set-server = utf8
启动过程中报错:
原来是mysql5.0之后,这个配置选项已经废弃,直接启用新的配置选项即可:
重启服务器,然后连接,在mysql shell中,使用以下命令检验:
参考链接