问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

mysql怎么转换成utf8字符集

发布网友 发布时间:2024-02-06 13:56

我来回答

1个回答

热心网友 时间:2024-08-03 23:33

整理 MySQL 8.0 文档时发现一个变更:
默认字符集由 latin1 变为 utf8mb4。想起以前整理过字符集转换文档,升级到 MySQL 8.0 后大概率会有字符集转换的需求,在此正好分享一下。
当时的需求背景是:
部分系统使用的字符集是 utf8,但 utf8 最多只能存 3 字节长度的字符,不能存放 4 字节的生僻字或者表情符号,因此打算迁移到 utf8mb4。
迁移方案一1. 准备新的数据库实例,修改以下参数:[mysqld]## Character Settingsinit_connect='SET NAMES utf8mb4'#连接建立时执行设置的语句,对super权限用户无效character-set-server = utf8mb4collation-server = utf8mb4_general_ci#设置服务端校验规则,如果字符串需要区分大小写,设置为utf8mb4_binskip-character-set-client-handshake#忽略应用连接自己设置的字符编码,保持与全局设置一致## Innodb Settingsinnodb_file_format = Barracudainnodb_file_format_max = Barracudainnodb_file_per_table = 1innodb_large_prefix = ON#允许索引的最大字节数为3072(不开启则最大为767字节,对于类似varchar(255)字段的索引会有问题,因为255*4大于767)

2. 停止应用,观察,确认不再有数据写入
可通过 show master status 观察 GTID 或者 binlog position,没有变化则没有写入。
3. 导出数据
先导出表结构:mysqldump -u -p --no-data --default-character-set=utf8mb4 --single-transaction --set-gtid-purged=OFF --databases testdb > /backup/testdb.sql
后导出数据:mysqldump -u -p --no-create-info --master-data=2 --flush-logs --routines --events --triggers --default-character-set=utf8mb4 --single-transaction --set-gtid-purged=OFF --database testdb > /backup/testdata.sql

4. 修改建表语句
修改导出的表结构文件,将表、列定义中的 utf8 改为 utf8mb4
5. 导入数据
先导入表结构:mysql -u -p testdb < /backup/testdb.sql
后导入数据:mysql -u -p testdb < /backup/testdata.sql

6. 建用户
查出旧环境的数据库用户,在新数据库中创建
7. 修改新数据库端口,启动应用进行测试
关闭旧数据库,修改新数据库端口重启,启动应用
如何设置MySQL字符集为UTF-8?

打开服务器配置文件(如my.cnf或my.ini),找到[mysqld]部分。在[mysqld]部分中添加以下行:character-set-server=字符集名称 其中,字符集名称是您选择的字符集的名称。例如,如果您想使用UTF-8字符集,可以添加以下行:character-set-server=utf8 对于数据库级字符集,可以在创建数据库时指定字符集。

MySQL如何设置UTF8编码mysql中utf8

第一步:在my.cnf文件中设置字符集 在Linux上安装MySQL后,我们需要修改my.cnf文件来启用UTF8编码方式。该文件可以在/etc/mysql/目录下找到。我们需要在文件末尾添加以下内容:[client]default_character_set=utf8 [mysql]default_character_set=utf8 [mysqld]collation-server = utf8_unicode_ci init-...

mysql怎么转换成utf8字符集

迁移方案一1. 准备新的数据库实例,修改以下参数:[mysqld]## Character Settingsinit_connect='SET NAMES utf8mb4'#连接建立时执行设置的语句,对super权限用户无效character-set-server = utf8mb4collation-server = utf8mb4_general_ci#设置服务端校验规则,如果字符串需要区分大小写,设置为utf8mb...

怎样更改MySQL数据库编码为UTF-8或者GB2312,应该怎么做?

1、关闭mysql服务(以下为命令行中执行)view plaincopy service mysql stop 2、修改 /etc/mysql/my.cnf (默认的安装路径)view plaincopy vim /etc/mysql/my.cnf 打开my.cnf后,在文件内的[mysqld]下增加如下两行设置:character_set_server=utf8 init_connect='SET NAMES utf8'然后保存退出。3...

解决MySQL输入中文问题的方法简介mysql不能输中文

方法一:修改MySQL默认字符集 在MySQL中,支持多种字符集,其中,UTF-8字符集是最为常用的。如果想要支持中文字符输入,可以修改MySQL的默认字符集为UTF-8。具体步骤如下:1.打开MySQL的配置文件my.cnf;2.找到[mysqld]部分,在该部分下添加以下代码:character_set_server=utf8 collation-server=utf8_...

MySQL无法存储中文字符mysql不能存储汉字

1. 设置MySQL字符集 在MySQL中,可以通过修改配置文件my.cnf来设置字符集。打开my.cnf文件,在[mysqld]的节(camp)下添加以下两项配置:[mysqld]character_set_server=utf8 collation-server=utf8_general_ci 这将把MySQL的字符集设置为utf8,并将排序规则设置为utf8_general_ci。保存文件并重新启动...

MySQL中的1366错误问题解决方法mysql中1366

1)修改MySQL默认编码 将MySQL的默认编码改为“UTF-8”,方法如下:a. 编辑MySQL的配置文件my.cnf,找到[mysqld]行。b. 在该行下添加一个新行: charset=utf8 c. 保存并重启MySQL服务。2)修改表格的编码方式 如果无法更改默认编码,可以尝试修改每个需要对非ASCII字符集进行支持的表格的编码方式,...

请问在Mysql中如何把latin1字符集的数据库改为UTF8字符集

1、 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,如 default-character-set = utf8 character_set_server = utf8 修改完后,重启mysql的服务,service mysql restart 使用 mysql&gt; SHOW VARIABLES LIKE 'character%';查看,发现数据库编码均已改成utf8 +---+---+ | Variable_nam...

MySQL数据库不支持中文存储如何处理mysql不能存汉字

1. 使用 UTF8MB4 编码 UTF8MB4 是一种针对 MySQL 的 Unicode 字符集编码,可以支持存储中文字符。如果您的 MySQL 数据库的表和列使用了 UTF8 编码,那么您可以考虑将它们转换成 UTF8MB4。以下命令可以将 MySQL 数据库所有表和列的编码转换为 UTF8MB4:ALTER DATABASE database_name CHARACTER ...

如何修改mysql的默认字符集为utf8字符集

在你的mysql安装目录的根目录下,有一个my.ini,找到default-character-set=xxx,注意,一共有两处,把字符集改为utf8

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
工艺花茶有哪些 学赵孟頫行书哪个好 薰衣草能和花茶一起泡么 押金是不是拿不回来了? ...时候签了半年的合同,现在房客住了一个月就不住了,没有规定违约金_百... 租房合同签了6个月,住了一个月就想退房了。押一付一。我不要押金 有... vivoiQOOneo5手机找回自己锁上用密码显示网络连接失败咋回事? 户口户口办理流程 流量卡插在笔记本电脑上就可以上网了吗?收费怎么算 以前都不做梦 现在天天做 为什么阿 有方法让我不做梦吗如题 谢谢了_百... 怎么一年内修改两次怎样才能一年修改两次? wxid开头的是什么意思 东莞华堂睿晟松湖云溪多少钱一平方? 秋梨膏,四岁孩子喝了一个月,胡子出来了,怎么回事? 单车后胎漏气,打满气放一会就憋了,打气后用水做内胎检查又没有哪里是... 一年内怎么改第二次 声乐和美声差不多吗? 一年内怎么改第二次 第一次来南方,忍受了炎炎夏日,却被“空调病”打败了,吹空调头疼怎么办最... 一年内第二次修改技巧 改一年内怎么改第二次 产后南瓜紫薯粥怎么煮? 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... ...版本了,然后i主题就显示当前版本与系统不兼容,换不了主题是什么问题... 一个手机号注册两个微信后怎么登录第一个? 修改一年内如何二次修改吗苹果 单车说pis什么了 美声唱法是不是声乐的基本唱法 曾是屠夫的樊哙为西汉的建立做了哪些贡献? 一年内怎么改第二次 在电脑下载的手机游戏放在手机里打不开 同一个手机号注册两个,新的刚注销,旧的怎么找回? 什么牌子的大米是非转基因大米? 改一年内怎么改第二次 一年内怎么改第二次 虚空倒影的翻译是什么 ...自然减少近6万,造成其人口减少的原因是什么? 同一手机号注册两个,前一个怎么登 没到一年怎么申请改? 谁有《威尔与格蕾丝(will and grace)》的迅雷高清下载链接啊???_百... ...是由四个相同的直角三角形与中间的小正方形拼成的一个大正方形_百度... 请问那声乐是美声还是什么? wxid开头的是什么意思 我种的桉树差不多像碗口这么粗,之前四年都没施过肥,今年回家想施点肥... 一个手机号,注册了两个,如果把新注销掉,旧会回来吗... 乔.吉拉德是搞什么的? 如何一年内强制二次修改? 西湖一文的行文思路是什么? 高中英语,如图。语法填空的题,需要答案和解释,搜题软件上搜不到。辛 ... 一年内怎么改第二次
  • 焦点

最新推荐

猜你喜欢

热门推荐