MongoDB数据库操作详解:从基础到高级

1 下载量 20 浏览量 更新于2024-08-31 收藏 78KB PDF 举报
"MongoDB是一个流行的NoSQL数据库,它以其灵活性、高性能和易用性而备受青睐。本资源主要涵盖了MongoDB在命令行环境中的常用操作命令,包括数据库管理、集合操作等多个方面。" MongoDB是一个文档型数据库,它不采用传统的关系型数据模型,而是使用JSON格式的文档来存储数据,这使得它在处理半结构化和非结构化数据时具有优势。MongoDB的命令行界面提供了一系列命令来管理数据库和集合。 一、数据库操作 1. **查看命令帮助**: 输入`help`可以获取基本的命令列表,`db.help()`显示当前数据库的相关命令,`db.yourColl.help()`和`db.youColl.find().help()`则针对特定集合和查询提供帮助。 2. **切换/创建数据库**: 使用`use yourDB`命令可以切换到名为`yourDB`的数据库。如果该数据库不存在,MongoDB会在首次创建集合时自动创建它。 3. **查询所有数据库**: `show dbs`用于列出所有已存在的数据库。 4. **删除当前数据库**: `db.dropDatabase()`命令会删除当前正在使用的数据库。 5. **克隆或复制数据库**: - `db.cloneDatabase("127.0.0.1")`将指定服务器的数据库克隆到本地。 - `db.copyDatabase("mydb", "temp", "127.0.0.1")`将源数据库`mydb`的数据复制到目标数据库`temp`。 6. **修复数据库**: `db.repairDatabase()`对当前数据库进行检查和修复,确保数据一致性。 7. **查看当前数据库**: 使用`db.getName()`或简写`db`来查看当前活动的数据库。 8. **数据库状态和统计**: `db.stats()`提供关于当前数据库的详细信息,如大小、存储使用情况等。 9. **数据库版本**: `db.version()`返回MongoDB的版本号。 10. **获取连接信息**: `db.getMongo()`显示与数据库建立连接的服务器地址。 二、集合(Collection)操作 1. **创建集合**: `db.createCollection("collName",{size:20,capped:5,max:100})`创建名为`collName`的集合,可指定大小、是否为固定容量以及最大文档数量。 2. **判断集合属性**: `db.collName.isCapped`用于检查集合`collName`是否为固定容量(capped)集合。 除了上述命令,MongoDB还提供了许多其他操作,如插入数据(`db.collection.insertOne()`或`db.collection.insertMany()`)、查询数据(`db.collection.find()`)、更新数据(`db.collection.updateOne()`或`db.collection.updateMany()`)、删除数据(`db.collection.deleteOne()`或`db.collection.deleteMany()`)等。对于更复杂的数据操作,如聚合框架(`db.collection.aggregate()`)和索引管理(`db.collection.createIndex()`),也是MongoDB的重要特性。 理解并熟练运用这些命令,将极大地提升在MongoDB中的工作效率。无论是开发、测试还是运维,这些基础操作都是日常工作的基石。