如何更改mysql数据库的字符集

如何更改mysql数据库的字符集,第1张

(1) 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,

如 default-character-set = utf8

character_set_server = utf8

修改完后,重启mysql的服务,service mysql restart

使用 mysql>SHOW VARIABLES LIKE 'character%'查看,发现数据库编码均已改成utf8

+--------------------------+---------------------------------+ | Variable_name | Value | +--------------------------+---------------------------------+| character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | D:"mysql-5.0.37"share"charsets" | +--------------------------+---------------------------------+

(2) 还有一种修改mysql默认字符集的方法,就是使用mysql的命令

mysql>SET character_set_client = utf8 mysql>SET character_set_connection = utf8 mysql>SET character_set_database = utf8 mysql>SET character_set_results = utf8mysql>SET character_set_server = utf8mysql>SET collation_connection = utf8 mysql>SET collation_database = utf8 mysql>SET collation_server = utf8

一般就算设置了表的mysql默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:

SET NAMES 'utf8'

它相当于下面的三句指令:

SET character_set_client = utf8 SET character_set_results = utf8 SET character_set_connection = utf8

方法/步骤

如果没有配置好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

方法1:通过客户端修改表字段的默认字符集

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

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

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

方法2:用数据库命令修改字符集

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

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

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

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

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

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

或者修改mysql的my.ini文件中的字符集键值

[mysql]

[mysqld]

重启mysql


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

原文地址: https://outofmemory.cn/sjk/10020630.html

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

发表评论

登录后才能评论

评论列表(0条)

保存