当前位置: 首页 > news >正文

【Docker实战】进入四大数据库的命令行模式

上一篇我们讲了docker exec命令,这一次我们使用docker exec命令来进入四大数据库的命令行模式。

我们进行游戏开发或软件开发是离不开四大数据库的,这四大数据库分别是关系型数据库mysql、postgres,nosql数据库redis、mongodb。将它们容器化以后,有时候我们需要通过命令行模式来操作它们,因此在今天的这篇文里,我将进入四大数据库的命令行模式的操作一一列举出来,供需要的朋友们使用。

后面的内容,我会按照MySql、Postgres、Redis、Mongodb的顺序分别讲解。在讲解每一个数据库时,又分为创建并启动、进入容器的Bash环境、进入数据库命令行模式和结果显示四个步骤。其中,创建并启动的步骤我会以最简单的命令来基于数据库镜像创建并启动容器,不考虑持久化存储等内容。大家如有需要,可以考虑用搜索引擎查询相关内容。

一、MySql

1.创建并启动

docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

2.进入容器的Bash环境

docker exec -it  mysql /bin/bash

3.进入数据库命令行模式

bash-5.1# mysql -uroot -p

4.结果显示

二、Postgres

1.创建并启动

docker run --name postgres -e POSTGRES_PASSWORD=123456 -p 5432:5432 -d postgres

2.进入容器的Bash环境

docker exec -it  postgres /bin/bash

3.进入数据库命令行模式

root@f21c4665e373:/# su postgres
postgres@f21c4665e373:/$ psql
psql (16.3 (Debian 16.3-1.pgdg120+1))

4.结果显示

三、Redis

1.创建并启动

docker run -d --name myredis -p 6379:6379 redis

2.进入容器的Bash环境

docker exec -it myredis /bin/bash

3.进入数据库命令行模式

root@af4f3277ef05:/data# redis-cli

4.结果显示

127.0.0.1:6379> set ServerPlayerCount 5000
OK
127.0.0.1:6379> get ServerPlayerCount
"5000"

四、Mongodb

1.创建并启动

docker run -d -p 27017:27017 --name mymongo mongo

2.进入容器的Bash环境

docker exec -it mymongo /bin/bash

3.进入数据库命令行模式

root@1d5d1908aae5:/# mongosh
Current Mongosh Log ID: 6653085fef1ef936362202d7
Connecting to:          mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+2.2.5
Using MongoDB:          7.0.9
Using Mongosh:          2.2.5

4.结果显示

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • C++的数论相关算法
  • 05.爬虫---urllib与requests请求实战(GET)
  • 【机器学习结合AI绘画工具】——开启艺术创作的新纪元
  • Vue 子组件向父组件传值
  • ros 学习记录(四)仿真环境中键盘控制turtlebot3运动
  • MySQL - 信贷业务报表
  • 半年不在csdn写博客,总结一下这半年的学习经历,coderfun的一些碎碎念.
  • Hudi 多表摄取工具 HoodieMultiTableStreamer 配置方法与示例
  • RH850F1KM-S4-100Pin_ R7F7016453AFP MCAL Gpt 配置
  • SylixOS nty模块使用说明
  • Spring框架温习
  • 大学校园广播“录编播”与IP广播系统技术方案
  • [240527] 谷歌 CEO 承认 AI 编造虚假信息问题难解(此文使用 @gemini 命令二次创作)| ICQ 停止运作
  • 【Linux】-Flink分布式内存计算集群部署[21]
  • Mysql下Limit注入方法(此方法仅适用于5.0.0<mysql<5.6.6的版本)
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • 2017届校招提前批面试回顾
  • iOS编译提示和导航提示
  • JavaScript类型识别
  • Java新版本的开发已正式进入轨道,版本号18.3
  • java中的hashCode
  • Service Worker
  • vuex 笔记整理
  • webpack+react项目初体验——记录我的webpack环境配置
  • 动态魔术使用DBMS_SQL
  • 对超线程几个不同角度的解释
  • 工作手记之html2canvas使用概述
  • 观察者模式实现非直接耦合
  • 排序(1):冒泡排序
  • 为什么要用IPython/Jupyter?
  • 小试R空间处理新库sf
  • 原生JS动态加载JS、CSS文件及代码脚本
  • 06-01 点餐小程序前台界面搭建
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • 阿里云API、SDK和CLI应用实践方案
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • #1015 : KMP算法
  • #NOIP 2014#Day.2 T3 解方程
  • #QT(TCP网络编程-服务端)
  • #图像处理
  • #周末课堂# 【Linux + JVM + Mysql高级性能优化班】(火热报名中~~~)
  • (20050108)又读《平凡的世界》
  • (2022 CVPR) Unbiased Teacher v2
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (vue)el-cascader级联选择器按勾选的顺序传值,摆脱层级约束
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (十六)、把镜像推送到私有化 Docker 仓库
  • .NET C# 操作Neo4j图数据库
  • .NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划
  • .NET8.0 AOT 经验分享 FreeSql/FreeRedis/FreeScheduler 均已通过测试
  • .net遍历html中全部的中文,ASP.NET中遍历页面的所有button控件
  • @FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本...
  • [AIGC] Kong:一个强大的 API 网关和服务平台
  • [asp.net core]project.json(2)
  • [BZOJ 2142]礼物(扩展Lucas定理)