关于mysql数据库转换为utf8的信息

发布时间:2022-11-14

本文目录一览:

  1. 怎么把mysql的默认编码改成utf-8
  2. 如何更改MySQL数据库编码为UTF-8或者GB2312?
  3. 怎么修改mysql数据库字符集编码为utf-8
  4. 如何设置mysql数据库为utf-8编码

怎么把mysql的默认编码改成utf-8

检查当前数据库编码。 使用语句:

show variables like '%character%';
show variables like '%collation%';

如果不是以上情况,需要将mysql编码设置为utf-8。具体步骤如下: 如果安装mysql时安装了"MySql Sever Instance Configuration Wizard",则只需要启动该程序进行相应设置即可。如下面截图中所描述,需要将默认编码设置为utf8 如果没有该程序,需要手动修改mysql编码。

  1. 编辑MySql的配置文件 MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一般是 /etc/my.cnf
  • [mysqld] 标签下加上以下内容:
default-character-set = utf8
character_set_server = utf8

注意:如果此标签下已经存在“default-character-set=GBK”类似的内容,只需修改即可。

  • [mysql] 标签下加上一行
default-character-set = utf8
  • [mysql.server] 标签下加上一行
default-character-set = utf8
  • [mysqld_safe] 标签下加上一行
default-character-set = utf8
  • [client] 标签下加上一行
default-character-set = utf8
  1. 重新启动MySql服务 Windows可在服务管理器中操作,也可使用命令行:
net stop mysql
net start mysql

服务名可能不一定为mysql,请按自己的设置 Linux下面可以使用:

service mysql restart

如果出现启动失败,请检查配置文件有没有设置错误 3. 查看设置结果 登录MySql命令行客户端:打开命令行

mysql -uroot -p

输入密码 进入mysql后 执行:

show variables like "% character %";

另外: 建立数据库时可以使用以下命令:

create database app_relation character set utf8;
use app_relation;
source app_relation.sql;

修改数据库编码的命令为:

alter database app_relation character set utf8;

如何更改MySQL数据库编码为UTF-8或者GB2312?

mysql 创建数据库时指定编码很重要,很多开发者都使用了默认编码,乱码问题可是防不胜防。制定数据库的编码可以很大程度上避免倒入导出带来的乱码问题。 网页数据一般采用UTF8编码,而数据库默认为latin 。我们可以通过修改数据库默认编码方式为UTF8来减少数据库创建时的设置,也能最大限度的避免因粗心造成的乱码问题。 我们遵循的标准是,数据库,表,字段和页面或文本的编码要统一起来 我们可以通过命令查看数据库当前编码:

SHOW VARIABLES LIKE 'character%';

发现很多对应的都是 latin1,我们的目标就是在下次使用此命令时latin1能被UTF8取代。 第一阶段: mysql设置编码命令

SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;
SET character_set_server = utf8;

然后执行:

SHOW VARIABLES LIKE 'character%';

你可以看到全变为 utf8。 但是,这只是一种假象 此种方式只在当前状态下有效,当重启数据库服务后失效。 所以如果想要不出现乱码只有修改my.ini文件, 从my.ini下手(标签下没有的添加,有的修改)

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
default-character-set=utf8

以上3个section都要加default-character-set=utf8,平时我们可能只加了mysqld一项。 然后重启mysql,执行:

SHOW VARIABLES LIKE 'character%';

确保所有的Value项都是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 latin1
character_set_system utf8
注意该配置 character_set_server 无法设置成UTF8,交互时候仍然会出现乱码。
第二阶段:找到下面这东东
X:\%path%\MySQL\MySQL Server 5.0\bin\MySQLInstanceConfig.exe

重新启动设置,将默认编码设置为utf8。这样就能达到我们所要的效果了。

SHOW VARIABLES LIKE 'character%';

+--------------------------+---------------------------------------------------------+ | 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 | C:\Program Files\MySQL\MySQL Server 5.0\share\charsets\ | +--------------------------+---------------------------------------------------------+ 8 rows in set

怎么修改mysql数据库字符集编码为utf-8

你要是用一个可视化操作的界面就简单了,就比如navicat for mysql 右键数据库 -> 数据库属性 -> 字符集 -> utf-8 unicode 排序规则 -> utf8-general-ci就行了

如何设置mysql数据库为utf-8编码

以更改为UTF-8为例,GB2312雷同。

  1. 关闭mysql服务(以下为命令行中执行)
service mysql stop
  1. 修改 /etc/mysql/my.cnf(默认的安装路径)
vim /etc/mysql/my.cnf

打开my.cnf后,在文件内的[mysqld]下增加如下两行设置:

character_set_server=utf8
init_connect='SET NAMES utf8'

然后保存退出。 3. 重新启动mysql服务

service mysql start

至此,完成修改默认编码,登陆mysql后重新使用 show variables like '%character%' 获得的输出效果