docker中使用数据库

环境:在windows10下,安装vagrant和centOS-7,作为虚拟机。然后再虚拟机中安装好docker,利用起安装了mongoDB

启动:

1.先打开Virtual软件(放到后台就行),然后再电脑找到vagrant安装位置,在windows的cmd中cd到目录下,运行vagrant up,启动虚拟机。

2.运行vagrant ssh,进入虚拟机命令环境。输入su root进入root

输入service docker start,启动docker


我们在用docker ps -a的时候会看见一些容器的状态是CREATED的,这里就需要我们用docker start 容器名或容器ID来启动容器。但是需要注意,用这个命令后,容器进入运行状态,当容器完成任务后,会自己退出,进入停止状态。如果需要再次启动start命令
这里提一个参数,能够让容器在退出后能够自动重启
--restart这个参数会检查容器的退出码,并据此来决定是否要重启容器。
这里写图片描述
这个例子大家不要轻易尝试,这样会不停的输出hello world,用ctrl+C都没有停掉这个(这里过后好好想想为什么没有停掉?????????)
最后我开了另一个终端输入了
docker stop docker_restart才终止了容器

终止

在上面也说了一下命令是
docker stop 容器名或容器ID
而这个docker stop命令是给容器进程发送一个SIGTERM信号(可捕捉),默认行为是容器退出。
如果要强行停止一个容器的话,最好用docker kill命令
它是发送一个SIGKILL信号(不可捕捉)

删除

我们不能删除一个正在运行的容器,必须先docker stop或者docker kill后我们才能删除
命令:docker rm 容器名
当然如果我们加-f这个参数我们也是可以删除一个正在运行的容器的
如何一次删除所有容器docker没有给相关命令,但是我们可以这样
这里写图片描述
-q是只列出容器ID


此时可以通过docker container ps验证mongoDB是否启动。我的数据库名字叫cool-mongo

进入数据库docker exec -it cool-mongo bash,输入mongo启动mongo命令行客户端。


此时我们可以对数据库进行处理了,如:show dbs

如果要停止mongo可以使用如下命令,


1
2
3
4
5
6
# 登入mongo
mongo
# 选择使用admin库,在其他的库不行
use admin
# 关闭mongo
db.shutdownServer()

通过‘ps -ef | grep momgo'查看mongo进程是否存在,如果不存在说明关闭成功。





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在Linux Docker忘记了数据库密码,我们可以按照以下步骤来解决这个问题: 1. 首先,我们需要进入到Docker容器的shell环境。可以使用以下命令进入Docker容器: ``` docker exec -it <container_id> /bin/bash ``` 请将`<container_id>`替换为你的Docker容器的ID。 2. 接下来,我们需要停止数据库服务。可以使用以下命令停止数据库服务: ``` service <service_name> stop ``` 请将`<service_name>`替换为你使用数据库服务的名称(例如,MySQL)。 3. 然后,我们可以通过以下命令以跳过授权模式的方式来启动数据库服务: ``` service <service_name> start --skip-grant-tables ``` 同样,请将`<service_name>`替换为你使用数据库服务的名称。 4. 现在我们已经成功启动了数据库服务,并且可以在不需要密码的情况下访问数据库使用以下命令连接到数据库: ``` mysql -u root ``` 这将以root用户身份连接到MySQL数据库。 5. 连接到数据库后,我们可以重置数据库密码。使用以下命令来更改密码: ``` USE mysql; UPDATE user SET authentication_string=PASSWORD("<new_password>") WHERE User='root'; FLUSH PRIVILEGES; ``` 请将`<new_password>`替换为你想要设置的新密码。 6. 修改密码后,我们可以退出数据库并停止数据库服务。使用以下命令退出数据库: ``` EXIT; ``` 然后使用以下命令停止数据库服务: ``` service <service_name> stop ``` 7. 最后,我们需要重新启动数据库服务以应用新的密码设置。使用以下命令重新启动数据库服务: ``` service <service_name> start ``` 至此,我们已经成功重置了在Linux Docker忘记的数据库密码。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值