如何在mysql中存取utf8mb4编码的字符

1、在修改数据库编码前先对数据库备份(虽然utf8mb4兼容utf8,但有备无患)2、修改数据库的编码、表的编码、列的编码为utf8mb4 3、在Mysql数据库配置文件(my.ini)中加入如下设置 [client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]character-set-client-...
如何在mysql中存取utf8mb4编码的字符
utf8编码可以支持一到4字节的字符编码,在mysql用我们一般使用utf8编码来处理字符类型,通常情况下都没有问题,但遇到4字节编码的字符,在数据存取的时候就会有问题了。
通常我们可能会得到一个错误或者警告:Incorrect string value: '/xF0/x9D/x8C/x86' for column ...
Mysql 从5.5.3版本开始支持4字节的utf8编码,如果你的Mysql数据库是5.5.3+,按照以下步骤就能解决这个问题,如果版本低于5.5.3,是不是可以考虑升级数据库版本呢?
1、在修改数据库编码前先对数据库备份(虽然utf8mb4兼容utf8,但有备无患)
2、修改数据库的编码、表的编码、列的编码为utf8mb4
3、在Mysql数据库配置文件(my.ini)中加入如下设置

[client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci

重新启动Mysql数据库,确认设置生效

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-5.5.33/share/charsets/ |+--------------------------+----------------------------------------+8 rows in set

4、在获取数据库连接的时候执行sql:set names utf8mb4;我使用的是alibaba的开源数据库连接池程序,在配置文件中增加一行如下配置

<property name="connectionInitSqls" value="set names utf8mb4;" />

重新启动应用程序,问题解决2014-12-21
utf8编码可以支持一到4字节的字符编码,在mysql用我们一般使用utf8编码来处理字符类型,通常情况下都没有问题,但遇到4字节编码的字符,在数据存取的时候就会有问题了。
通常我们可能会得到一个错误或者警告:Incorrect string value: '/xF0/x9D/x8C/x86' for column ...
Mysql 从5.5.3版本开始支持4字节的utf8编码,如果你的Mysql数据库是5.5.3+,按照以下步骤就能解决这个问题,如果版本低于5.5.3,是不是可以考虑升级数据库版本呢?
1、在修改数据库编码前先对数据库备份(虽然utf8mb4兼容utf8,但有备无患)
2、修改数据库的编码、表的编码、列的编码为utf8mb4
3、在Mysql数据库配置文件(my.ini)中加入如下设置

[client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci

重新启动Mysql数据库,确认设置生效

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-5.5.33/share/charsets/ |+--------------------------+----------------------------------------+8 rows in set

4、在获取数据库连接的时候执行sql:set names utf8mb4;我使用的是alibaba的开源数据库连接池程序,在配置文件中增加一行如下配置

<property name="connectionInitSqls" value="set names utf8mb4;" />

重新启动应用程序,问题解决。2015-06-26
mengvlog 阅读 45 次 更新于 2025-10-31 02:53:50 我来答关注问题0
  • utf8编码可以支持一到4字节的字符编码,在mysql用我们一般使用utf8编码来处理字符类型,通常情况下都没有问题,但遇到4字节编码的字符,在数据存取的时候就会有问题了。\x0d\x0a通常我们可能会得到一个错误或者警告:Incorrect string value: '/xF0/x9D/x8C/x86' for column ...\x0d\x0aMysql ...

  •  翡希信息咨询 把一个已经按gbk编码的mysql库转成utf-8?

    首先,确保对原数据库进行完整的备份,以防在转换过程中出现数据丢失或其他意外情况。可以使用mysqldump或其他数据库管理工具导出数据库内容。创建新的UTF8编码数据库:在MySQL中创建一个新的数据库,并指定其字符集和排序规则为UTF8。例如,使用以下SQL语句:sqlCREATE DATABASE new_database_name CHARACTER...

  • (1)打开MySQL的配置文件my.cnf,一般在/etc/mysql/目录下;(2)找到[mysqld]下的字符集设置,一般为”default-character-set=”,将其修改为”default-character-set=utf8″;(3)找到[client]下的字符集设置,一般也是”default-character-set=”,将其修改...

  •  j88r 怎么将数据库的编码改成utf-8

    1、关闭mysql服务 [plain] view plaincopy service mysql stop 2、修改 /etc/mysql/my.cnf (默认的安装路径)[plain] view plaincopy vim /etc/mysql/my.cnf 打开my.cnf后,在文件内的[mysqld]下增加如下两行设置:[plain] view plaincopy character_set_server=utf8 init_connect='SET NAMES u...

  •  翡希信息咨询 记住:永远不要在MySQL中使用“utf8”,请使用“utf8mb4”

    验证数据:在迁移后,验证数据是否完整且正确存储。特别是那些包含特殊字符和表情符号的数据。五、结论 由于MySQL中的“utf8”字符集不是真正的UTF-8编码,且存在兼容性和完整性问题,因此建议永远不要在MySQL中使用“utf8”。相反,应使用“utf8mb4”字符集来确保数据的完整性和兼容性。在迁移到“utf...

檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部