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其它相關文章!