连接本地mysql容器

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

前言

使用的是macOS系统,但是docker命令都是一样的。本地想简单连接个mysql数据库,但是本地没有安装mysql,先不用远程服务器了,就用docker简单的起个mysql容器。已经安装Docker Desktop,mac比较简单,直接下载dmg安装即可。

一、启动镜像

已经安装好docker,可以用docker info查看状态和信息,也可以查看菜单栏有小🐳的图标,即启动成功。

1、下载mysql镜像
docker pull mysql  // 直接下载了最新版本的
2、查看镜像
~ docker image ls 或者 docker images
REPOSITORY   TAG       IMAGE ID       CREATED      SIZE
mysql        latest    7b94cda7ffc7   6 days ago   446MB
3、启动mysql实例
docker run --name mysql -d -p 6666:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:latest

// --name 为mysql的实例设置别名
// -d 以守护进程运行(后台运行)
// -p 6666为对外暴露的端口(随便选的),3306是内部端口
// -e MYSQL_ROOT_PASSWORD 设置mysql登录密码
// 最后的mysql是启动的镜像名称
4、查看启动容器
~ docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED         STATUS         PORTS                               NAMES
0d265e254add   mysql:latest   "docker-entrypoint.s…"   7 minutes ago   Up 7 minutes   33060/tcp, 0.0.0.0:6666->3306/tcp   mysql

docker ps -a  // 查看所有容器(运行中、未运行)
docker inspect mysql // 查看容器信息
5、查看端口

如果忘记容器映射端口,可以通过docker port 容器名 查看,

~ docker port mysql
3306/tcp -> 0.0.0.0:6666

或者连接数据库端口报错时,检验端口是否开放,容器外命令行执行nc -vz -w 2 127.0.0.1 6666

~ nc -vz -w 2 127.0.0.1 6666
Connection to 127.0.0.1 port 6666 [tcp/*] succeeded!
6、连接mysql数据库

启动成功后可以通过localhost:6666(暴露的端口),root和123456(密码)连接mysql数据库了,工具可以使用navicat或者DBeaver都行。

这里使用的DBeaver,填入容器对应的端口等信息,可以正常连接成功。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9nyPVYoc-1667278819179)(https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/10ff00c45ad240f2a0789b482f25761c~tplv-k3u1fbpfcp-watermark.image?)]

执行准备好的sql文件,成功导入数据。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-McB98a3w-1667278819181)(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/9f063754caa0432fa9a24fbcf57bab63~tplv-k3u1fbpfcp-watermark.image?)]

7、停止启动

通过容器ID或容器名 停止启动容器,数据不会丢失。不过如果删除后数据丢失了,可以挂载文件。

docker stop mysql  // 停止mysql(容器名)容器
docker start mysql  // 启动被停止的mysql(容器名)容器

二、操作容器

1、进入容器内部
docker container exec -it mysql /bin/bash
// mysql是上面起的容器别名
2、登录mysql
bash-4.4# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.
3、mysql相关操作
show databases;  // 查看数据库
create database test;  // 创建数据库
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值