Mac M1运行、连接 Docker MongoDB7。导出、恢复数据库

这篇具有很好参考价值的文章主要介绍了Mac M1运行、连接 Docker MongoDB7。导出、恢复数据库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

MongoDB,版本5、6.02、7.02适用
记录两种使用MongoDB的方法,本地安装包和docker
本地安装包方法:Mac M1安装MongoDB6、后台运行

Docker Mongo

一、docker运行MongoDB,并设置用户名密码

可以在创建容器的时候指定root用户名密码(加上参数MONGO_INITDB_ROOT_USERNAME、MONGO_INITDB_ROOT_PASSWORD)
也可以在容器运行后,进入容器连接数据库使用mongoshell创建用户
注意执行命令的路径!可以新建一个文件夹,mkdir mongodb7,用来映射config和db文件。
目前最新版本是7.0.2

#为了命令行看起来更清晰,加了换行符\,注意格式,\后面不能有空格
docker run  \
--name mongodb7 \
-p 27017:27017  \
-v $PWD/mongodb/configdb:/data/configdb/ \
-v $PWD/mongodb/data/db/:/data/db/ \
-e MONGO_INITDB_ROOT_USERNAME=root \
-e MONGO_INITDB_ROOT_PASSWORD=password \
-d mongo \
--auth
#进入mongo容器
docker exec -it mongodb7 /bin/bash

二、按需编辑配置

如果要编辑配置,比如bindIp,需要新建一个mongod.conf配置文件,MongoDB 容器在启动时会自动生成一个默认的配置文件,并将其命名为 /etc/mongod.conf.orig,我们可以复制它再编辑

#docker 镜像中没有vim,安装vim
apt-get update -y
apt-get install vim
#复制默认配置
cp /etc/mongod.conf.orig /etc/mongod.conf
vi /etc/mongod.conf
#修改后重启容器

三、容器内连接数据库

进入docker容器输入mongo,连接到数据库
旧版本命令是mongo,新版本用mongosh
mongosh
默认数据库是test
Mac M1运行、连接 Docker MongoDB7。导出、恢复数据库,数据库,Docker,macos,docker,数据库
如果在第一步docker指令中已经设置了用户名和密码,可以验证一下用户名密码,再执行其他操作
db.auth(“root”,“password”)
没有auth就会报错要求身份认证
Mac M1运行、连接 Docker MongoDB7。导出、恢复数据库,数据库,Docker,macos,docker,数据库

然后创建admin用户,以后使用uri连接要加上用户名和密码,比如比如mongodb://root:password@localhost:27017/
数据库软件可以用mongo官方的compass(免费),jet的datagrip,navicat最新版本也支持mongodb
Mac M1运行、连接 Docker MongoDB7。导出、恢复数据库,数据库,Docker,macos,docker,数据库
如果没有在docker指令中指定root用户密码,可以创建一个

show dbs
#切换到admin数据库
use admin
#新建用户
db.createUser({user: "root",pwd: "password",roles: [ { role: "root", db: "admin" } ]})
#身份验证
db.auth("root","password")

如果在其他应用中使用uri连接数据库,比如mongodb://root:password@localhost:27017/database-name?authSource=admin
要注意连接的数据库有没有对应的用户,确认在哪个数据库建的用户。在默认情况下,MongoDB会将用户凭据存储在admin数据库中

四、导出、恢复数据库

需要用到导出、恢复,mongo数据库工具在这里下载
https://www.mongodb.com/try/download/database-tools
(笔者在恢复过程遇到了点问题用旧版本mongodb-database-tools-100.6.1-1解决了,记录一下)
Mac M1运行、连接 Docker MongoDB7。导出、恢复数据库,数据库,Docker,macos,docker,数据库
Mac M1运行、连接 Docker MongoDB7。导出、恢复数据库,数据库,Docker,macos,docker,数据库

1、恢复数据库

和连接数据库的uri一样也要注意用户凭据存在哪个数据库,下面的指令 目标数据库不存在的话会自动创建,–dir指定备份文件所在文件夹,–db指定恢复到哪个数据库。如果是密钥登陆,就使用–sslCAFile ./pem文件路径。到bin文件夹执行mongorestore程序。

./mongorestore --host localhost:27017 \
--dir ./database-backup --db  database-name \
--username root --password password \
--authenticationDatabase=admin

2、导出数据库

–out指定输出的路径,不存在文件夹会自动创建文章来源地址https://www.toymoban.com/news/detail-726201.html

./mongodump --host localhost:27017 \
--out ./output --db  database-name \
--username root --password password \
--authenticationDatabase=admin

到了这里,关于Mac M1运行、连接 Docker MongoDB7。导出、恢复数据库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Mac(M1/M2)通过wine运行windows程序

      双击文件解压缩 ,就得到了一个Wineskin Winery.app 再把这个app拖到应用程序文件夹(最后拖到个人应用程序文件夹)    然后打开这个应用(右键打开,会提示可能是恶意软件,点确定打开)    在这个界面点+号,再点下载和安装     点OK 然后可能下载一段时间,耐心等待

    2024年02月09日
    浏览(55)
  • Mac M1安装Docker

    1、Docker 下载: 连接:https://docs.docker.com/docker-for-mac/apple-silicon/ 点击Download进行下载.dmg文件。 2、Docker安装 双击下载的Docker.dmg文件开始安装,拖动Docker到Applications等待安装完成 3、Docker启动 在启动台找到Docker点击启动,稍等片刻启动成功,屏幕右上角菜单栏显示了一个鲸鱼

    2024年02月13日
    浏览(47)
  • Mac(M1Pro)下运行ChatGLM2

          最近很多人都尝试在M1/M2芯片下跑chatglm/chatglm2,结果都不太理想,或者是说要32G内存才可以运行。本文使用cpu基于chatglm-cpp运行chatglm2的int4版本。开了多个网页及应用的情况下(包括chatglm2),总体内存占用9G左右。chatglm2可以流畅的运行了。虚拟环境为python 3.10,使用c

    2024年02月13日
    浏览(49)
  • 云原生爱好者周刊:M1 芯片 Mac 可以成功运行 Linux

    3 月 19 日,也就是前两天,Asahi Linux 官方推特宣布:首个原生支持 M1 系列芯片的 Linux 测试版现已发布,所有人皆可使用! Asahi Linux 起初只是一个众筹项目,计划为 Apple Silicon Mac 设备移植 Linux 系统,后来才被命名为 Asahi Linux,开始加速开发。虽然现在还很粗糙,很多功能无

    2023年04月08日
    浏览(47)
  • 【docker】Mac M1版本下载安装

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。其次容器是完全使用沙箱机制,相互之间不会有任何接口。 在实际工作中,我们的开发需要配置开

    2023年04月19日
    浏览(59)
  • Mac M1 上 丝滑跑 Docker

    出于开源项目的需要,我准备把之前在 Windows 下运行的开源项目移植到 Mac 上跑得试下,但是之前 Mac M1 芯片并不能很好地支持 Docker,这不,发现 Docker 也 正式 支持 Mac 了,M1 看了 Docker 的芳容,竟悄悄爱上了 Docker。 1.1 官宣版 之前 Docker 只支持在 Intel 芯片的 X86 架构上运行,

    2024年03月15日
    浏览(80)
  • mac m1使用docker安装kafka

    1.拉取镜像 docker pull zookeeper docker pull wurstmeister/kafka 2.启动zookeeper docker run -d --name zookeeper -p 2181:2181 zookeeper 3.设置zookeeper容器对外服务的ip Zookeeper_Server_IP=$(docker inspect zookeeper --format=\\\'{{ .NetworkSettings.IPAddress }}\\\') 4.启动kafka docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOO

    2024年02月13日
    浏览(43)
  • 解决MAC M1处理器运行Android protoc时出现的错误

    Protobuf是Google开发的一种新的结构化数据存储格式,一般用于结构化数据的序列化,也就是我们常说的数据序列化。这个序列化协议非常轻量级和高效,并且是跨平台的。目前,它支持多种主流语言,比传统的XML、JSON等方法更具优势。详细信息请参考:Google protocol buffer。但是

    2024年02月14日
    浏览(33)
  • mac m1 docker 安装kafka和zookeeper

    获取本地ip地址  ifconfig en0   192.168.0.105.   下面的ip都会使用到 1、拉取镜像 docker pull wurstmeister/zookeeper docker pull wurstmeister/kafka 2、启动容器 启动 zookeeper docker run -d --name zookeeper -p 2181:2181 映射 3、 启动 kafka 注意,kafka 依赖 zookeeper,启动 kafka 前需要先启动 zookeeper。 这边端口

    2024年02月10日
    浏览(46)
  • M1 mac 直接安装x86 centos Docker

    安装M1 DockerDesktop https://www.docker.com/products/docker-desktop/ 打开设置DockerEngine 将下列插入进去 拉取CentOS系统 创建CentOS(x86)容器 在我的 M1 Mac 上,我可以从 Docker Hub 运行 Ubuntu 映像的 arm64 和 amd64 版本。uname 提供的机器硬件名称证明了这一点。 因为Docker默认创建的是arm架构的Ce

    2024年02月13日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包