使用
下载安装
Mac下安装mysql,首先下载dmg镜像文件,形如mysql-5.7.17-macos10.12-x86_64.dmg
,装载后打开,里面是一个pkg文件,形如mysql-5.7.17-macos10.12-x86_64.pkg
,然后安装就好了。会安装到/usr/local
下,并在此文件夹下生成一个软链接。ls -li可以看到节点不同
开启
安装完之后,系统偏好设置就会多出一个MySQL,点进去就知道如何启动停止啦,还能设置开机启动。
配置文件
默认没有配置文件。若要做修改,需要到/usr/local/mysql/support-files
目录下将mac上的mysql配置文件模板my-default.cnf
拷贝到/etc
下并重命名为my.cnf
中文乱码解决
以自己遇到的实例为例进行分析:
遇到的情况如下:
- 后台写好的sql语句正常,但是写入数据库后乱码
- 中文从数据库读取到页面正常
- 直接用控制台插入中文字段正常
原因分析:
进入mysql命令行
mysql -u root -p
执行
show variables like 'character%';
结果如下:
+--------------------------+-----------------------------------------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql-5.7.17-macos10.12-x86_64/share/charsets/ |
+--------------------------+-----------------------------------------------------------+
拓展
character_set_client:客户端字符集
character_set_connection:链接字符集
character_set_database:数据库字符集
character_set_filesystem:文件系统
character_set_results:结果字符集
character_set_server:服务器字符集
character_set_system:mysql系统字符集
解决方案
临时设置,重启失效:
set character_set_server=utf8;
永久设置
在mac上默认是没有配置文件的,需要到/usr/local/mysql/support-files
目录下将mac上的mysql配置文件模板my-default.cnf
拷贝到/etc
下,并将文件名改成my.cnf
按下面内容修改my.cnf
文件
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
重启mysql,问题解决。