zoukankan      html  css  js  c++  java
  • Ubuntu修改mysql默认编码

    修改mysql的配置文件,使数据库与服务器操作系统的字符集设置一致。
        vi /etc/my.cnf 设置(如果没有发现这个文件,就新建1个)
        [mysqld]
        datadir=/var/lib/mysql
        socket=/var/lib/mysql/mysql.sock
        default-character-set=utf8  (增加的关键一句,使得数据库缺省以utf8存储)
        当然,修改后,要重启数据库。
       
        再次用mysql -u root -p命令进入数据库系统,用SHOW VARIABLES LIKE 'character_set_%';命令查看到如下内容:
    +--------------------------+-----------------------------------------------------------------------+
    | Variable_name            | Value                                                                 |
    +--------------------------+-----------------------------------------------------------------------+
    | character_set_client     | latin1                                                                |
    | character_set_connection | latin1                                                                |
    | character_set_database   | utf8                                                                  |
    | character_set_filesystem | binary                                                                |
    | character_set_results    | latin1                                                                |
    | character_set_server     | utf8                                                                  |
    | character_set_system     | utf8                                                                  |
    | character_sets_dir       | /usr/local/mysql-5.1.20-beta-linux-i686-glibc23/share/mysql/charsets/ |
    +--------------------------+-----------------------------------------------------------------------+
        发现关键项目已经用了utf8,但这样还不够,还要保证客户端也是用utf8的字符集来操作的
        登录的时候,要用以下命令:mysql --default-character-set=utf8 -u root -p
      
        再次用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       | /usr/local/mysql-5.1.20-beta-linux-i686-glibc23/share/mysql/charsets/ |
    +--------------------------+-----------------------------------------------------------------------+
        这样才能保证客户端所发命令都是基于utf8格式的,比如说建立数据库和表,默认就会以utf8编码,而无须再次指定。


    需要说明一下,如果在修改编码之前已经建好数据库,需要删掉原来,重新建立数据库。

  • 相关阅读:
    [Operate System & Algorithm] 页面置换算法
    [Network] 计算机网络基础知识总结
    [Search Engine] 搜索引擎技术之网络爬虫
    [Search Engine] 搜索引擎分类和基础架构概述
    [Math] 常见的几种最优化方法
    磁盘告警之---神奇的魔法(Sparse file)
    Kubernetes概念之RC
    Kubernetes概念之mater、node
    Centos7允许使用密码登录
    安装gcc-c++报错解决办法
  • 原文地址:https://www.cnblogs.com/feichan/p/2251661.html
Copyright © 2011-2022 走看看