mysql 更改数据库字符编码的方法

mysql 更改数据库字符编码的方法,第1张

mysql如何更改数据库字符编码?借助客户端工具很容易就可以更改了,下面来看一下。

01

打开navicat客户端工具,在左边找到要更改的数据库。

02

右键点击这个数据库,在菜单上点击数据库属性选项。

03

在d出的属性窗口上,点击默认字符集下的下拉框。

04

在d出的下拉选项里,点击选中要使用的字符集就行了,比如选择常用的utf8字符集,点击ok按钮就行了。

1. 查看MySQL数据库的默认编码

有如下两种方式,

(1)使用status命令

mysql>status

图1 status命令

(2)使用show variables命令

mysql>show variables like 'char%'

图2 show variables命令

如果要查看某个数据库的编码,在运行上面的命令前,应先执行use db_name命令切换数据库(db_name为要查看的数据库名)。

2. 改变MySQL数据库的默认编码

安装MySQL数据库时的默认编码是latin1,实际使用时可能要使用其他编码。下文描述如何将默认编码改为utf8:

首先修改MySQL的配置文件/etc/mysql/my.cnf:

在[client]下追加:

default-character-set=utf8

在[mysqld]下追加:

character-set-server=utf8

在[mysql]下追加:

default-character-set=utf8

修改完毕后,使用如下命令之一重启mysql服务:

service mysql restart

/etc/init.d/mysql restart

改变后,之前手工创建的数据库如未显式指定编码,则其编码仍是默认的latin1,可使用如下命令更改编码:

mysql>alter database db_name CHARACTER SET utf8

参考资料:

[1] http://www.2cto.com/os/201404/292378.html

查看字符集设置

mysql>show variables like 'collation_%'

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

| Variable_name | Value|

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

| collation_connection | utf8_general_ci |

| collation_database| utf8_general_ci |

| collation_server | utf8_general_ci |

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

3 rows in set (0.02 sec)

mysql>show variables like 'character_set_%'

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

| 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| /usr/share/mysql/charsets/ |

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

8 rows in set (0.02 sec)

mysql>

其他的一些设置方法:

修改数据库的字符集

mysql>use mydb

mysql>alter database mydb character set utf-8

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

mysql>create database mydb character set utf-8

通过配置文件修改:

修改/var/lib/mysql/mydb/db.opt

default-character-set=latin1

default-collation=latin1_swedish_ci

default-character-set=utf8

default-collation=utf8_general_ci

重起MySQL:

[root@bogon ~]# /etc/rc.d/init.d/mysql restart

通过MySQL命令行修改:

mysql>set character_set_client=utf8

Query OK, 0 rows affected (0.00 sec)

mysql>set character_set_connection=utf8

Query OK, 0 rows affected (0.00 sec)

mysql>set character_set_database=utf8

Query OK, 0 rows affected (0.00 sec)

mysql>set character_set_results=utf8

Query OK, 0 rows affected (0.00 sec)

mysql>set character_set_server=utf8

Query OK, 0 rows affected (0.00 sec)

mysql>set character_set_system=utf8

Query OK, 0 rows affected (0.01 sec)

mysql>set collation_connection=utf8

Query OK, 0 rows affected (0.01 sec)

mysql>set collation_database=utf8

Query OK, 0 rows affected (0.01 sec)

mysql>set collation_server=utf8

Query OK, 0 rows affected (0.01 sec)

查看:

mysql>show variables like 'character_set_%'

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

| 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| /usr/share/mysql/charsets/ |

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

8 rows in set (0.03 sec)

mysql>show variables like 'collation_%'

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

| Variable_name | Value|

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

| collation_connection | utf8_general_ci |

| collation_database| utf8_general_ci |

| collation_server | utf8_general_ci |

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

3 rows in set (0.04 sec)


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

原文地址: https://outofmemory.cn/zaji/6122265.html

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

发表评论

登录后才能评论

评论列表(0条)

保存