linux系统docker安装mysql5.7及中文问题处理

安装mysql单机

  • 获取docker镜像

docker pull mysql:5.7
  • 启动docker

# mysql启动命令
docker run --name some-mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=1234 --privileged=true \
        -v /tmp/mysql/log:/var/log/mysql \
        -v /tmp/mysql/data:/var/lib/mysql \
        -v /tmp/mysql/conf:/etc/mysql/conf.d \
        -d mysql:5.7

命令解释

-v 是数据卷的映射,映射之后,在宿主机中修改对应目录或文件的内容会直接反应到容器内部中

-v /tmp/mysql/log:/var/log/mysql

-v /tmp/mysql/data:/var/lib/mysql

-v /tmp/mysql/conf:/etc/mysql/conf.d

映射目录的详细规则,参见dockerhub中对mysql镜像的描述 https://hub.docker.com/_/mysql

  • 处理插入中文失败问题

  • 进入mysql查看默认字符集

# 进入容器
docker exec -it some-mysql /bin/bash
# 进入mysql
mysql -uroot -p1234
# 查看字符集
SHOW VARIABLES LIKE 'character%';
  • 显示为latin1,这样的话插入中文数据,会出现错误

  • 所以在/tmp/mysql/conf下新建my.cnf文件,并配置

# conf文件
cd /tmp/mysql/conf
# 新建my.cnf文件
vim my.cnf

# 在vim下写入如下内容
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
  • 重启mysql容器

docker restart some-mysql
  • 进入mysql再次查看字符集

# 进入容器
docker exec -it some-mysql /bin/bash
# 进入mysql
mysql -uroot -p1234
# 查看字符集
SHOW VARIABLES LIKE 'character%';
  • 安装完成,可以正常使用了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值