標籤:
在開始使用MongoDB(Version:3.2.9)之前,必須首先在MongoDB中建立 Database 和 Collection。Database是相互獨立的,每個Database都有自己的Collections,不同的database中,可以存在名字相同的collection,但是Database不是實體儲存體單位,MongoDB以Collection為實體儲存體單位,每個collection都有自己的資料檔案和index檔案,這些檔案以 .wt 結尾。
一,建立Collection
1,查看當前database中的collection列表
show collections
2,隱式建立Collection
在MongoDB中,Collection相當於關係型資料庫的Table,使用者不需要顯式定義Collection就能向Collection插入資料。在第一次向Collection插入資料時,MongoDB會自動建立Collection;如果Collection已經存在於Database中,那麼MongoDB直接向Collection中插入資料。
db.foo.insert({_id:1,name:"test"})
3,顯式建立Collection
使用 db.createCollection() 顯式建立Collection,通過指定Collection Option,建立特定用途的Collection。
Because MongoDB creates a collection implicitly when the collection is first referenced in a command, this method is used primarily for creating new collections that use specific options.
例如,建立固定集合(Capped Collection),普通集合能夠自動成長以容納更多的doc,但是固定集合有最大的size,容納的doc不能超過限制(max選項)。
db.createCollection("log", { capped : true, size : 5242880, max : 5000 } )
4,刪除collection,調用collection的drop方法刪除collection
db.collection_name.drop()
二,建立database
1,查看MongoDB的database列表
show dbs
查看當前串連所在的Database
db
2,使用use 命令建立database
use my_database_name
MongoDB返回以下資訊,use 命令只是向MongoDB註冊database,並沒是實際的建立使用show dbs 查看,列表中沒有該database。
switched to db my_database_name
3,在當前database中建立collection,並向集合中插入資料
db.foo.insert({_id:1,name:"test"})
此時,MongoDB真正建立database,查看儲存資料的folder,發現多了兩個.wt檔案,一個用於儲存資料,一個用於儲存index。使用show dbs 查看,列表中存在該database。
三,刪除database
刪除database時,必須十分小心,除非用於測試環境。
1,使用use命令,切換到指定的database
use database_name
2,使用db命令,查看當前database,避免刪錯
db
3,刪除當前database
db.dropDatabase()
參考文檔:
db.createCollection()
MongoDB 建立 Database 和 Collection