更改docker里mysql的字符编码
2024-09-22 11:13:35
进入容器:
docker exec -it 容器id/容器名称 bash
cp时容器中的目录写法 容器名称/容器id:容器目录
退出容器使用exit
1 首先去mysql容器中寻找mysql.cnf文件,一般是在 /etc/mysql/conf.d/ 下。
执行命令 docker exec -it mysql bash 命令进入mysql容器,
cd /etc/mysql/conf.d/
ls
//这里不能用命令 ll
能看到mysql.cnf 文件
2 exit 退出容器,将刚才的 mysql.cnf 文件 cp 到物理机任意目录,我是在 /usr/local/ 下专门建了一个临时目录 temp/
docker cp mysql:/etc/mysql/conf.d/mysql.cnf /usr/local/temp/
3 cd /usr/local/temp/ 对配置文件进行编辑 vi mysql.cnf
# For explanations see
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_general_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake
保存退出
4 将文件 cp 到容器指定位置,覆盖原有的配置文件
docker cp /usr/local/temp/ mysql:/etc/mysql/conf.d/mysql.cnf
5 重启mysql
docker restart mysql
6 确认编码是否成功更改
进入容器 docker exec -it mysql bash
登录mysql mysql -uroot -p -h localhost
执行命令
mysql> show variables like'char%';
可以看到说明成功将字符编码更改为 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 | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql-8.0/charsets/ |
+--------------------------+--------------------------------+
8 rows in set (0.01 sec)
最新文章
- 双层路由设置,WAN口和LAN口连接的方法设置
- 3ds max 分离对象
- 一种Go使用tcp检测超时的方式
- oracle wm_concat(column)函数的使用
- reCAPTCHA 简单分析
- 【原创】Kmeans算法 优缺点分析
- 《转》GDB中应该知道的几个调试方法
- WebService调用http://www.webxml.com.cn中的一些服务示例
- hdu 1698 线段树成段更新
- IOS 访问系统粘贴板
- Swift 与 Objective-C混合编程
- Ansible安装配置
- canvas图表(1) - 柱状图
- java中的默认类型+spring
- $Django 站点:样式--文章--分类文章--文章详情--文章评论点赞--文章评论点赞统计(数据库优化)
- django模板 内建标签
- [Java] Hashtable 源码简要分析
- TP框架模板中IF Else 如何使用?
- Struts2实现登录流程
- 泛型1(一些algorithm函数)
热门文章
- COOP/COHP(上)-PROOUT
- 建筑CAD软件如何设置当前默认层高?
- JavaScript的Array.flat()函数深入探讨
- firefox用于web安全测试的插件[转]
- 微信退款报错 400 the ssl certificatie error / no required SSL certificate was sent ; Guzzle json_encode Type is not supported;
- vscode 开发Vue项目
- Python学习笔记组织文件之shutil模块
- 实践:带您用多种姿势将存储在腾讯云COS 上的视频播放
- css背景颜色动态渐变实例
- windows下判断程序是否内存泄漏