MongoDB 簡單入門教程(安裝、基本概念、創建用戶)

    工作方向上的原因,不得不接觸部分MongoDB的運維工作,之前有接觸過一些MongoDB的內容,基本的運維操作沒有什麼問題,包括MongoDB的集群搭建、數據分片功能等都測試過。但是時間久瞭,很多東西不用就忘記瞭,最近準備出一個系列的MongoDB的運維操作文章,希望把這塊兒內容重新拾起來。網上查瞭查,MongDB講得好的書也就是<MongoDB權威指南>這本瞭,但是它引用的MongoDB版本比較舊,所以最好結合著官方文檔看,這樣收獲會更快。MongoDB中文論壇裡面也有不少前人總結的好文檔,對學習都很有幫助。廢話不多說,開始講述吧!

NO.1 Linux下MongoDB的安裝

   Linux下MongoDB的安裝還算簡單,總體可以分為如下幾步:

1、去官網www.mongodb.org  上下載對應版本的二進制包,例如mongodb-linux-x86_64-rhel70-4.0.21-rc1.tgz

2、使用tar工具對這個包進行解壓,通常解壓的路徑是/usr/local/

tar -zxvf mongodb-xxxx.tgz -C /usr/local

3、配置.bashrc中的環境變量,或者/etc/bashrc中的Path變量。添加下面的內容即可:

export MONGO_HOME=”/usr/local/mongodb”

4、創建一個配置文件,放在目錄/data/mongodb_${port}目錄下,註意port為變量,它是你默認的端口(註意,MongoDB的默認端口是27017,一般不選用這個默認端口,我本人習慣將端口配置為27018,當然,你可以自己定義),配置文件mongo.conf內容如下:

dbpath=/data/mongo_27018/data

logpath=/data/mongo_27018/log/mongodb.log

auth=false

bind_ip=127.0.0.1

logappend=true

port=27018

fork=true

journal=false

5、啟動MongoDB服務。

mongod –config /data/mongo_27018/mongo.conf

即可

6、使用mongo命令行連接MongoDB服務

[root@VM-0-14-centos ~]# mongo --port=27018
MongoDB shell version v4.0.6
connecting to: mongodb://127.0.0.1:27018/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("749f350a-398b-4dcb-992c-f5f7b20e0426") }
MongoDB server version: 4.0.6
> show dbs
admin  0.000GB
config 0.000GB
local  0.000GB
test  0.000GB

NO.2 數據存儲基本概念

     MongoDB中的數據存儲方式和MySQL不一樣,因為MongoDB是專門針對分佈式設計的數據庫,因此它的存儲方式相對比較靈活。

     在MySQL中,我們關心的數據對象分別是數據庫、表、記錄;

     在MongoDB中,它們對應成為數據庫、集合、文檔。

     你可以類比的認為集合和表是一個概念,記錄和文檔是一個概念,當然,它們中間還有很多不同的地方。舉個小例子:  在MySQL中,所有表中的記錄,擁有相同的字段,在MongoDB中,同一個集合中的文檔擁有的字段可以不同。下面是同一個collection(person)中,不同的表記錄。

> use test
switched to db test

> show collections;
num
person

> db.person.find()
{ "_id" : ObjectId("5f96ac2f5e5c5ff982b9c6ae"), "name" : "yeyz", "age" : [ 26, 30 ], "info" : [ { "sex" : "male", "score" : 100 } ] }
{ "_id" : ObjectId("5f96e286dee7ee56f803605f"), "age" : 1 }

NO.3 用戶創建

    MongoDB中的賬號一般設置成庫級別的,我們創建賬號的時候,需要指明這個賬號是隸屬於哪個庫。我們上面的配置文件中配置瞭auth=false,說明登錄的時候不需要驗證用戶權限,這樣當然是不安全的。那麼我們就需要為這個MongoDB實例創建一個我們想要的賬號,創建賬號的語句如下:

db.createUser(
... ...   {
... ...     user: "yeyz",
... ...     pwd: "123456", // 或者輸入明文密碼
... ...     roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
... ...   }
... ... )

這裡,我創建瞭一個賬號,名字叫yeyz,密碼是123456,這個賬號我們註意到還有一個roles的字段,它的內容意思是該賬戶是個管理賬戶,隸屬於admin庫下,它可以讀寫所有的database,這樣我們在登錄的時候,就可以使用這個賬號進行登錄。如下:

[root@VM-0-14-centos ~]# mongo --port=27018 -u "yeyz" -p 123456
MongoDB shell version v4.0.6
connecting to: mongodb://127.0.0.1:27018/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("5cfebf40-2ede-4852-9c83-f85efbf13a4e") }
MongoDB server version: 4.0.6
> show dbs;
admin  0.000GB
config 0.000GB
local  0.000GB
test  0.000GB

以上內容,僅僅是MongoDB的一小部分,它的賬號體系、數據存儲體系以及增刪改查方法,後面的文章我們會繼續講述,今天就先到這裡。

以上就是MongoDB 簡單入門教程(安裝、基本概念、創建用戶)的詳細內容,更多關於MongoDB 入門教程的資料請關註WalkonNet其它相關文章!

推薦閱讀: