`
天涯海角tour
  • 浏览: 174590 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

mysql 字符编码

阅读更多

    转载 http://hi.baidu.com/ak456/blog/item/2ead648b61330b16c8fc7a80.html

. 拷贝 small.cnf、my-medium.cnf、my-huge.cnf、my-innodb-heavy-4G.cnf其中的一个到/etc下,命名为my.cnf
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

 

3. 修改my.cnf

vi /etc/my.cnf

在[client]下添加
default-character-set=utf8

在[mysqld]下添加
default-character-set=utf8

 

4.重新启动MySQL
[root@bogon ~]# /etc/rc.d/init.d/mysql restart
Shutting down MySQL                                        [ 确定 ]
Starting MySQL.                                            [ 确定 ]
[root@bogon ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.22-rc-community-log MySQL Community Edition (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

 

5.查看字符集设置

mysql> show variables like 'collation_%';
+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.02 sec)

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

mysql>

其他的一些设置方法:
修改数据库的字符集
   mysql>use mydb
   mysql>alter database mydb character set utf-8;

创建数据库指定数据库的字符集
   mysql>create database mydb character set utf-8;

通过配置文件修改:

修改/var/lib/mysql/mydb/db.opt
default-character-set=latin1
default-collation=latin1_swedish_ci

default-character-set=utf8
default-collation=utf8_general_ci

重起MySQL:
[root@bogon ~]# /etc/rc.d/init.d/mysql restart

 

通过MySQL命令行修改:

mysql> set character_set_client=utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> set character_set_connection=utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> set character_set_database=utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> set character_set_results=utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> set character_set_server=utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> set character_set_system=utf8;
Query OK, 0 rows affected (0.01 sec)

mysql> set collation_connection=utf8;
Query OK, 0 rows affected (0.01 sec)

mysql> set collation_database=utf8;
Query OK, 0 rows affected (0.01 sec)

mysql> set collation_server=utf8;
Query OK, 0 rows affected (0.01 sec)


查看:
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       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.03 sec)

mysql> show variables like 'collation_%';
+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.04 sec)

 

 

 

-------------------------------------------------------------------------

【知识性文章转载】

MYSQL 字符集问题

 

 

MySQL的字符集支持(Character Set Support)有两个方面:

     字符集(Character set)和排序方式(Collation)。

对于字符集的支持细化到四个层次:

     服务器(server),数据库(database),数据表(table)和连接(connection)。

1.MySQL默认字符集

MySQL对于字符集的指定可以细化到一个数据库,一张表,一列,应该用什么字符集。

但是,传统的程序在创建数据库和数据表时并没有使用那么复杂的配置,它们用的是默认的配置,那么,默认的配置从何而来呢?    (1)编译MySQL 时,指定了一个默认的字符集,这个字符集是 latin1;

    (2)安装MySQL 时,可以在配置文件 (my.ini) 中指定一个默认的的字符集,如果没指定,这个值继承自编译时指定的;

    (3)启动mysqld 时,可以在命令行参数中指定一个默认的的字符集,如果没指定,这个值继承自配置文件中的配置,此时 character_set_server 被设定为这个默认的字符集;

    (4)当创建一个新的数据库时,除非明确指定,这个数据库的字符集被缺省设定为character_set_server;

    (5)当选定了一个数据库时,character_set_database 被设定为这个数据库默认的字符集;

    (6)在这个数据库里创建一张表时,表默认的字符集被设定为 character_set_database,也就是这个数据库默认的字符集;

    (7)当在表内设置一栏时,除非明确指定,否则此栏缺省的字符集就是表默认的字符集;

简单的总结一下,如果什么地方都不修改,那么所有的数据库的所有表的所有栏位的都用 latin1 存储,不过我们如果安装 MySQL,一般都会选择多语言支持,也就是说,安装程序会自动在配置文件中把 default_character_set 设置为 UTF-8,这保证了缺省情况下,所有的数据库的所有表的所有栏位的都用 UTF-8 存储。

2.查看默认字符集(默认情况下,mysql的字符集是latin1(ISO_8859_1)

通常,查看系统的字符集和排序方式的设定可以通过下面的两条命令:

     mysql> SHOW VARIABLES LIKE 'character%';

+--------------------------+---------------------------------+

| Variable_name            | Value                           |

+--------------------------+---------------------------------+

| character_set_client     | latin1                          |

| character_set_connection | latin1                          |

| character_set_database   | latin1                          |

| character_set_filesystem | binary                    |

| character_set_results    | latin1                          |

| character_set_server     | latin1                          |

| character_set_system    | utf8                            |

| character_sets_dir       | D:"mysql-5.0.37"share"charsets" |

+--------------------------+---------------------------------+

mysql> SHOW VARIABLES LIKE 'collation_%';

+----------------------+-----------------+

| Variable_name        | Value           |

+----------------------+-----------------+

| collation_connection | utf8_general_ci |

| collation_database   | utf8_general_ci |

| collation_server     | utf8_general_ci |

+----------------------+-----------------+

3.修改默认字符集

(1) 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,

如    default-character-set = utf8

      character_set_server = utf8

   修改完后,重启mysql的服务,service mysql restart

   使用 mysql> SHOW VARIABLES LIKE 'character%';查看,发现数据库编码均已改成utf8

+--------------------------+---------------------------------+

| 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       | D:"mysql-5.0.37"share"charsets" |

+--------------------------+---------------------------------+

   (2) 还有一种修改字符集的方法,就是使用mysql的命令

   mysql> SET character_set_client = utf8 ;

     mysql> SET character_set_connection = utf8 ;

     mysql> SET character_set_database = utf8 ;

     mysql> SET character_set_results = utf8 ;

分享到:
评论

相关推荐

    教程:修改mysql字符编码成为UTF8.docx

    MySQL 字符编码修改为 UTF8 的教程 MySQL 数据库的字符编码问题一直是开发者们头疼的问题,尤其是在多语言环境下。如果您的 MySQL 数据库的字符编码不是 UTF8,可能会导致数据乱码、无法读取等问题。今天,我们将教...

    Unity3D教程:修改mysql字符编码成为UTF82

    本教程将介绍如何解决Unity3D中与MySQL数据库连接时的字符编码问题,确保数据能够正确地以UTF-8格式存储和读取。 首先,我们遇到的问题是即使设置表的默认字符集为UTF8,并且在发送查询时使用UTF-8编码,仍然会出现...

    MySQL字符编码及乱码解决方案.txt

    MySQL字符编码及乱码解决方案 · 使用多种字符集来存储字符串 · 使用多种校对规则来比较字符串 · 在同一台服务器, 同一个数据库或甚至在同一个表中使用不同字符集或校对规则来混合字符串 · 允许定义任何级别...

    MySQL字符编码设置方法

    MySQL字符编码是数据库管理系统中一个关键的组成部分,它决定了数据存储和检索时的文本格式。在处理多语言或特殊字符时,正确的字符编码设置尤为重要,因为它可以确保数据的一致性和可读性。以下是对MySQL字符编码...

    Honye#notes#MySQL字符编码1

    查看MySQL数据库的编码C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe Ver 14.14 Dis

    Mysql字符集编码详解

    Mysql字符集编码详解 Mysql数据库中的字符集编码问题是许多开发者经常遇到的一个问题,特别是在JAVA项目中。解决这个问题需要从多方面入手,包括服务器、数据库、数据表和连接等四个层次。这篇文章将详细介绍如何...

    微信开发中mysql字符编码问题

    本文将深入探讨如何解决微信开发中的MySQL字符编码问题。 问题的核心在于,当微信开发者通过API获取到包含中文的用户信息,并尝试将这些信息存储到MySQL数据库时,可能会遇到中文字符显示为“??”的乱码情况。这...

    php字符编码确定

    ### PHP与MySQL字符编码的重要性 字符编码是计算机系统识别、存储和处理文本的基础。不同的编码方式支持不同数量和类型的字符,例如ASCII、GB2312、UTF-8等。在PHP开发中,尤其是在处理中文或多种语言内容时,字符...

    MySQL修改默认字符集编码的方法

    查看MySQL字符集的命令是“show variables like ‘%char%’;”。 以MySQL5.6为例,默认的字符集为: 在工作中需要将字符集全部修改为utf8。 以下是修改的方法: 1.打开安装目录,默认在“C:\Program Files\...

    设置mysql字符集

    ### MySQL字符集的基本概念 字符集(Character Set)定义了数据在存储和处理时所采用的编码标准,而校对集(Collation)则规定了字符集下的排序规则和比较方式。在MySQL中,主要涉及以下几个关键变量: - `...

    mysql字符集转换

    ### MySQL字符集转换详解 #### 一、引言 在MySQL数据库管理中,字符集的正确设置至关重要。它直接影响到数据的存储与检索效果,尤其是对于包含多种语言文本的应用场景而言。本文将围绕“MySQL字符集转换”这一主题...

    mysql修改数据库编码(数据库字符集)和表的字符编码的方法

    修改数据库mysql字符编码为UTF8 步骤1:查看当前的字符编码方法 代码如下:mysql> show variables like’character%’; +————————–+—————————-+ |Variable_name |Value | +————————–+...

    MySQL中文编码设置

    #### 二、MySQL字符集介绍 MySQL支持多种字符集,其中最常用的包括ASCII(默认字符集)、Latin1、UTF-8等。UTF-8是一种支持多语言的Unicode编码方式,能够兼容全球大多数语言的文字,非常适合中文环境下的应用。 #...

    mysql字符集设置

    MySQL字符集设置是数据库管理中的一个重要环节,尤其是在处理多语言数据或者有特殊字符需求的应用中。字符集决定了数据库、表以及字段如何存储和显示字符,影响到数据的正确性及兼容性。以下将详细讲解MySQL字符集的...

    SQLyog MysqL汉化界面 可设字符编码

    总之,SQLyog作为一款全面的MysqL管理软件,它的汉化界面和字符编码设置功能对于中国用户来说尤其实用。通过它,用户可以高效、便捷地完成数据库的各种操作,无论是初学者还是专业人士都能从中受益。在日常工作中,...

    MySQL字符编码设置

     修改mysql的编码方式可以有以下几个:  1.通过配置文件修改my.ini(windows下)或/etc/my.cnf(linux下)  分别添加如下内容  [mysqld]  character_server_set=utf8  [mysql]  default-character-set=utf...

    mysql批量修改字符编码

    mysql批量修改字符编码,可以把整个数据库的所有表的charset统一设置为utf-8的。

    linux修改mysql字符集

    我们还需要添加 `init_connect='SET NAMES gbk'`,以设置连接 MySQL 数据库时使用 gbk 编码。 修改完成后,我们需要重新启动 MySQL 服务器,以便新的配置生效。然后,我们可以使用 `show variables like 'character...

Global site tag (gtag.js) - Google Analytics