mysql数据库转换编码,改变mysql数据库编码

发布时间:2022-11-17

本文目录一览:

  1. mysql 更改数据库的编码
  2. 如何解决MySQL表编码转换问题
  3. 怎样更改MySQL数据库编码为UTF
  4. 如何对mysql中的字符进行编码转换
  5. 如何更改MySQL数据库编码为UTF-8或者GB2312?
  6. mysql数据库怎么改它的字符集编码???

mysql 更改数据库的编码

mysql支持中文字段的。我的mysql就是gb2312的编码方式,上面的建表语句能建表。最简单的方式就是修改配置文件,先关闭mysql的服务。打开mysql的安装目录,里面有个my.ini的文件,打开它,将下面的两个设置改为gb2312:

default-character-set=gb2312

修改好这两个设置后,启动服务即可。

如何解决MySQL表编码转换问题

Step 1:导出数据库为UTF8编码

使用以下命令将原来的gbk编码的数据库导出为utf8编码(采用gzip压缩):

/usr/local/mysql/bin/mysqldump -uroot -proot \
--compatible=mysql40 \
--default-character-set=utf8 \
--extended-insert \
--force \
--add-locks \
--add-drop-table \
discuz | /usr/bin/gzip -9 > /home/ftp/backup/bak_1227.sql.gz

Step 2:导入到UTF8编码的数据库

将备份文件下载到本地并解压:

gunzip bak_1227.sql.gz

然后导入到本地测试库wwwtest(手动创建时选择utf8_general_ci编码):

/usr/local/mysql/bin/mysql -uroot -proot wwwtest < /home/ftp/backup/bak_1227.sql

注意:导出时使用 --default-character-set=utf8 确保导出的文件为utf8格式,--compatible=mysql40 防止原数据库的编码设置被导出,避免导入时表编码仍为gbk。


怎样更改MySQL数据库编码为UTF

如果没有配置好cmd中的MySQL环境变量,请先在系统高级设置中设置MySQL的环境变量。

  1. 按下 Win+R,输入 cmd 回车。
  2. 登录数据库。
  3. 查看数据库字符编码:
SHOW VARIABLES LIKE 'character%';

修改字符集设置(临时)

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;
SET character_set_system=utf8;
SET collation_connection=utf8;
SET collation_database=utf8;
SET collation_server=utf8;

修改数据库字符集(永久)

修改数据库的字符集:

ALTER DATABASE mydb CHARACTER SET utf8;

创建数据库时指定字符集:

CREATE DATABASE mydb CHARACTER SET utf8;

如何对mysql中的字符进行编码转换

进入 mysql\bin 目录,使用 mysqldump 工具执行以下命令:

mysqldump --u=root -p --default-character-set=latin1 --set-charset=utf8 --skip-opt --result-file=c:\mytable.sql mydb mytable
  • latin1:源表编码
  • utf8:目标编码
  • c:\mytable.sql:导出文件路径
  • mydb:数据库名
  • mytable:表名 执行后输入密码,导出完成后,用UE等工具打开查看编码是否已转换。

修改导出文件

在文件开头的建表语句中添加:

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

保存文件后,将原表改名备份,再导入新文件:

mysql -u root -p mydb < c:\mytable.sql

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

MySQL创建数据库时指定编码非常重要,很多乱码问题都是由于默认编码设置不当引起的。建议统一使用UTF8编码。

查看当前编码

SHOW VARIABLES LIKE 'character%';

设置编码(临时)

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;

修改配置文件(永久)

编辑 my.ini 文件,在以下三个部分添加或修改:

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

重启MySQL服务后再次执行:

SHOW VARIABLES LIKE 'character%';

确保所有值都为 utf8

mysql数据库怎么改它的字符集编码???

在Unix系统下,可以编辑 my.cnf 文件进行编码修改;在Windows下,可以使用 MySQL Server Instance Config Wizard 进行设置。

Linux系统下修改 my.cnf

找到 [client] 部分添加:

default-character-set=utf8

找到 [mysqld] 部分添加:

default-character-set=utf8
init_connect='SET NAMES utf8'

修改完成后重启MySQL服务:

SHOW VARIABLES LIKE 'character%';

此方法适用于标准MySQL版本。如果 /etc/my.cnf 文件不存在,可以从 mysql/support-files 复制 my-large.cnf/etc/my.cnf