Docker搭建MySql

创建数据映射目录

mkdir -p /usr/local/docker1/{logs,conf,data}

在conf目录,创建映射文件(文件名自定义,后三行为开启binlog,根据选择添加)

vim /usr/local/docker/conf/custom.cnf
[mysqld]
max_allowed_packet=20M
lower_case_table_names=1
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
log-bin=/var/lib/mysql/mysql-bin      
server-id=123454 
binlog-format=ROW

log-bin=/var/lib/mysql/mysql-bin binlog日志的基本文件名,后面会追加标识来表示每一个文件
server-id=123454 在mysql做主主同步时,多个主需要构成一个环状,但是同步的时候有要保证一条数据不会陷入死循环,这里就是靠server-id来实现的
binlog-format=ROW 日志中会记录成每一行数据被修改的形式,然后在 slave 端再对相同的数据进行修改。

运行容器

docker run -p 3308:3306 --name mysql2 -v /usr/local/docker1/conf:/etc/mysql/conf.d -v /usr/local/docker1/logs:/var/log/mysql -v /usr/local/docker1/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

-p docker容器映射端口 , “:” 前为宿主机端口,后为docker容器内提供服务的端口
-e 配置信息,此处填写登录mysql的用户名和密码
-v 数据卷映射,将容器内的目录映射到宿主机, “:” 前为宿主机目录,后为docker容器内目录

查看运行状态

在这里插入图片描述

docker ps -a
docker logs +容器id或容器名称

容器状态为 up 表示容器运行成功,否则查看前边步骤是否有问题,或使用 docker logs 查看容器报错信息

进入MySql 容器,并连接mysql

docker exec -it mysql2 bash
mysql -uroot -p

查看binlog日志是否开启

show variables like '%log_bin%';

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Docker搭建MySQL服务器,可以按照以下步骤进行操作: 1. 首先,在你的系统上安装Docker。你可以根据你的操作系统类型,前往Docker官方网站下载并安装Docker。 2. 安装完成后,打开终端或命令行界面,并执行以下命令来拉取MySQLDocker镜像: ``` docker pull mysql ``` 这将从Docker Hub上下载最新的MySQL镜像。 3. 下载完成后,可以使用以下命令来创建并运行一个MySQL容器: ``` docker run -d --name mysql-server -e MYSQL_ROOT_PASSWORD=<password> -p 3306:3306 mysql ``` 这将创建一个名为`mysql-server`的容器,并将MySQL的默认端口3306映射到主机的端口3306上。请将`<password>`替换为你所需的密码。 4. 当容器成功运行后,你可以使用以下命令来进入MySQL容器的bash终端: ``` docker exec -it mysql-server bash ``` 这将进入MySQL容器的命令行界面。 5. 在容器内部的bash终端中,你可以使用以下命令来连接到MySQL服务器: ``` mysql -u root -p ``` 系统将提示你输入密码。输入之前在步骤3中设置的密码。 现在,你已经成功搭建了一个MySQL服务器,并可以在容器内部进行操作。你可以使用各种MySQL客户端工具来连接到主机的3306端口,并管理数据库。如果你需要将MySQL服务器暴露给外部网络,可以在步骤3中更改端口映射的设置。请确保在生产环境中采取必要的安全措施,例如设置强密码和限制访问权限。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值