如何修改MySQL字符集

如何修改MySQL字符集,第1张

方法/步骤

如果没有配置好cmd里面的mysql 环境变量,那就在系统高级设置那儿进行MySQL的环境变量设置。

win+R,调出“运行”,输入cmd,回车

登录数据库

查看数据库

查看数据库字符编码

通过MySQL命令行修改:(编码可选)

mysql> set character_set_client=utf8;

mysql> set character_set_connection=utf8;

mysql> set character_set_database=utf8;

mysql> set character_set_results=utf8;

mysql> set character_set_server=utf8;

mysql> set character_set_system=utf8;

mysql> set collation_connection=utf8;

mysql> set collation_database=utf8;

mysql> set collation_server=utf8;

当然还有:

修改数据库的字符集mysql>use mydb

mysql>alter database mydb character set utf8;

创建数据库指定数据库的字符集

mysql>create database mydb character set utf8;

分不同的类型,可按以下三种方式查询:

一、查看MySQL数据库服务器和数据库MySQL字符集。

命令:

mysql> show variables like '%char%';

二、查看MySQL数据表(table)的MySQL字符集。

命令:

mysql> show table status from sqlstudy_db like '%countries%';

三、查看MySQL数据列(column)的MySQL字符集。

命令:

mysql> show full columns from countries;

1、MySQL默认的字符集是UTF8;

2、对于字符集的支持细化到四个层次:服务器(server),数据库(database),数据表(table)和连接(connection)。

3、具体的字符集可以通过修改配置文件(mycnf)进行调整。

utf8编码可以支持一到4字节的字符编码,在mysql用我们一般使用utf8编码来处理字符类型,通常情况下都没有问题,但遇到4字节编码的字符,在数据存取的时候就会有问题了。\x0d\通常我们可能会得到一个错误或者警告:Incorrect string value: '/xF0/x9D/x8C/x86' for column \x0d\Mysql 从553版本开始支持4字节的utf8编码,如果你的Mysql数据库是553+,按照以下步骤就能解决这个问题,如果版本低于553,是不是可以考虑升级数据库版本呢?\x0d\1、在修改数据库编码前先对数据库备份(虽然utf8mb4兼容utf8,但有备无患)\x0d\2、修改数据库的编码、表的编码、列的编码为utf8mb4\x0d\3、在Mysql数据库配置文件(myini)中加入如下设置\x0d\\x0d\[client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci\x0d\\x0d\重新启动Mysql数据库,确认设置生效\x0d\\x0d\mysql> show VARIABLES like '%char%';+--------------------------+----------------------------------------+| Variable_name | Value |+--------------------------+----------------------------------------+| character_set_client | utf8 || character_set_connection | utf8 || character_set_database | utf8mb4 || character_set_filesystem | binary || character_set_results | utf8 || character_set_server | utf8mb4 || character_set_system | utf8 || character_sets_dir | /home/app/mysql-5533/share/charsets/ |+--------------------------+----------------------------------------+8 rows in set\x0d\\x0d\4、在获取数据库连接的时候执行sql:set names utf8mb4;我使用的是alibaba的开源数据库连接池程序,在配置文件中增加一行如下配置\x0d\\x0d\\x0d\\x0d\重新启动应用程序,问题解决

通过客户端修改表字段的默认字符集

1

打开SQLyog客户端,连接数据库如下图所示,点击connection 按钮 连接数据库

2

我的数据库名称为edu,然后我随意找到数据库中test2表,右键-----》Alter Table

3

如果安装数据库的 时候 没有选择字符集设置,那么mysql数据库默认为latin1,在箭头部分选择utf8字符集

END

用数据库命令修改字符集

1

首先查看当前数据库字符集,在命令框中执行如下命令:show variables like 'character_set_%';

2

查看字符集排序设置,执行命令:show variables like 'collation_%';

3

修改服务器级别字符集,执行命令:

1,临时修改:SET GLOBAL character_set_server=utf8;

2,永久修改:打开/etc/mysql/mycnf,在[mysqld]后添加character-set-server=utf8

4

修改表级别,命令如下:ALTER TABLE table_name DEFAULT CHARSET utf8;

修改数据库级别,命令如下:use edu(换成你要修改的数据库名,在这里我的数据库为edu),,然后执行命令:alter database edu character set utf-8;

5

或者修改mysql的myini文件中的字符集键值

[mysql]

default-character-set=utf8

[mysqld]

character-set-server=utf8

重启mysql

以上就是关于如何修改MySQL字符集全部的内容,包括:如何修改MySQL字符集、怎样查看mysql自定义数据库的编码字符集、mysql默认字符集是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9307914.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存