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   |
+--------------------------+--------+
结合以下的编码表我们发现当前的数据库系统的编码:
latin1_bin  
西欧 (多语言), 二进制  
 
binary  
二进制  
 
以上是我在linux环境中的查看的结果编码集了。我现在WIN平台上面查看编码集结果如:
+--------------------------+--------+
| 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   |
+--------------------------+--------+
为什么会出现不一致的情况呢?在我本机上面是显示的UTF-8.而在LINUX上面居然是
 
二、通过命令修改其编码
创建数据库指定数据库的字符集
mysql>create database mydb character set utf-8;#
直接指定其编码
直接通过命令进行修改
set character_set_client=utf8;
set character_set_connection=utf8;
set character_set_database=utf8;
set character_set_results=utf8;
set character_set_server=utf8;
修改完了之后再查询
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   |
+--------------------------+--------+
结果全部都调整修改成UTF-8了!
修改完了之后我看 select * from address_address; 出现乱码了!Django也乱码

 

Mysql数据库导入乱码问题:
查询客户服务器的数据库字符集编码:SHOWVARIABLESLIKE'character\_set\_%';
查看排序方式设定:SHOWVARIABLESLIKE'collation_%';
 
 
进入后台将数据库导出
mysqldump -h localhost -u root –p cn --default-character-set=utf8 >chungtin_cn.sql
mysqldump -h localhost -u root –p en --default-character-set=utf8 >chungtin_en.sql
mysqldump -h localhost -u root –p test --default-character-set=utf8 >test.sql
导出后用写字板打开如下图:
进入phpmyadmin
导入数据库:
 
出现问题现象:
原因:
       由于服务器的设置问题!修改/etc/php.ini文件(由于对方为租空间,没权限修改此文件)
解决方法:在报错的php文件头部添加(将错误不输出)
ini_set("error_reporting","E_ALL & ~E_NOTICE");
修改php.ini
将: error_reporting = E_ALL
修改为:error_reporting = E_ALL & ~E_NOTICE
如果什么错误都不想让显示,直接修改:
display_errors = Off
如果你没有php.ini的修改权限,可在php头部加入
ini_set("error_reporting","E_ALL & ~E_NOTICE");