修改mysql数据库的默认编码方式

修改my.ini文件

加上

default-character-set=gb2312

设定数据库字符集

alter database da_name default character set 'charset'

1)设置数据库编码 /etc/my.cnf
[mysqld]
default-character-set=gbk

...
[client]
default-character-set=gbk

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

2)按字符集导出
$mysqldump -u root -p dbname --default-character-set=gbk > a.sql;

3)查看SQL文件的编码
[root@localhost gethtml]# file a.sql
   a.sql: UTF-8 Unicode ...
[root@localhost gethtml]# iconv -f utf-8 -t gbk a.sql > a2.sql
[root@localhost gethtml]# file a2.sql
   a2.sql: Non-ISO extended-ASCII English text 这时已经是gbk的编码了

3)导入
查看数据库服务和客户端字符集
mysql> status;
Server characterset:    gbk
Db     characterset:      gbk
Client characterset:      latin1
Conn. characterset:     latin1

mysql> set names 'gbk';   //这样

mysql> status;
Server characterset:   gbk
Db     characterset:     gbk
Client characterset:     gbk
Conn. characterset:    gbk

这时才能导数据
mysql> source a.sql;

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

单独设置某个数据库:
alter database testdb character set utf8;

查看mysql支持的编码:
show character set;

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

mysql> SHOW VARIABLES LIKE ''character_set_%'';

LINUX 如下:

1)导出数据
[root@www.cnscn.org ~]$ mysqldump -u root -p dbname --default-character-set=gbk > base_user.sql;

2)查看导出的sql文件的编码
[root@www.cnscn.org ~]$ file base_user.sql 
  base_user.sql: UTF-8 Unicode text, with very long lines

3)转成要用的编码
[root@www.cnscn.org ~]$ iconv -f utf-8 -t gbk base_user.sql >base_user_gbk.sql

4)连接数据库并查看当前库的编码
[root@www.cnscn.org ~]$ mysql -uroot
 mysql> use testdb;

mysql> status;
    Server characterset:    latin1
    Db     characterset:    gbk
    Client characterset:    latin1
    Conn. characterset:    latin1

5)设置成需要的编码
mysql>set names 'gbk';

6)查看现在的编码
mysql> status;
    Server characterset:    latin1
    Db     characterset:    gbk
    Client characterset:    gbk
    Conn. characterset:    gbk

7)导入我们转换成gbk后的文件
mysql> source base_user_gbk.sql;

  1. 查看数据库

  2. 查看数据库字符编码

  3. 通过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> set character_set_server=utf8;

    mysql> set character_set_system=utf8;

    mysql> set collation_connection=utf8;

    mysql> set collation_database=utf8;

    mysql> set collation_server=utf8;

  4. 当然还有:

    修改数据库的字符集mysql>use mydb

    mysql>alter database mydb character set utf8;

  5. 8

    创建数据库指定数据库的字符集

    mysql>create database mydb character set utf8;

mysql将表的字符编码转换成utf-8

复制代码 代码如下:

alter table tb_anniversary convert to character set utf8;

修改数据库mysql字符编码为UTF8

步骤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 | /usr/share/mysql/charsets/ |

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

8 rows in set (0.00 sec)

字符编码为latin1时,用户在给数据表插入一条字符类型(char)的记录,在显示此记录时可能会无法正常显示字符类型的数据,故此处我们将mysql字符编码修改为UTF8。操作如下:

步骤2:修改my.cnf配置文件,修改后如下(/etc/my.cnf):

复制代码 代码如下:

[client]

#password = your_password

port = 3306

socket = /var/lib/mysql/mysql.sock

default-character-set=utf8 #设置默认编码为UTF8

Mysql数据库字符集问题的更多相关文章

  1. 查看和设置MySQL数据库字符集(转)

    查看和设置MySQL数据库字符集作者:scorpio 2008-01-21 10:05:17 标签: 杂谈 Liunx下修改MySQL字符集:1.查找MySQL的cnf文件的位置find / -ina ...

  2. 使用SQL语句修改Mysql数据库字符集的方法

    使用SQL语句修改Mysql数据库字符集的方法   修改库: alter database [$database] character set [$character_set] collate [$c ...

  3. 关于mysql数据库字符集优先级问题

    mysql数据库可以分别设置数据库字符集.表字符集和表字段字符集. 1.数据库字符集 < 表字符集 < 表字段(列)字符集. 例如数据库字符集为gbk -- GBK Simplified ...

  4. mysql数据库字符集编码查看以及设置

      show variables like %char% character_set_client     | gb2312                           character_s ...

  5. MySQL数据库字符集由utf8修改为utf8mb4一例

    对于mysql 5.5 而言,如果不设定字符集,mysql默认的字符集是 latin1 拉丁文字符集: 为了统一管理和应用开发的方便,一般都会统一将操作系统,客户端,数据库各方面的字符集都设置为 ut ...

  6. linux下设置mysql数据库字符集utf8

    mysql中文乱码解决方法:将mysql数据库编码统一utf8 查看数据库编码: show variables like 'character%'; 编辑/etc/my.cnf [mysql] def ...

  7. inux下设置mysql数据库字符集utf8

    mysql中文乱码解决方法:将mysql数据库编码统一utf8 查看数据库编码: ? 1 <span style="font-size: 16px;"><stro ...

  8. MySQL 数据库字符集 utf8 和 utf8mb4 的区别

    参考于今日头条上Java芋道源码的-----记住:永远不要在 MySQL 中使用 UTF-8 字符集选择 MySQL 的 utf8 实际上不是真正的 UTF-8.utf8 只支持每个字符最多三个字节, ...

  9. mysql数据库字符集相关操作(修改表字段编码,使其支持emoji表情)

    普通的UTF8编码是不支持emoji表情插入的,会报异常: Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x9 ...

随机推荐

  1. 解决Tomcat出现内存溢出的问题

    Tomcat服务器出现java.lang.OutOfMemoryError:Java heap space异常 1.可能是程序错误,比如:程序陷入死循环 2.堆内存太小 一般情况下,java创建的对象 ...

  2. ObjectMapper将json转对象报错处理

    在使用ObjectMapper将json转对象,调用mapper.readValue(jsonStr, XwjUser.class)时,报如下错: com.fasterxml.jackson.data ...

  3. css3如何实现圆角边框

    圆角边框是css3新增属性,在圆角边框出现之前,前端开发有的采用整块的圆角图片作为背景,有的采用小的圆角图片分别放在元素的四角,非常麻烦,灵活性差,也达到降低了网站的整体性能,而圆角边的出现则降低了开 ...

  4. 如何在PIXI.js里面使用json文件来管理瓦片集(tileset)?

    如何在PIXI.js里面使用json文件来管理瓦片集(tileset)? PIXI建议我们将素材图片汇总成一个瓦片集(tileset),然后用纹理地图集(texture atlas,通常是一个json ...

  5. 解决:jsp 页面不全,response 内容不完整

    前言:今天 jsp 页面输出不完整这个问题困扰了我几个小时,终于发现问题并解决了. 环境: tomcat 8.0.17 x64 jsp springmvc vue 问题: 本来页面正常,但加了几行代码 ...

  6. Asp.Net Mvc表单提交(批量提交)

    Asp.Net Mvc中Action的参数可以自动接收和反序列化form表单的值, 采用form表单提交 name=value类型,只要Action参数的变量名和input的name相同就行 html ...

  7. [合集]解决Python报错:local variable 'xxx' referenced before assignment

    a = 1 def use(): print(a) #输出1 引用不会报错 a = 1 def use(): a = 3 print(a) #输出 3 重新赋值也不会报错. 局部变量会优先在函数内部去 ...

  8. Django基础必备三神装(HttpResponse、render,、redirect)

    在使用三神装的时候,首先当然是得要导入它们: from django.shortcuts import HttpResponse, render, redirect 1.HttpResponse 它是 ...

  9. Angular 框架介绍

    库和框架的区别 jQuery:库 库一般都是封装了一些常用的方法 自己手动去调用这些方法,来完成我们的功能code $('#txt').val('我是小明'); $('div').text('xx') ...

  10. 14:求10000以内n的阶乘

    14:求10000以内n的阶乘 查看 提交 统计 提问 总时间限制:  5000ms 内存限制:  655360kB 描述 求10000以内n的阶乘. 输入 只有一行输入,整数n(0<=n< ...