Mysql5.5中设置utf-8编码、大小写、root启动的问题

这个问题说大不大,说是小问题也很关键,有的时候真让人头疼

 

由于编程语言都是老外发明的,本身并不支持中文的输入和显示,所以我们就要声明一种编码来让我们的程序支持中文,utf-8是最常用的一种

mysql5.1和之前的版本是在[mysqld]金沙城中心赌场 ,节点下添加 

这里是百度百科对于utf-8的概述:

Java代码  

UTF-8(8-bit Unicode Transformation
Format)是一种针对Unicode的可变长度字符编码,又称万国码。由Ken
Thompson于1992年创建。现在已经标准化为RFC
3629。UTF-8用1到4个字节编码UNICODE字符。用在网页上可以同一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。

default-character-set = utf8  

通常我们写python程序的时候都要在文件最上面声明程序用utf-8编码,格式如下

 

# -*- coding: utf-8 -*-

5.5的mysql设置方式修改为 

还有两种简略的形式

 

# coding:utf-8 或 # coding=utf-8

Java代码  

个人比较喜欢第一种,看起来更美观

character_set_server = utf8  

有的时候我们的程序需要解析文件中的内容或者解析从网页上获取到的内容,这时候就可能出现各种不可见的编码,让人头痛。一种暴力的解决方式就是用reload(sys)方法

 

import sys

reload(sys)
sys.setdefaultencoding('utf-8')

配置文件文件仍旧为 /etc/my.cnf 

但是,但是,但是,有的时候这种暴力的方法也不管用。这个时候我们就需要用chardet检测一下可能出现问题的字符串,看看到底是哪里出的问题。

 

import chardet
chardet.detect(str)

如果文件不存在,可以从MYSQL解压目录/support-files/my-**.cnf重命名拷贝过去一个 

这样就可以输出这个字符串的编码,到底是什么问题就要对症下药了

 

注意权限问题 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图