MySQL5.1字符集设置

php中文网
发布: 2016-06-07 15:35:01
原创
1513人浏览过

查看MySQL能够支持的多种字符集: show character set; 查看字符集的校对规则: show collation; show collation like 'gb%'; 每个字符集有一个默认校对规则。 ------------------------------------------------------------------------------------------

查看MySQL能够支持的多种字符集:
show character set;

查看字符集的校对规则:
show collation;
show collation like 'gb%';

每个字符集有一个默认校对规则。

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

I-Shop购物系统
I-Shop购物系统

部分功能简介:商品收藏夹功能热门商品最新商品分级价格功能自选风格打印结算页面内部短信箱商品评论增加上一商品,下一商品功能增强商家提示功能友情链接用户在线统计用户来访统计用户来访信息用户积分功能广告设置用户组分类邮件系统后台实现更新用户数据系统图片设置模板管理CSS风格管理申诉内容过滤功能用户注册过滤特征字符IP库管理及来访限制及管理压缩,恢复,备份数据库功能上传文件管理商品类别管理商品添加/修改/

I-Shop购物系统 0
查看详情 I-Shop购物系统

创建数据库时设置字符集和字符校对规则:
create database db_name default character set utf8 default collate utf8_general_ci;

修改数据库的设置字符集和字符校对规则:
alter database db_name default character set gb2312 default collate gb2312_chinese_ci;

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

创建表时指定表和列的字符集与表和列字符校对规则:
create table table_name(
   id int primary key,
   name varchar(100) character set gb2312 collate gb2312_chinese_ci
)default character set gb2312 default collate gb2312_chinese_ci;

修改表的字符集与表的字符校对规则:
alter table table_name default character set utf8 default collate utf8_general_ci;
修改表的列的字符集与表的列的字符校对规则:
alter table table_name modify name varchar(100) character set utf8 collate utf8_general_ci;

查看表的字符集与字符校对规则:
show create table table_name;

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

字符集和校对规则的系统变量
查看字符集系统变量:
show variables like 'character_set_%';
查看校对规则系统变量:
show variables like 'collation_%';

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

字符集系统变量介绍:
character_set_server:默认的内部操作字符集
character_set_client:客户端来源数据使用的字符集
character_set_connection:连接层字符集
character_set_results:查询结果字符集
character_set_database:当前选中数据库的默认字符集
character_set_system:系统元数据(字段名等)字符集

字符集转换过程:
1. MySQL Server收到请求时将请求数据从character_set_client转换为character_set_connection
2. 进行内部操作前将请求数据从character_set_connection转换为内部操作字符集

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

修改连接字符集:
set names utf8;
等价于:
set character_set_client = utf8;
set character_set_results = utf8;
set character_set_connection = utf8;
 
注:MySQL服务重新启动后失效。

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

window下配置字符集
%MySQL5.1_HOME%/my.ini
my.ini文件中修改

客户端字符集修改,找到:
------------------------------------------------------------------------------
[client]
port=3306
[mysql]
default-character-set=GBK
------------------------------------------------------------------------------
修改为:
------------------------------------------------------------------------------
[client]
port=3306
[mysql]
default-character-set=GB2312
------------------------------------------------------------------------------

服务器端字符集修改,找到:
------------------------------------------------------------------------------
[mysqld]
port=3306
default-character-set=GBK
------------------------------------------------------------------------------
修改为:
------------------------------------------------------------------------------
[mysqld]
port=3306
default-character-set=GB2312
------------------------------------------------------------------------------

重新启动服务
再查看字符集系统变量:show variables like 'character_set_%';

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

liunx下配置字符集
找到文件:
/usr/share/mysql/my-medium.cnf
复制该文件到/etc目录下:
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

my.cnf文件中修改

客户端字符集修改,找到:
------------------------------------------------------------------------------
[client]
------------------------------------------------------------------------------
增加default-character-set,变为:
------------------------------------------------------------------------------
[client]
default-character-set=UTF8
------------------------------------------------------------------------------

服务器端字符集修改,找到:
------------------------------------------------------------------------------
[mysqld]
------------------------------------------------------------------------------
增加default-character-set,变为:
------------------------------------------------------------------------------
[mysqld]
default-character-set=UTF8
------------------------------------------------------------------------------

重新启动mysql: /ect/init.d/mysql restart
再查看字符集系统变量:show variables like 'character_set_%';

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

MySQL的JDBC连接URL:
jdbc:mysql://localhost:3306/test?user=root&password=root&useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false

在使用数据库连接池的情况下,最好设置如下两个参数:
autoReconnect=true&failOverReadOnly=false

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号