docker-compose 启动mysql时配置不生效

现象:
docker-compose 启动mysql时,mysql正常启动,但是配置文件不能生效。
docker-compose配置文件如下:

version: '3'
services:
  mysql:
    restart: always
    image: mysql:5.7
    container_name: mysql
    volumes:
#      - ./mydir:/mydir
      - ./datadir/:/var/lib/mysql/
      - ./conf/my.cnf:/etc/my.cnf
    environment:
      - "MYSQL_ROOT_PASSWORD=123456"
#      - "MYSQL_DATABASE=mydb"
      - "TZ=Asia/Shanghai"
    ports:
      - 3306:3306

mysql 配置文件:

[client]
        port  = 3306
        socket=/var/lib/mysql/mysql.sock
[mysqld]
        datadir=/var/lib/mysql
        max_allowed_packet = 256M
        character_set_server= utf8
        max_binlog_size=512M
        max_connect_errors =102400
        max_connections = 4096
        max_user_connections = 3072
        socket=/var/lib/mysql/mysql.sock
        log-error=/var/log/mysql/mysqld.log
        lower_case_table_names=1
[mysqldump]
        max_allowed_packet = 128M
[mysql]
        no-auto-rehash
        prompt = \\u@\\d \\r:\\m:\\s>
[myisamchk]
        key_buffer_size = 32M
        sort_buffer_size = 32M
        read_buffer = 8M
        write_buffer = 8M
[mysqlhotcopy]
        interactive-timeout

问题根因:
进入容器登陆mysql,发现如下提示。才发现是因为配置文件权限太大的原因。mysql自动忽略了配置建。
在这里插入图片描述
问题解决:
修改配置文件的权限,重启docker-compose 即可。

chmod 644./conf/my.cnf

问题总结:
遇到问题,需要多看输出信息。就能发现问题的端倪。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。使用Docker Compose可以轻松地启动和停止多个容器,并且可以通过一个简单的配置文件来定义容器之间的关系和依赖关系。在引用中提到的docker-compose启动mysql,是指使用Docker Compose来启动一个MySQL数据库容器。通过配置docker-compose.yml文件,可以指定MySQL容器的镜像、端口、数据卷等信息。启动后,可以使用docker-compose ps命令查看容器状态,使用docker-compose stop命令停止容器,使用docker-compose restart命令重启容器,使用docker-compose down命令关闭容器并删除相关资源。除了使用Docker Compose,还可以使用其他方式来启动MySQL容器,如使用Helm启动MySQL高可用集群、使用Docker Compose启动单节点MySQL等。同Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。使用Docker Compose可以轻松地启动和停止多个容器,并且可以通过一个简单的配置文件来定义容器之间的关系和依赖关系。在引用中提到的docker-compose启动mysql,是指使用Docker Compose来启动一个MySQL数据库容器。通过配置docker-compose.yml文件,可以指定MySQL容器的镜像、端口、数据卷等信息。启动后,可以使用docker-compose ps命令查看容器状态,使用docker-compose stop命令停止容器,使用docker-compose restart命令重启容器,使用docker-compose down命令关闭容器并删除相关资源。除了使用Docker Compose,还可以使用其他方式来启动MySQL容器,如使用Helm启动MySQL高可用集群、使用Docker Compose启动单节点MySQL等。同,还可以使用web管理工具如phpMyAdmin来管理MySQL数据库。在测试和开发环境中,使用Docker Compose启动MySQL容器可以方便地进行开发和测试。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值