docker安装多个mysql并启动

1、安装docker(省略,自行百度)

2、创建目录

 # mkdir /data/mysql/data5.6

 # mkdir /data/mysql/data5.7

3.添加镜像

  # docker pull mysql:5.6

 # docker pull mysql:5.7

4.启动镜像(一个跑在默认的3306上、另一个跑在3307上)

 docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.6 --restart always -v /data/mysql/data5.6:/var/lib/mysql -p 3306:3306 mysql:5.6

 docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.6 --restart always -v /data/mysql/data5.6:/var/lib/mysql -p 3306:3306 mysql:5.6

5.打开端口 

 //开启防火墙,ubuntu可能需要安装firewalld,输入括号内命令进行安装 (apt install firewalld)

  # systemctl start firewalld

 //开启3306端口

 # firewall-cmd --zone=public --add-port=3306/tcp --permanent

 //开启3307端口

 # firewall-cmd --zone=public --add-port=3307/tcp --permanent

 //重启防火墙

  # systemctl restart firewalld.service

6、设置远程连接配置,这一步需要进入指定容器内完成

(1)进行授权

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

 

(2)flush privileges;  代表立即刷新权限表,使添加的用户生效 

7.navicat连接测试

至此,一个完整的过程就完成了,不喜勿喷,学无止境,好的建议可以在下面留言

### 使用 Docker 启动 MySQL 完成初始配置 #### 准备工作 确保已经安装Docker。如果尚未安装,需先按照官方文档或其他可靠资源指导完成 Docker安装。 #### 下载 MySQL 镜像 通过执行 `docker pull mysql` 命令获取最新的 MySQL 官方镜像[^1]。 ```bash docker pull mysql ``` #### 创建启动 MySQL 容器 创建一个新的 MySQL 实例时可以指定端口映射、容器名称以及重启策略等参数。下面是一个典型的命令用于启动带有持久化存储卷和环境变量设置的 MySQL 服务: ```bash docker run -p 3306:3306 \ --name=mysql-server \ --restart=always \ -v /path/to/mysql/conf.d:/etc/mysql/conf.d \ -v /path/to/mysql/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=my-secret-pw \ -d mysql:tag ``` 其中 `/path/to/mysql/...` 是宿主机上的路径,应替换为实际使用的目录;`my-secret-pw` 替换成自定义的安全密码;而 `mysql:tag` 则指定了要使用的特定版本标签,默认情况下可省略以使用最新稳定版[^5]。 对于希望进一步简化操作的情况,也可以利用 `.env` 文件来管理环境变量,在这种场景下只需提供简单的运行指令即可: ```bash docker run -d --name mysql-instance --env-file .env mysql-container ``` 这里假设存在名为`.env` 的文件包含了必要的配置项,比如数据库管理员账户信息等[^2]。 #### 初始化 SQL 脚本导入 为了自动化地向新建立的数据表结构中填充测试数据或是应用预设模式变更,可以在启动过程中附加额外的初始化脚本。这通常涉及到将本地磁盘中的 SQL 文件挂载到目标位置,mysqld 自动读取处理这些文件的内容。具体做法是在上述基础上增加 `-v /host/path/init.sql:/docker-entrypoint-initdb.d/init.sql` 参数[^4]。 #### 进入容器内部进行更多定制化设定 有时可能还需要手动介入调整某些高级选项或解决可能出现的问题。此时可以通过如下方式获得交互式的 shell 访问权限: ```bash docker exec -it mysql-server bash ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值