centos7通过docker去实现mysql然后navicat连接

41 篇文章 0 订阅
40 篇文章 7 订阅

1、首先准备环境

看下已经配置好的VM虚机NAT网络

aaa

ddd

www

fff

xx

然后去配置宿主机的网络

在这里插入图片描述

aaaaa
dddsa

aws

sss
qqaqaq
zzxc

qswsa
fdfe

c. ssh远程之前,宿主机win7要能够ping通vm虚机
ping之前,先在宿主机 win + r --> 运行 --> cmd --> ipconfig 查看网络
然后去vm虚机,终端下 ifconfig 查看网络,如果 command not found
那就yum install -y net-tools
确保宿主机和vm虚机是在相同网段的

ddd

ggg

ifconfig没有那个命令
使用ip a能查到enss33网卡名

vm虚机没有网络,所以需要手动去配置网络

在这里插入图片描述
请严格按照以下配置文件内容,有则改之,无则勿动,记得把UUID那行删掉
手动修改
在这里插入图片描述

kkkjjh

iiiuuy

xcvvvvvb

都可以ping baidu.com,那就可以上外网了

下面VM虚机安装 net-tools ,安装前无法使用ifconfig

ffgh
bbvv
安装后再看,可以用ifconfig查看ip信息了

在这里插入图片描述

到这,基本网络搞定


2. 通过宿主机win10 ssh远程 VM虚机

  • 个人推荐使用 --> MobaXterm
  • 下载后解压即用

edggs

rff
双击快捷方式打开它


xfgh

选择ssh
sssk

tgf
点完OK然后输入密码
、即可登录如下所示

aasdddddddddf
就可在里面复制粘贴了
oooo

到这就为后面安装docker做好铺垫了

ctrl + insert键 复制

shift + insert键 粘贴


3. 安装docker

# step 1: 安装必要的一些系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
yum makecache fast
yum -y install docker-ce
# Step 4: 开启Docker服务
systemctl start docker

# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
#   将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
#   Loading mirror speeds from cached hostfile
#   Loaded plugins: branch, fastestmirror, langpacks
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
#   docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
#   Available Packages
# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]

frss
llkkjhh

llllsdd

ssdf
sffare
4rfttyy
serfdd
sssss

;lllll
iiyttghh

4. 使用docker安装mysql

先查看一下
ssdgg

搜一下mysql的容器镜像

docker search mysql:5.7.28

gfdss

编写Dokcerfile文件
vi Dokcerfile

#!/bin/bash

FROM mysql:5.7.28

llkshf

编写build去构建
vi build

#!/bin/sh

docker build -t docker-mysql:5.7.28 .

然后加可执行权限
chmod u+x build

edssff

  • 编写run脚本去创建并启动容器
    vi run
#!/bin/bash

cmd=(
    docker run
    -dit
    --name mysql57-1
    --hostname=mysql57
    --privileged=true
    -p 3306:3306
    -e MYSQL_ROOT_PASSWORD=qwer@1234
	docker-mysql:5.7.28
)

"${cmd[@]}"
# 解释下各个参数的含义
-d: 后台运行容器,并返回容器ID
-i: 以交互模式运行容器,通常与 -t 同时使用
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
--name=mysql57-1: 为容器指定一个名称
--hostname=mysql57: 指定容器的hostname
-v: 绑定一个卷
--privileged=true: 以特权方式启动容器
-e MYSQL_ROOT_PASSWORD=qwer@1234  指定容器中mysql数据库初始root密码

然后加可执行权限
chmod u+x run

kdfs

rrrrfrfd

  • 然后先执行build构建,其实是拉取容器镜像,然后改为一个新的名字,tag为docker-mysql:5.7.28
    ./build

osdffx

  • 然后再执行run,是创建并启动容器
    ./run

pppgfd

  • 然后进入容器内部
    可以使用容器Name进入
    docker exec -it mysql57-1 bash

wwww

或者使用容器ID进入
docker exec -it container-ID bash

uuyyt

简化一些,使用容器ID前3位

powtrs

  • 进入容器后,进入mysql数据库
    mysql -uroot -pqwer@1234

mysql

exit退出后重新进入,试试

kkkss

再退出数据库,退出容器,查看容器状态

lllsks

5. 使用Navicat远程连接mysql

ssdd

lllsdf

lllsdf

  • 用Navicat可以对数据库用户进行管理

llskd

当然自己用root无妨,其实一般不用root,所以可以创建一个用户

xx

ssdd
然后服务器权限,这里指的是对数据库操作的权限

llsls
一般的增删改查就ok

然后再点保存

skkd

可以看到

下面连接测试

ksds

所以就使用个人创建的用户就可以了

尤其是开发的时候,千万要慎用 mysql的root用户,搞不好删库,麻烦大了

6. 好处说明:

使用这种方式,对于个人跑数据库表测试是非常nice的,免安装
直接对容器进行操作就OK了,重启数据库直接重启容器就好了啦

  • 重启容器
    rrrr

  • 再次进入

ppppa

7. 备份意识(避坑防甩锅)

1、打快照
sfdd

wddss

这种方式其实就是保护环境,如果后面(sudo rm -rf /*)误删操作,还可以回退到快照1状态的环境

2、对mysql数据库进行自动化备份

参考:mysql5.7.29数据库备份之linux服务器自动备

滴!没有备份意识的码农不是好码农,当然,你可以不备份,那就等着背锅咯


打完收工,你学会了没?

肝文不易,如果觉得写得好的话

点个赞再走哈,记得收藏+关注!

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值