请问如何修改windows下mysql的字符集?
我想把它改成gbk2312
我用的是APPSERV 一键安装包安装的
以下是我的服务器基本信息:
MySQL
服务器: localhost via TCP/IP
服务器版本: 5.0.51b-community-nt-log
协议版本: 10
用户: root@localhost 
MySQL 字符集: UTF-8 Unicode (utf8) 网站服务器
Apache/2.2.8 (Win32) PHP/5.2.6
MySQL 客户端版本: 5.0.51a
PHP 扩展: mysql 
phpMyAdmin
版本信息: 3.3.1++++++++++++++++++++++备注:我在网上查了很多方法,大多都是说修改my.ini 文件后然后重启之类的,但是我按照他们的说法操作重启后还是无效!!!!!超郁闷啊!

解决方案 »

  1.   

    你在my.ini里面的 添加一条default-character-set =gb2312;
    不是gbk2312;是GBK,再show variables like 'character_set%' 看看是否修改成功;当然是需要重启mysql服务的
      

  2.   

    1、
    [mysql]default-character-set=utf8
    2、是乱码问题,要在统一字符集的下重新插入记录
      

  3.   

    不是乱码的问题啊   我就是想把MySQL 字符集: UTF-8 Unicode (utf8)改成gbk2312
      

  4.   

    [mysql]default-character-set=gbk2312
    重新启动MYSQL,
    show variables like 'char%'; 
    贴结果
      

  5.   

    mysql> \s
    --------------
    mysql  Ver 14.14 Distrib 5.1.48, for pc-linux-gnu (i686) using  EditLine wrapperConnection id:          2
    Current database:
    Current user:           mablevi@localhost
    SSL:                    Not in use
    Current pager:          stdout
    Using outfile:          ''
    Using delimiter:        ;
    Server version:         5.1.48 Source distribution
    Protocol version:       10
    Connection:             Localhost via UNIX socket
    Server characterset:    utf8
    Db     characterset:    utf8
    Client characterset:    utf8
    Conn.  characterset:    utf8

    UNIX socket:            /tmp/mysql.sock在my.cnf里面的mysqld选项组里面添加default-character-set=gb2312 ,重启:变成:
    Server characterset:    gb2312
    Db     characterset:    gb2312
    Client characterset:    utf8
    Conn.  characterset:    utf8再在mysql的命令行输入 set names gb2312 变成:
    Server characterset:    gb2312
    Db     characterset:    gb2312
    Client characterset:    gb2312
    Conn.  characterset:    gb2312
      

  6.   

    linux 和windows 操作步骤一样
      

  7.   


    像wwwwb大哥说的这样的话,那楼主对那些已经建立的表alter 自己手动指定字符集了,后面的表就不需要手动指定了 
      

  8.   

    对, 示例:
    ALTER TABLE a CHARACTER SET gbk
      

  9.   


    执行这句sql的时候,是不是要先选库啊?
      

  10.   

    当然要在要操作的库下面进行alter 了.
      

  11.   

    如果表中没有记录,则可以直接ALTER TABLE  CHARACTER SET  但如果表中已经有记录,则这个更改并不会使表中已经存在的记录的字符集进行修改。
    只能先将表中的记录导出,然后再ALTER TABLE改表的默认字符集然后再将记录导入
      

  12.   

    不是修改表、字段的字符集啊,我只要修改phpmyadmin 中基本信息显示的那个mysql字符集!我的mysql字符集现在是MySQL 字符集: cp1252 West European (latin1) 
    如图:如何把它改成:UTF-8 Unicode (utf8) 修改my.ini 文件我试过了,基本没用!!!
      

  13.   

    贴出你mysql里面运行的 show variables like 'char%'
      

  14.   

    以下是我mysql里面运行的 show variables like 'char%'
      

  15.   

    参考下贴,了解一下字符集的基础。http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
    MySQL 中文显示乱码
      

  16.   

    现在楼主有显示乱码?要是显示乱码的话,set names gbk 一下,应该就没问题了.phpmyadmin 这个字符集可以在它自己相应的地方设置的,以前我设置过,不过忘记了.楼主再看看.
      

  17.   

    谢谢你的帮助  字符集的问题我已经通过其它方法解决了,确实跟my.ini无关,只跟phpmyadmin的设置有关!
    不过请问如下红圈圈里面的latin1改成utf8该怎么设置呢?
      

  18.   

    mysql> show variables like 'char%';
    +--------------------------+-------------------------------------------+
    | 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       | D:\MySQL\MySQL Server 5.1\share\charsets\ |
    +--------------------------+-------------------------------------------+
    8 rows in set (0.00 sec)mysql> set names utf8;
    Query OK, 0 rows affected (0.04 sec)mysql> show variables like 'char%';
    +--------------------------+-------------------------------------------+
    | 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\MySQL Server 5.1\share\charsets\ |
    +--------------------------+-------------------------------------------+
    8 rows in set (0.00 sec)
      

  19.   

    奶奶的  忒郁闷!原来直接在phpmyadmin 和 cmd 里面使用 show variables like 'char%';
    这个语句的结果居然不同!我所怎么不论怎么设置phpmyadmin 出来的结果总是不变呢!都是phpmyadmin 给害的。。非常感谢楼上几位的热心帮助,100分已经都送出了,再次说声谢谢,尤其是mr_mablevi兄弟,谢了!