MongoDb,克隆数据库错误:非法参数组合:无法指定 --db 和 --uri
Posted
技术标签:
【中文标题】MongoDb,克隆数据库错误:非法参数组合:无法指定 --db 和 --uri【英文标题】:MongoDb, Cloning database error: illegal argument combination: cannot specify --db and --uri 【发布时间】:2021-06-26 09:37:35 【问题描述】:我正在尝试在同一个集群中复制一个名为 database_A
的数据库。
结果应该是一个名为database_B
的新数据库,其数据完全相同。
我正在尝试按照说明进行操作 here。
它解释了如何在本地执行此操作:
-
使用 mongodump 将测试数据库转储到存档 mongodump-test-db:
mongodump --archive="mongodump-test-db" --db=test
-
将 mongorestore 与 --nsFrom 和 --nsTo 一起使用以从存档中恢复(更改数据库名称):
mongorestore --archive="mongodump-test-db" --nsFrom='test.' --nsTo='例子。'
为了在集群中达到同样的效果,它说:
根据需要包含其他选项,例如指定 uri 或 主机、用户名、密码和身份验证数据库。
但是,当我尝试添加uri
来实现第一步时:
mongodump --uri mongodb+srv://hihi:password@cluster0.fklgt.mongodb.net --archive="mongodump-test-db" --db=test_db
我收到此错误:
illegal argument combination: cannot specify --db and --uri
知道如何解决这个问题吗?
【问题讨论】:
【参考方案1】:您必须在类似 URI 的连接中添加 db uri/[db]
mongodb+srv://hihi:password@cluster0.fklgt.mongodb.net/test_db
mongodump --uri mongodb+srv://hihi:password@cluster0.fklgt.mongodb.net/test_db --archive="mongodump-test-db"
https://docs.mongodb.com/v3.6/reference/program/mongodump/#cmdoption-mongodump-uri
/database 可选。如果连接字符串包含用户名:密码@ 形式的身份验证凭据,则要进行身份验证的数据库的名称。如果未指定 /database 并且连接字符串包含凭据,则驱动程序将对 admin 数据库进行身份验证。另请参阅 authSource。
https://docs.mongodb.com/v3.6/reference/connection-string/
【讨论】:
以上是关于MongoDb,克隆数据库错误:非法参数组合:无法指定 --db 和 --uri的主要内容,如果未能解决你的问题,请参考以下文章