MySQL会出现中文乱码的原因不外乎下列几点:
1.server本身设定问题,例如还停留在latin1
2.table的语系设定问题(包含character与collation)
3.客户端程式(例如php)的连线语系设定问题
强烈建议使用utf8!!!!
utf8可以兼容世界上所有字符!!!!
查看 并 修改Mysql的字符集编码格式:
查看默认的编码格式:
mysql> show variables like "%char%";
+--------------------------+---------------+
| Variable_name | Value |
+--------------------------+---------------+
| character_set_client | gbk |
| character_set_connection | gbk |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | gbk |
| character_set_server | utf8 |
| character_set_system | utf8 |
+--------------------------+-------------+
注:以前2个来确定,可以使用set names utf8,set names gbk设置默认的编码格式;
执行SET NAMES utf8的效果等同于同时设定如下:
SET character_set_client='utf8';
SET character_set_connection='utf8';
SET character_set_results='utf8';
通过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字符集MySQL 乱码的根源是的 MySQL 字符
docker mysql 字符集设置 使用 docker 启动 mysql 容器可能会出现中文乱码的情况,这里记录如何制作支持中文的 mysql 镜像 docker版本:18.06 mysql 版本:5.7 1. 创建 my.cnf 文件 [client] default-character-set=...
设置mysql字符集 mysql 乱码
MYSQL字符集乱码的解决 在命令行下,以及从网页取出来就不会出现乱码
设定mysql字符集解决终端乱码设定mysql字符集解决终端乱码
解决字符集通讯设置不匹配的方法: (修改默认的character_set_client,character_set_connection,character_set_result)
MySQL数据库乱码-Linux下乱码问题一 乱码问题是很让人抓狂的问题,下面我将记录一下linux下mysql乱码问题的解决...mysql默认字符集是latin1,但是我们大部分程序使用的字符集是utf8,我们就需要修改mysql的字符集了。
计算机后端-PHP视频教程. php与mysql加强- 08. php加强41-字符集与乱码问题.wmv
打开mysql改变字符集 然后在获取连接时候改变字符集 最后在查询之前改变字符集 我用过的可以解决
详细的介绍了mysql数据库字符集的设置,有效的避免了乱码的发生
精通MySQL字符集与校对集,再也不会为乱码而心烦意乱了
详细介绍了字符编码的渊源,解释了MySQL中字符编码
Mysql数据库乱码 问题彻底解决 针对JAVA
7_MYSQL视频教程 字符集操作原理与乱码解决方案character_set_client_character_set_connection_character_set_results
版本:mysql5.7 环境:windows 备注:配置mysql的字符集为utf8mb4 *为了解决mysql乱码参考了几个博客,只能在此鸣谢一下所有提供有价值的博客作者,此文件就上传备份一下
所以一般情况下只需要设置character-set-server,而在创建数据库和表时不特别指定字符集,这样统一采用character-set-server字符集。 character-set-client:客户端的字符集。客户端默认字符集。当客户端向服务器...
MySQL选择数据库、修改数据库(修改数据库字符集、存储字符符格式)、删除数据库 选择数据库为什么要选择数据库? 因为数据是存储到数据表,表存储在数据库下。如果要操作数据,那么必须要进入到对应的数据库才行。 ...
MySQL中涉及的几个字符集 character-set-server/default-character-set:服务器字符集,默认情况下所采用的。 character-set-database:数据库字符集。 character-set-table:数据库表字符集。 优先级依次增加。所以...
04-第四部-老男孩MySQL乱码问题及字符集实战(14节) 05-第五部-老男孩MySQL备份-增量备份及数据恢复基础实战(12节) 06-第六部-老男孩MySQL主从复制原理及实战部署(10节) 07-第七部-老男孩MySQL主从复制企业级...
│ 6_MySQL字符集和排序规则.mp4 │ 作业.docx │ 锁等待分析.txt │ ├─新版MySQL DBA综合实战班 第08天 │ 1_课堂作业讲解.mp4 │ 2_MySQL乱码原理讲解.mp4 │ 3_MySQL排序规则权重.mp4 │ 4_MySQL字符集空间...