zoukankan      html  css  js  c++  java
  • 修改mysql字符集

    今天review同事的代码,发现从数据库查找包含中文的记录一概查不出来,将中文插入到数据表后又是“??”这类的乱码,这应该是字符集的问题了。

    1、先看看目前的字符集是什么?

    客户端可运行:

    SHOW VARIABLES

    我的服务端是安装在linux下的,首先进入linux:

    1)输入mysql -u root

    2)输入show variables like 'character%'

    显示结果:

    mysql> show variables like 'character%';
    +--------------------------+----------------------------+
    | Variable_name            | Value                      |
    +--------------------------+----------------------------+
    | character_set_client     | utf8                       |
    | character_set_connection | latin1                       |
    | character_set_database   | utf8                       |
    | character_set_filesystem | binary                     |
    | character_set_results    | utf8                       |
    | character_set_server     | latin1                    |
    | character_set_system     | utf8                       |
    | character_sets_dir       | /usr/share/mysql/charsets/ |
    +--------------------------+----------------------------+
    8 rows in set (0.00 sec)

    3)找到my.cnf文件

    退出mysql,进入路径 /etc/mysql/my.cnf文件

    输入vi my.cnf

    输入i,进入编辑模式

    添加或替换一下内容:

    [client]

    default-character-set=utf8

    [mysqld]

    default-character-set=utf8

    init_connect='SET NAMES utf8'  (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)

    编辑完后,如果想保存退出,则先按 ESC 键,然后输入 :wq ,不想保存的话,则输入 :q!  搞定

    4) 重新启动mysql服务

    输入service mysqld restart

    更多重新启动mysql服务的内容请参见

    http://hi.baidu.com/breezelark/blog/item/d9124622fc7698efd7cae2b2.html

    5)重新查看字符集

    mysql> 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     | utf8                    |
    | character_set_system     | utf8                       |
    | character_sets_dir       | /usr/share/mysql/charsets/ |
    +--------------------------+----------------------------+
    8 rows in set (0.00 sec)


    再次查询和插入,则没有中文乱码的问题了。

  • 相关阅读:
    iSCSI又称为IPSAN
    文档类型定义DTD
    HDU 2971 Tower
    HDU 1588 Gauss Fibonacci
    URAL 1005 Stone Pile
    URAL 1003 Parity
    URAL 1002 Phone Numbers
    URAL 1007 Code Words
    HDU 3306 Another kind of Fibonacci
    FZU 1683 纪念SlingShot
  • 原文地址:https://www.cnblogs.com/chshnan/p/2566130.html
Copyright © 2011-2022 走看看