jlzzjlzz亚洲乱熟在线播放

系統城裝機大師 - 唯一官網:www.farandoo.com!

當前位置:首頁 > 數據庫 > 其它 > 詳細頁面

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

時間:2021-03-27來源:www.farandoo.com作者:電腦系統城

工作方向上的原因,不得不接觸部分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內容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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服務

1 [root@VM-0-14-centos ~]# mongo --port=27018
1
2
3
4
5
6
7
8
9
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)中,不同的表記錄。

1
2
3
4
5
6
7
8
9
10
> 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實例創建一個我們想要的賬號,創建賬號的語句如下:

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

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

1
2
3
4
5
6
7
8
9
10
[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的一小部分,它的賬號體系、數據存儲體系以及增刪改查方法,后面的文章我們會繼續講述,今天就先到這里。

分享到:

相關信息

系統教程欄目

欄目熱門教程

人氣教程排行

站長推薦

熱門系統下載