`

linux中MySQL的字符集修改

阅读更多
以下上从网上找到的方法,出处不明
在此感谢一下,给我帮助很大~

4.修改字符集
Mysql默认字符是Latin的
如果有中文就会出现乱码,解决方法:
装完的MySQL的默认字符集为 latin1 ,为了要将其字符集改为用户所需要的(比如utf8),就必须改其相关的配置文件;由于linux下MySQL的默认安装目录分布在不同的文件下;不像windows一样放在同一目录下,只需修改其中的my.ini文件,重起后就生效了;所以先来看看linux下MySQL的数据库文件、配置文件和命令文件分别在不同的目录 :
     1、数据库目录,其所创建的数据库文件都在该目录下
  /var/lib/mysql/
   2、配置文件 (mysql.server命令及配置文件所在地)
  /usr/share/mysql
   3、相关命令(如mysql mysqladmin等)
  /usr/bin
   4、启动脚本(如mysql启动命令)
  /etc/rc.d/init.d/
           查看默认字符集
            #mysql -u root - p
            #(输入密码)
       mysql> show variables like 'character_set%' ;
引用
+--------------------------+----------------------------+
| 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       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
            修改字符集 :
         1.查找/etc目录下是否有my.cnf文件;
          
引用
#ls -l | grep my.cnf
(在/etc下查找是否有my.cnf文件存在)
          2.如果没有就要从/usr/share/mysql,拷贝一个到/etc 下,在/usr/share/mysql目录下有五个后缀为.cnf的文件,分别是 my-huge.cnf    my-innodb-heavy-4G.cnf    my-large.cnf   my-medium.cnf     my-small.cnf ;从中随便拷贝一个到/etc目录下并将其改为my.cnf文件,我选择的是my-medium.cnf :
         
 #cp /usr/share/mysql/my-medium.cnf   /etc/my.cnf 
          3.修改my.cnf文件,在该文件中的三个地方加上 default-character-set=utf8([client] [mysqld] [mysql])
             #vi  /etc/my.cnf
             修改如下:(红色为添加部分)
          
  •   [client]
  •             #password       = your_password
  •              port            = 3306
  •              socket          = /var/lib/mysql/mysql.sock
  •              default-character-set=utf8   (经过验证好像这一步不用设置也可以达到效果)
  •               [mysqld]
  •                port            = 3306
  •                 socket          = /var/lib/mysql/mysql.sock
  •                 skip-locking
  •                 key_buffer = 16M
  •                 max_allowed_packet = 1M
  •                 table_cache = 64
  •                 sort_buffer_size = 512K
  •                 net_buffer_length = 8K
  •                read_buffer_size = 256K
  •                read_rnd_buffer_size = 512K
  •                myisam_sort_buffer_size = 8M
  •                default-character-set=utf8
  •                init_connect='SET NAMES utf8'
  •                [mysql]
  •                no-auto-rehash
  •                default-character-set=utf8
              保存退出;
           4.重起MySQL服务器,使其设置的内容生效
             
引用
#/etc/init.d/mysql  restart
如果有权限问题的话可以试试 service mysql stop和start

            5. 重新登入mysql;
               # mysql -u root - p
                #(输入密码)
               mysql> show variables like 'character_set%' ;
引用
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |(都生成了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/ |
+--------------------------+----------------------------+
        mysql启动和停止 操作 :
        可以通过 #/etc/init.d/mysql   [start | stop | restart](实现启动,停止,重启)
        也可以通过 #service mysql [start | stop | restart](实现启动,停止,重启)

上面是网上的方法,结果确实都是utf-8了,但是从mysql命令行显示出来的数据仍然是乱码,不知是为何了?
分享到:
评论
3 楼 java_bigniu 2011-07-26  
service mysqld restart,少了个d
2 楼 java_bigniu 2011-07-26  
1 楼 java_bigniu 2011-06-24  

相关推荐

    linux修改mysql字符集

    linux修改mysql字符集 linux修改mysql字符集

    Linux下修改MySQL字符集

    Linux下修改MySQL字符集 1.查找MySQL的cnf文件的位置 find / -iname '*.cnf' -print /usr/share/mysql/my-innodb-heavy-4G.cnf /usr/share/mysql/my-large.cnf /usr/share/mysql/my-small.cnf /usr/share/mysql/...

    如何修改mysql字符集

    安装完的MySQL的默认字符集为 latin1 ,为了要将其字符集改为用户所需要的(比如utf8),就必须改其相关的配置文件;由于linux下MySQL的默认安装目录分布在不同的文件下;不像windows一样放在同一目录下,只需修改其中...

    Linux下MySQL 5.5/5.6的修改字符集编码为UTF8的方法

    下面小编就为大家带来一篇Linux下MySQL 5.5/5.6的修改字符集编码为UTF8的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    一次Linux修改MySQL配置不生效的问题解决

    主要给大家介绍了关于Linux修改MySQL配置不生效问题的解决方法,文中通过示例代码介绍的非常详细,对大家学习或者使用Linux系统具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

    Linux下mysql中文乱码解决方法

    最简单的完美修改方法,修改mysql的my.cnf文件中的字符集键值(注意配置的字段细节)

    mysql odbc字符集设置(中文显示乱码)

    在配置odbc源时,选上Read Options From my.cnf这一项 MySQL ODBC字符集设置 mysql数据库字符集为utf8,使用delphi7的adoquery查询出的结果显示乱码 odbc驱动版本3.51.15 处理如下: ---------------...

    MySql 5.1 参考手册.chm

    10.2. MySQL中的字符集和校对 10.3. 确定默认字符集和校对 10.3.1. 服务器字符集和校对 10.3.2. 数据库字符集和校对 10.3.3. 表字符集和校对 10.3.4. 列字符集和校对 10.3.5. 字符集和校对分配示例 10.3.6. 连接字符...

    mysql 数据库乱码问题解决

    MySQL数据库乱码-Linux下乱码问题一 乱码问题是很让人抓狂的问题,下面我将记录一下linux下mysql乱码问题的解决...mysql默认字符集是latin1,但是我们大部分程序使用的字符集是utf8,我们就需要修改mysql的字符集了。

    MySQL 5.1中文手冊

    10.2. MySQL中的字符集和校对 10.3. 确定默认字符集和校对 10.3.1. 服务器字符集和校对 10.3.2. 数据库字符集和校对 10.3.3. 表字符集和校对 10.3.4. 列字符集和校对 10.3.5. 字符集和校对分配示例 10.3.6. 连接字符...

    MySQL 5.1参考手册

    前言 1. 一般信息 1.1. 关于本手册 1.2. 本手册采用的惯例 1.3. MySQL AB概述 1.4. MySQL数据库管理系统概述 1.4.1. MySQL的历史 1.4.2. MySQL的的主要特性 ...10.2. MySQL中的字符集和校对

    MySQL 5.1官方简体中文参考手册

    10.2. MySQL中的字符集和校对 10.3. 确定默认字符集和校对 10.3.1. 服务器字符集和校对 10.3.2. 数据库字符集和校对 10.3.3. 表字符集和校对 10.3.4. 列字符集和校对 10.3.5. 字符集和校对分配示例 10.3.6. 连接字符...

    mysql5.1中文手册

    MySQL中的字符集和校对 10.3. 确定默认字符集和校对 10.3.1. 服务器字符集和校对 10.3.2. 数据库字符集和校对 10.3.3. 表字符集和校对 10.3.4. 列字符集和校对 10.3.5. 字符集和校对分配示例 ...

    MYSQL中文手册

    10.2. MySQL中的字符集和校对 10.3. 确定默认字符集和校对 10.3.1. 服务器字符集和校对 10.3.2. 数据库字符集和校对 10.3.3. 表字符集和校对 10.3.4. 列字符集和校对 10.3.5. 字符集和校对分配示例 10.3.6. ...

    MySQL中文参考手册.chm

    9.1.1 用于数据和排序的字符集 9.1.2 增加一个新的字符集 9.1.3 多字节字符支持 9.2 更新日志 9.3 MySQL数据库表可以有多大? 9.4 MySQL数据库表类型 10 从 MySQL 得到最大的...

    MySQL 5.1参考手册 (中文版)

    10.2. MySQL中的字符集和校对 10.3. 确定默认字符集和校对 10.3.1. 服务器字符集和校对 10.3.2. 数据库字符集和校对 10.3.3. 表字符集和校对 10.3.4. 列字符集和校对 10.3.5. 字符集和校对分配示例 10.3.6. 连接字符...

    MySQL 5.1参考手册中文版

    10.2. MySQL中的字符集和校对 10.3. 确定默认字符集和校对 10.3.1. 服务器字符集和校对 10.3.2. 数据库字符集和校对 10.3.3. 表字符集和校对 10.3.4. 列字符集和校对 10.3.5. 字符集和校对分配示例 10.3.6. ...

    mysql官方中文参考手册

    10.2. MySQL中的字符集和校对 10.3. 确定默认字符集和校对 10.3.1. 服务器字符集和校对 10.3.2. 数据库字符集和校对 10.3.3. 表字符集和校对 10.3.4. 列字符集和校对 10.3.5. 字符集和校对分配示例 10.3.6. 连接字符...

Global site tag (gtag.js) - Google Analytics