centos6.5和centos7.5统一字符集为zh_CN.UTF-8解决系统和MySQL数据库乱码问题
生活随笔
收集整理的這篇文章主要介紹了
centos6.5和centos7.5统一字符集为zh_CN.UTF-8解决系统和MySQL数据库乱码问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
linux的服務器需要做的操作
centos6.5下: 修改默認字符集為 zh_CN.UTF-8,如果沒有中文語言包可能需要安裝中文語言包支持 [root@meinv01 ~]# yum groupinstall chinese-support [root@meinv01 ~]# cat /etc/sysconfig/i18n #<==修改此配置文件為如下 LANG="zh_CN.UTF-8" SYSFONT="latarcyrheb-sun16" [root@meinv01 ~]# source /etc/sysconfig/i18n [root@meinv05 ~]# date #<==驗證 2018年 12月 21日 星期五 19:22:43 CSTcentos7.5系統:
與centos6.5不太一樣,需要做以下操作調整字符集為 zh_CN.UTF-8
[root@meinv05 ~]# locale -a|grep zh_CN* #<==查看當前系統是否安裝中文語言包 zh_CN zh_CN.gb18030 zh_CN.gb2312 zh_CN.gbk zh_CN.utf8如果沒有安裝中文語言包,使用以下2條命令中其中一條安裝中文語言包即可
[root@meinv05 ~]# yum install -y kde-l10n-Chinese [root@meinv05 ~]# yum groupinstall -y "fonts" [root@meinv05 ~]# locale -a|grep zh_CN* #<=再次查看確保系統已安裝下列中文語言包 zh_CN zh_CN.gb18030 zh_CN.gb2312 zh_CN.gbk zh_CN.utf8 [root@meinv05 ~]# echo $LANG #<==查看當前字符集 en_US.UTF-8 [root@meinv05 ~]# vi /etc/locale.conf #<=編輯配置文件修改默認的英文字符集為以下 LANG="zh_CN.UTF-8" [root@meinv05 ~]# cat /etc/locale.conf LANG="zh_CN.UTF-8" [root@meinv05 ~]# source /etc/locale.conf [root@meinv05 ~]# locale LANG=zh_CN.UTF-8 LC_CTYPE="zh_CN.UTF-8" LC_NUMERIC="zh_CN.UTF-8" LC_TIME="zh_CN.UTF-8" LC_COLLATE="zh_CN.UTF-8" LC_MONETARY="zh_CN.UTF-8" LC_MESSAGES="zh_CN.UTF-8" LC_PAPER="zh_CN.UTF-8" LC_NAME="zh_CN.UTF-8" LC_ADDRESS="zh_CN.UTF-8" LC_TELEPHONE="zh_CN.UTF-8" LC_MEASUREMENT="zh_CN.UTF-8" LC_IDENTIFICATION="zh_CN.UTF-8" LC_ALL= [root@meinv05 ~]# date #<==驗證 2018年 12月 21日 星期五 19:22:43 CSTMySQL數據庫需要做的操作
1.編譯安裝MySQL時,指定MySQL數據庫默認的字符集為zh_CN.UTF-8,使用到的參數如下:
-DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \2.修改MySQL數據庫配置文件 /etc/my.cnf 中相關參數
[root@meinv05 ~]# cat /etc/my.cnf #<==注意此修改不能使用echo追加的方法,因為此配置文件是對應模塊的,echo追加對于修改不生效 [client] #<==在[client]字段里加入default-character-set=utf8 default-character-set=utf8 #<==如果使用mysqlbinlog命令查看log-bin日志出錯,可把此行注釋掉或者刪除不加此行 [mysqld] #<==在[mysqld]字段里加入character-set-server=utf8(MySQL5.5版本以上使用) port = 3306 #<==在[mysqld]字段里加入default-character-set=utf8(MySQL5.1版本以下使用) socket = /var/lib/mysql/mysql.sock character-set-server=utf8 [mysql] #<==在[mysql]字段里加入default-character-set=utf8 no-auto-rehash default-character-set=utf8注意:修改完成后,重啟mysql服務就生效(如果僅僅是修改MySQL客戶端就無需重啟服務直接生效),[mysqld]字段與[mysql]字段是有區別的,一起更改。
進入MySQL命令行界面下,驗證字符集是否全部是 zh_CN.UTF-8
mysql> show variables like 'character_set%'; +--------------------------+-------------------------------------------+ | 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 | utf8 | | character_set_system | utf8 | | character_sets_dir | /application/mysql-5.5.32/share/charsets/ | +--------------------------+-------------------------------------------+ 8 rows in set (0.00 sec)小結
?
轉載于:https://www.cnblogs.com/blog-tim/p/10154967.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的centos6.5和centos7.5统一字符集为zh_CN.UTF-8解决系统和MySQL数据库乱码问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工行香格里拉白金卡办理条件 工行香格里拉
- 下一篇: linux cmake编译源码,linu