首页 / MYSQL / Mysql数据库乱码与编码问题筛查
Mysql数据库乱码与编码问题筛查
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Mysql数据库乱码与编码问题筛查,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1793字,纯文字阅读大概需要3分钟。
内容图文
![Mysql数据库乱码与编码问题筛查](/upload/InfoBanner/zyjiaocheng/532/4deed8822caf4746a3eb16f21a4de482.jpg)
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 最近接连遇到数据库编码问题,让你的系统本来像个美丽的姑娘却忽然发现她不识字一样难受,其实很多时候是编码的问题,而mysql(特别地)设计编码的地方很多,在这里做一个筛查: 1 mysql编码 用下面
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入
最近接连遇到数据库编码问题,让你的系统本来像个美丽的姑娘却忽然发现她不识字一样难受,其实很多时候是编码的问题,而mysql(特别地)设计编码的地方很多,在这里做一个筛查:
1 mysql编码
用下面的命令可以查看mysql当前的各种默认编码:
showvariables like 'character\_set\_%';
可以看到目前mysql的默认编码;
showvariables like 'collation_%';
my.cnf中设置对应的编码:
[client]
default-character-set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
[mysql]
default-character-set=utf8
[mysqldump]
default-character-set=utf8
2 数据库编码:
CREATE DATABASE IF NOT EXISTS my_db DEFAULT CHARSET utf8COLLATE utf8_general_ci;
3. 数据表编码
/*!40101SET @saved_cs_client
=@@character_set_client */;
/*!40101SET character_set_client = utf8 */;
CREATETABLE `access` (
`id` int(8) unsigned NOT NULL AUTO_INCREMENT,
`role_id` smallint(6) unsigned NOT NULL,
`node_id` smallint(6) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `nodeId` (`node_id`)
)ENGINE=MyISAM AUTO_INCREMENT=364 DEFAULTCHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
4. 转存的时候
有时候需要转存数据库,但是好好的数据库转到新库就乱码了,你可能需要:
#mysqldump --default-character-set utf8 -u root -pmypass mydb> mydb.sql
5. 查询的时候
有时候,虽然mysql、数据库、数据表以及导出的数据sql文件编码都没问题,但是query出来仍然出现乱码,可能是因为,在query的时候也需要设置编码,函数名称大同小异,在php+mysql中是:
mysql_query('set names utf8');
内容总结
以上是互联网集市为您收集整理的Mysql数据库乱码与编码问题筛查全部内容,希望文章能够帮你解决Mysql数据库乱码与编码问题筛查所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。