设定mysql的默认字符集
admin
2023-05-20 09:42:32
0

mysql> show global variables like '%charac%';    --查看当前mysql采用的字符集


mysql>show global variables like '%server%';    --查看当前服务端全局字符集


+----------------------+--------------------+

| Variable_name        | Value       |       

+----------------------+--------------------+

| character_set_server | latin1         |

| collation_server    | latin1_swedish_ci 

+----------------------+--------------------+

2 rows in set (0.00 sec)


如何修改为我们熟悉的UTF8字符集呢?以下列出两种:


  1. 修改my.cnf文件,需重启服务,长期有效


在server下添加两行:

character_set_server=utf8

collation_server=utf8_general_ci


2.修改mysql变量,不用重启,建立新会话时生效,但重启后失效.


mysql> set global character_set_server=utf8;        --修改当前字符集为utf8,不加global 却仅对当前会话有效.


3.在客户端指定要使用的字符集

mysql>set character-set_results=gbk;              --在客户端设定


4.设定当前会话使用的字符集:

mysql>set names gbk;                     --设定当前会话使用gbk字符集.


5.mysql>set character set  gbk;                --设定当前系统的变量为GBK

 mysql>set charset gbk;                     --与上句相同

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


mysql>show create table 表名;                 --查看建表时使用的字符集

mysql> alter database 数据库名 character set utf8;       --更改数据库默认字符集utf8,更新后新建表格将采用新的字符集

mysql> alter table 表名 character set utf8;           --更改表格默认字符集为utf8,更新后添加的列将采用新的字符集

mysql> show full fields from 表名;                 --查看数据表的各列信息,包括列的字符集和可操作权限等

mysql>alter table 表名 modify 字段名  字段类型  CHARACTER SET utf8, modify 字段名 字段类型 CHARACTER SET utf8;          --更新字段字符集属性为utf8,我原来的为latin1,不能插入中文


-------------------------------------------------------------------------------------------------------------------------------------- 练练手 --------------------------------------------------------------


mysql>create database test2 charset gbk;          --建立test2数据库时指定字符集为GBK,此后在此库下建立新表格,默认采用GKB字符集;

mysql>alter database test2 charset utf8;          --更改默认字符集为utf8;更改后在此库下新建表格采用utf8字符集。

mysql>show create database tests;               --查询新建数据时的信息


mysql> create table ab (id char(10)) charset gbk;    --用gbk字符集新建一个表ab

mysql>alter table ab charset utf8;               --更改ab默认字符集为utf8

mysql>create table bd(id char(10) charset gbk);      --建表时指定id字段用gbk字符集

mysql>show create table ab;                    --查询建ab表时用的信息。


更改字符集需谨慎!

修改表和列的字符集时要考虑字符集的兼容,不然在mysql转换过程中会丢失数据,并不可还原。

相关内容

热门资讯

“抗生素牛蛙”为何难杀? “抗生素牛蛙”,又重出江湖了!准确说,一直就隐匿在江湖根除不尽,太难杀了!近日,有媒体随机网购了一些...
没招了?美媒爆料:美军群发邮件... 据美国有线电视新闻网(CNN)8月3日报道,多名消息人士透露,美军中央司令部的高级官员上周发出一封群...
“荷兰弟”替身是个“河南弟”:... 封面新闻记者 王一理目前,电影《蜘蛛侠:崭新之日》正在热映中。8月2日,河南演员王壮壮发文表示,自己...
3人用AI合成700多份不雅照... 近日,山东德州,当地邮政部门工作人员发现多处邮箱出现笔迹一致的可疑信件,收件人多为企业高管、老板等。...
他扮演蜘蛛侠涨粉千万,流量密码... Joshua Watson(约书亚·沃森)是一位美国知名的视觉特效(VFX)内容创作者和社交媒体影响...
国企信创数字化改造,部署 AI... 国企信创数字化改造,最难的不是把 AI 智能体“装上去”,而是让它在国产电脑、国产操作系统和现有业务...
三宜电气申请户外高压限流熔断器... 国家知识产权局信息显示,浙江三宜电气有限公司申请一项名为“一种户外高压限流熔断器”的专利,公开号CN...
AI+物理未来在哪?量子计算大... 8月3日,为期三天的“第五届CCF量子计算大会暨大湾区量子科学论坛”(以下简称“量子计算大会”)在深...
求问空气净化器有用吗?什么品牌... 最佳回答 空气净化器当然是有用的呀,真的可以起到净化室内空气的作用。目前市面上卖得最火的空气净化器都...
哪个品牌的座便器好 我家用的就是箭牌价格有贵的有便宜的,性价比比较高,他们的价格1000多的20000的都有像我们买20...