简体   繁体   English

Mongodb - 更改数据库名称

[英]Mongodb - Change db name

How do i change a db name in mongodb?如何在 mongodb 中更改数据库名称? Simple question but i can't find anything online on how to do this.简单的问题,但我在网上找不到任何有关如何执行此操作的信息。 I don't want to have to rebuild my entire database, i just simple want to change the name of it.我不想重建我的整个数据库,我只是想更改它的名称。 thanks.谢谢。

Simple use this :简单使用这个:

db.copyDatabase("old_db_name","new_db_name","localhost")
use old_db_name
db.dropDatabase();

The only way is to clone the database to one of a different name唯一的方法是将数据库克隆到不同的名称之一

http://www.mongodb.org/display/DOCS/Copy+Database+Commands http://www.mongodb.org/display/DOCS/Copy+Database+Commands

You could go here and vote for that feature你可以去这里投票给那个功能

You can dump database您可以转储数据库

./mongodump -d mydb

rename folder重命名文件夹

mv /path/to/dump/folder/mydb /path/to/dump/folder/mynewdb

and then restore然后恢复

./mongorestore

Starting in version 4.2, MongoDB removes the deprecated copydb command.从 version 4.2 开始,MongoDB 删除了已弃用的 copydb 命令。 Also, db.copyDatabase() and db.cloneDatabase() can only be run when connected to MongoDB 4.0 or earlier.此外,db.copyDatabase() 和 db.cloneDatabase() 只能在连接到 MongoDB 4.0 或更早版本时运行。

Use this approach for version 4.2 as mentioned at mongoDB manualmongoDB 手册中所述,将此方法用于 4.2 版

    1. Use mongodump to dump the test database to an archive mongodump-test-db:使用 mongodump 将测试数据库转储到存档 mongodump-test-db:
mongodump --archive="mongodump-test-db" --db=test
    1. Use mongorestore with --nsFrom and --nsTo to restore (with database name change) from the archive:使用带有 --nsFrom 和 --nsTo 的 mongorestore 从存档中恢复(更改数据库名称):
mongorestore --archive="mongodump-test-db" --nsFrom='test.*' --nsTo='examples.*'

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM