mac和linux下mysql字符集设置问题

为何要设置字符集

  1. 设置字符集主要是解决乱码问题,因为中文和英文编码不一样致使,中文出现乱码,因此通常都设置为utf8格式mysql

  2. 不一样的字符集占用的字节大小不一样,选择合适的字符集能够提升数据库的性能,sql

mac下设置

  • 在/etc/my.cnf文件进行设置,若是没有此文件能够从/usr/local/mysql/support-files/拷贝,命令以下数据库

cd /usr/local/mysql/support-files
sudo cp my.cnf /etc/my.cnf

查看文件的读写权限,若是为644(rw- r-- r--)则改成(664) (rw- rw- r--)
若是改成(666)(rw- rw- rw-)则修改之后配置文件不会生效bash

sudo chmod 664 /etc/my.cnf
  • my.cnf设置以下:性能

[client]
default-character-set=utf8
[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
[mysql]
default-character-set=utf8

查看设置是否成功

在命令行输入mysql,若是提示没有命令的话,在bash或者zsh的文件里修改,我用的是zsh,设置~/.zshrc,编码

export MYSQL="/usr/local/mysql/bin/"
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$MYSQL"

在命令行输入mysql,进入mysql命令行后,输入status;或者show variables like '%char%';命令行

| character_set_client     | utf8                                                    |
| character_set_connection | utf8                                                    |
| character_set_database   | utf8                                                    |
| character_set_filesystem | binary                                                  |
| character_set_results    | utf8                                                    |
| character_set_server     | utf8                                                    |
| character_set_system     | utf8                                                    |
| character_sets_dir       | /usr/local/mysql-5.6.30-osx10.11-x86_64/share/charsets/

若是文章对你有帮助,请去个人博客留个言吧! 个人博客code

相关文章
相关标签/搜索