docker环境下使用mysql出现编码格式问题修改编码格式的方法

方法一(适用于单机器修改)

首先确定mysql服务处于开始状态

  • 键入docker exec -it +服务名 /bin/bash 进入控制台
  • 键入apt-get update 命令
  • 键入apt-get install vim (上述两条命令用于下载vim编辑器),
  • 输入vim /etc/mysql/mysql.conf.d/mysqld.cnf 命令 进入mysqld.cnf文件
  • 4.使用i打开编辑模式,在文本的最后输入以下内容:
    注意:下面的内容一定不能输错,否则会造成配置文件失效
  • [client]
  • default-character-set=utf8
  • [mysql]
  • default-character-set=utf8
  • [mysqld]
  • character-set-server=utf8
  • ESC退出,shift+冒号wq保存 退出。
  • 5.进入mysql控制台
  • 6.输入show variables like ‘char%’; 即可查看到修改后的相应信息
  • 在这里插入图片描述
  • 修改完毕重启数据库后:输入show variables like"char%"即可
  • 在这里插入图片描述
  • 出现上述结果说明已经修改成功

方法二(适用于集群搭建)

将配置文件拷贝出原目录,使用外部文件修改,此方法用于发送文件到多台服务器进行数据库默认编码修改

  • docker exec -it +服务名 /bin/bash 进入控制台

  • 输入cd /etc/mysql/conf.d/ 进入配置文件目录

  • 输入pwd获取文件绝对路径

  • 输入cd回退到控制台,exit退出

  • 输入docker cp 服务名:/etc/mysql/conf.d/mysql.cnf /usr/soft ( 将docker中的mysql.cnf文件拷贝到linux下的soft文件夹中)

  • 开启外部编辑器(如notepad++)进行配置文件书写 如下:

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect=‘SET collation_connection = utf8_unicode_ci’
init_connect=‘SET NAMES utf8’
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
在这里插入图片描述
PS:注意配置文件的内容要有间隔,这一点很重要

  • 保存好

  • 7.docker cp /usr/soft/mysql.cnf 服务名:/etc/mysql/conf.d/ 将修改后的文件拷贝到原来的目录下覆盖

  • 8.重启docker中的mysql服务,然后

  • 9.输入 show variables like ‘char%’;命令即可查看已经修改好的字符编码格式

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值