docker mysql utf8mb4 编码问题解决方法
来源:互联网 发布:网络棋牌赌博平台 编辑:程序博客网 时间:2024/06/10 08:37
docker mysql utf8mb4 编码问题解决方法
最近在学习docker,mysql写入中文报错的问题困扰了我2,3天,在搜索了相关资料后终于找到了解决方法。原因是mysql5.7及之前的默认字符集是latain,而它是不支持中文的。
基本思路是基于官方的mysql docker image,构建一个默认字符集为utf8mb4的新镜像,后面再用到mysql的时候直接用这个新镜像。文件也可以直接在这下载,具体步骤如下:
1.创建文件utf8mb4.cnf,其内容如下,这个就是sql的配置文件,作用是把默认字符集改为utf8mb4
[client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci
2.在utf8mb4.cnf同一目录,创建文件Dockerfile,内容如下,作用是基于mysql5.6 官方的docker镜像,把utf8mb4.cnf 复制到容器的/etc/mysql/conf.d/目录下,构建新镜像
FROM mysql:5.6COPY utf8mb4.cnf /etc/mysql/conf.d/
3.在该目录打开shell,输入如下命令,基于上面2个文件构建新镜像,并打上标签mysql5.6_utf8mb4
docker build . -t mysql5.6_utf8mb4
大功告成,后面需要运行mysql容器时就在shell用以下的命令即可
docker run mysql5.6_utf8mb4
使用utf8mb4字符集的原因是,mysql只有它才完整支持utf8的标准,比如emoji表情。
参考资料:
mysql如何完整支持utf8
mysql docker官方镜像的文档
2 0
- docker mysql utf8mb4 编码问题解决方法
- mysql utf8mb4 编码设置
- mysql utf8mb4编码设置
- mysql修改 utf8mb4编码
- MySQL设置utf8mb4编码
- mysql utf8mb4 编码
- Mysql新增UTF8MB4编码支持emoji表情
- 更改MySQL数据库的编码为utf8mb4
- 更改MySQL数据库的编码为utf8mb4
- 更改MySQL数据库的编码为utf8mb4
- 更改mysql字段的编码为utf8mb4
- mysql 修改字符集编码为utf8mb4
- 更改MySQL数据库的编码为utf8mb4
- MySQL 解决 emoji表情 的方法,使用utf8mb4 字符集(4字节 UTF-8 Unicode 编码)
- Mysql utf8mb4
- 如何在mysql中存取utf8mb4编码的字符
- MySQL字符编码:如何从utf8升级到utf8mb4
- 让MySql支持Emoji表情 utf8mb4编码格式
- 【Maven】搭建Nexus Maven私有仓库
- cv::Mat与CvMat理解
- 求两个整数的最大公约数
- linux驱动开发之module导出符号
- 枚举
- docker mysql utf8mb4 编码问题解决方法
- Linux之groupdel和userdel
- vector—— String Manipulation 1.0
- L1-009. N个数求和
- Elasticsearch(三)【.Net客户端API规范--生命周期】
- C++:面向行的类成员函数
- pwd命令
- HTML5中的Range对象的研究
- synchronized二三事1