NoSQL-MongoDB基礎(chǔ)及集群搭建學(xué)習(xí)筆記

MySQL體系結(jié)構(gòu)

庫:database

表:table

列:column

行:row

MongoDB體系結(jié)構(gòu)

庫:database

集合(表);collection

文檔:(json)

        {
            id:101
            name:zhangsan
}

1粪小、系統(tǒng)準(zhǔn)備

(1)redhat或centos6.2以上系統(tǒng)
(2)系統(tǒng)開發(fā)包完整
(3)ip地址和hosts文件解析正常
(4)iptables防火墻&SElinux關(guān)閉
(5)關(guān)閉大頁內(nèi)存機制
########################################################################
root用戶下
在vi /etc/rc.local最后添加如下代碼

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
  echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
   echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
        
cat  /sys/kernel/mm/transparent_hugepage/enabled        
cat /sys/kernel/mm/transparent_hugepage/defrag  

https://docs.mongodb.com/manual/tutorial/transparent-huge-pages/

2丢间、mongodb安裝

創(chuàng)建所需用戶和組

useradd mongodbb
passwd mongodbb

創(chuàng)建mongodb所需目錄結(jié)構(gòu)

mkdir -p /mongodb/conf
mkdir -p /mongodb/log
mkdir -p /mongodb/data

上傳并解壓軟件到指定位置

[root@db01 data]# cd   /data
[root@db01 data]# tar xf mongodb-linux-x86_64-rhel70-3.6.12.tgz 
[root@db01 data]#  cp -r /data/mongodb-linux-x86_64-rhel70-3.6.12/bin/ /mongodb

設(shè)置目錄結(jié)構(gòu)權(quán)限

chown -R mongod:mongod /mongodb

設(shè)置用戶環(huán)境變量

su - mongod
vi .bash_profile
export PATH=/mongodb/bin:$PATH
source .bash_profile

設(shè)置用戶環(huán)境變量

su - mongod
vi .bash_profile
export PATH=/mongodb/bin:$PATH
source .bash_profile

啟動mongodb

mongod --dbpath=/mongodb/data --logpath=/mongodb/log/mongodb.log --port=27017 --logappend --fork 

登錄mongodb

[mongod@server2 ~]$ mongo

3.使用配置文件

YAML模式

NOTE:
YAML does not support tab characters for indentation: use spaces instead.

--系統(tǒng)日志有關(guān)

systemLog:
destination: file
path: "/mongodb/log/mongodb.log" --日志位置
logAppend: true --日志以追加模式記錄

--數(shù)據(jù)存儲有關(guān)

storage:
journal:
enabled: true
dbPath: "/mongodb/data" --數(shù)據(jù)路徑的位置

-- 進(jìn)程控制

processManagement:
fork: true --后臺守護(hù)進(jìn)程
pidFilePath: <string> --pid文件的位置第焰,一般不用配置巍实,可以去掉這行晦墙,自動生成到data中

--網(wǎng)絡(luò)配置有關(guān)

net:
bindIp: <ip> -- 監(jiān)聽地址
port: <port> -- 端口號,默認(rèn)不配置端口號敞掘,是27017

-- 安全驗證有關(guān)配置

security:
authorization: enabled --是否打開用戶名密碼驗證

/------------------以下是復(fù)制集與分片集群有關(guān)----------------------

replication:
oplogSizeMB: <NUM>
replSetName: "<REPSETNAME>"
secondaryIndexPrefetch: "all"

sharding:
clusterRole: <string>
archiveMovedChunks: <boolean>

---for mongos only
replication:
localPingThresholdMs: <int>

sharding:
configDB: <string>


mongodb 使用systemd管理

[root@db01 ~]# cat > /etc/systemd/system/mongodb.service <<EOF
[Unit]
Description=mongodb 
After=network.target remote-fs.target nss-lookup.target
[Service]
User=mongodb
Type=forking
ExecStart=/mongodb/bin/mongodb --config /mongodb/conf/mongo.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/mongodb/bin/mongodb --config /mongodb/conf/mongo.conf --shutdown
PrivateTmp=true  
[Install]
WantedBy=multi-user.target
EOF

[root@db01 ~]# systemctl restart mongod
[root@db01 ~]# systemctl stop mongod
[root@db01 ~]# systemctl start mongod

3邑蒋、mongodb常用基本操作

3.0 mongodb 默認(rèn)存在的庫

test:登錄時默認(rèn)存在的庫
管理MongoDB有關(guān)的系統(tǒng)庫
admin庫:系統(tǒng)預(yù)留庫,MongoDB系統(tǒng)管理庫
local庫:本地預(yù)留庫,存儲關(guān)鍵日志
config庫:MongoDB配置信息庫

show databases/show dbs
show tables/show collections
use admin 
db/select database()

3.1 命令種類

db 對象相關(guān)命令
db.[TAB][TAB]
db.help()
db.oldboy.[TAB][TAB]
db.oldboy.help()

rs 復(fù)制集有關(guān)(replication set):
rs.[TAB][TAB]
rs.help()

sh 分片集群(sharding cluster)
sh.[TAB][TAB]
sh.help()

4. mongodb對象操作

mongo mysql
庫 -----> 庫
集合 -----> 表
文檔 -----> 數(shù)據(jù)行

4.1 庫的操作

> use test          ?(創(chuàng)建數(shù)據(jù)庫)
>db.dropDatabase()   (刪除當(dāng)前庫)
{ "dropped" : "test", "ok" : 1 }
show dis(查詢)
db (  當(dāng)前所在庫)

4.2 集合的操作

app> db.createCollection('a')
{ "ok" : 1 }
app> db.createCollection('b')
方法2:當(dāng)插入一個文檔的時候歇竟,一個集合就會自動創(chuàng)建长窄。
查詢
show tables
show collection
刪除
db.oldboy.drop

插入數(shù)據(jù)

> use oldboy
switched to db oldboy
> db.t1.insert({id:101})
WriteResult({ "nInserted" : 1 })
> show tables;
t1

4.3 文檔操作

數(shù)據(jù)錄入:

for(i=0;i<10000;i++){db.log.insert({"uid":i,"name":"mongodb","age":6,"date":new
Date()})}

查詢數(shù)據(jù)行數(shù):

> db.log.count()

全表查詢:

> db.log.find()

每頁顯示50條記錄:

> DBQuery.shellBatchSize=50; 
``

按照條件查詢

> db.log.find({uid:999}

以標(biāo)準(zhǔn)的json格式顯示數(shù)據(jù)

{
    "_id" : ObjectId("5cc516e60d13144c89dead33"),
    "uid" : 999,
    "name" : "mongodb",
    "age" : 6,
    "date" : ISODate("2019-04-28T02:58:46.109Z")
}
``
刪除集合中所有記錄

app> db.log.remove({})


查看集合存儲信息
app> db.log.totalSize() //集合中索引+數(shù)據(jù)壓縮存儲之后的大小   

5. 用戶及權(quán)限管理

5.1 注意

驗證庫: 建立用戶時use到的庫滔吠,在使用用戶時纲菌,要加上驗證庫才能登陸。

對于管理員用戶,必須在admin下創(chuàng)建.

  1. 建用戶時,use到的庫,就是此用戶的驗證庫
  2. 登錄時,必須明確指定驗證庫才能登錄
  3. 通常,管理員用的驗證庫是admin,普通用戶的驗證庫一般是所管理的庫設(shè)置為驗證庫
  4. 如果直接登錄到數(shù)據(jù)庫,不進(jìn)行use,默認(rèn)的驗證庫是test,不是我們生產(chǎn)建議的.
  5. 從3.6 版本開始疮绷,不添加bindIp參數(shù)翰舌,默認(rèn)不讓遠(yuǎn)程登錄,只能本地管理員登錄冬骚。

5.2 用戶創(chuàng)建語法

use admin                                選定驗證庫
db.createUser
{
    user: "<name>",
    pwd: "<cleartext password>",
    roles: [
       { role: "<role>",
     db: "<database>" } | "<role>",
    ...
    ]
}

基本語法說明:
user:用戶名
pwd:密碼
roles:
role:角色名
db:作用對象
role:root, readWrite,read
驗證數(shù)據(jù)庫:
mongo -u oldboy -p 123 10.0.0.53/oldboy

5.3 用戶管理例子

創(chuàng)建超級管理員:管理所有數(shù)據(jù)庫(必須use admin再去創(chuàng)建)

$ mongo
use admin

?db.createUser(
{
    user: "root",
    pwd: "root123",
    roles: [ { role: "root", db: "admin" } ]
}
)

驗證用戶

db.auth('root','root123')

配置文件中椅贱,加入以下配置

security:
  authorization: enabled

重啟mongodb

mongod -f /mongodb/conf/mongo.conf --shutdown 
mongod -f /mongodb/conf/mongo.conf 

登錄驗證

mongo -uroot -proot123  admin
mongo -uroot -proot123  10.0.0.53/admin

或者
mongo
use admin
db.auth('root','root123')

查看用戶:
use admin
db.system.users.find().pretty()

創(chuàng)建應(yīng)用用戶

use oldboy
db.createUser(
    {
        user: "app01",
        pwd: "app01",
        roles: [ { role: "readWrite" , db: "oldboy" } ]
    }
)

mongo -uapp01 -papp01 app

查詢mongodb中的用戶信息

mongo -uroot -proot123 10.0.0.51/admin
db.system.users.find().pretty()

5.3創(chuàng)建應(yīng)用用戶

use oldboy
db.createUser(
    {
        user: "app01",
        pwd: "app01",
        roles: [ { role: "readWrite" , db: "oldboy" } ]
    }
)
登陸
mongo  -uapp01 -papp01 app

查詢mongodb中的用戶信息

mongo -uroot -proot123 10.0.0.53/admin
db.system.users.find().pretty()

5.4 刪除用戶(root身份登錄,use到驗證庫)

刪除用戶
db.createUser({user: "app02",pwd: "app02",roles: [ { role: "readWrite" , db: "oldboy1" } ]})
mongo -uroot -proot123 10.0.0.52/admin
use oldboy1
db.dropUser("app02")

5.5 用戶管理注意事項

  1. 建用戶要有驗證庫只冻,管理員admin庇麦,普通用戶是要管理的庫
  2. 登錄時,注意驗證庫
mongo -uapp01 -papp01 10.0.0.52:27017/oldboy

  1. 重點參數(shù)
net:
   port: 27017
   bindIp: 10.0.0.51,127.0.0.1
security:
   authorization: enabled

6. MongoDB復(fù)制集RS(ReplicationSet)

6.1 基本原理

基本構(gòu)成是1主2從的結(jié)構(gòu)喜德,自帶互相監(jiān)控投票機制(Raft(MongoDB) Paxos(mysql MGR 用的是變種))
如果發(fā)生主庫宕機山橄,復(fù)制集內(nèi)部會進(jìn)行投票選舉,選擇一個新的主庫替代原有主庫對外提供服務(wù)舍悯。同時復(fù)制集會自動通知
客戶端程序航棱,主庫已經(jīng)發(fā)生切換了。應(yīng)用就會連接到新的主庫萌衬。

6.2 Replication Set配置過程詳解

6.2.1 規(guī)劃

三個以上的mongodb節(jié)點(或多實例)

6.2.2 環(huán)境準(zhǔn)備

注意修改ip
多個端口:
28017饮醇、28018、28019秕豫、28020

多套目錄:

su - mongod 
mkdir -p /mongodb/28017/conf /mongodb/28017/data /mongodb/28017/log
mkdir -p /mongodb/28018/conf /mongodb/28018/data /mongodb/28018/log
mkdir -p /mongodb/28019/conf /mongodb/28019/data /mongodb/28019/log
mkdir -p /mongodb/28020/conf /mongodb/28020/data /mongodb/28020/log

多套配置文件

/mongodb/28017/conf/mongod.conf
/mongodb/28018/conf/mongod.conf
/mongodb/28019/conf/mongod.conf
/mongodb/28020/conf/mongod.conf

配置文件內(nèi)容

cat > /mongodb/28017/conf/mongod.conf <<EOF
systemLog:
  destination: file
  path: /mongodb/28017/log/mongodb.log
  logAppend: true
storage:
  journal:
    enabled: true
  dbPath: /mongodb/28017/data
  directoryPerDB: true
  #engine: wiredTiger
  wiredTiger:
    engineConfig:
      cacheSizeGB: 1
      directoryForIndexes: true
    collectionConfig:
      blockCompressor: zlib
    indexConfig:
      prefixCompression: true
processManagement:
  fork: true
net:
  bindIp: 10.0.0.52,127.0.0.1
  port: 28017
replication:
  oplogSizeMB: 2048
  replSetName: my_repl
EOF
     
\cp  /mongodb/28017/conf/mongod.conf  /mongodb/28018/conf/
\cp  /mongodb/28017/conf/mongod.conf  /mongodb/28019/conf/
\cp  /mongodb/28017/conf/mongod.conf  /mongodb/28020/conf/

sed 's#28017#28018#g' /mongodb/28018/conf/mongod.conf -i
sed 's#28017#28019#g' /mongodb/28019/conf/mongod.conf -i
sed 's#28017#28020#g' /mongodb/28020/conf/mongod.conf -i

啟動多個實例備用

mongod -f /mongodb/28017/conf/mongod.conf
mongod -f /mongodb/28018/conf/mongod.conf
mongod -f /mongodb/28019/conf/mongod.conf
mongod -f /mongodb/28020/conf/mongod.conf
netstat -lnp|grep 280

6.3 配置普通復(fù)制集:

1主2從朴艰,從庫普通從庫

mongo --port 28017 admin
config = {_id: 'my_repl', members: [
                          {_id: 0, host: '10.0.0.52:28017'},
                          {_id: 1, host: '10.0.0.52:28018'},
                          {_id: 2, host: '10.0.0.52:28019'}]
          }                   
rs.initiate(config) 
查詢復(fù)制集狀態(tài)
rs.status();

6.4 1主1從1個arbiter

mongo -port 28017 admin
config = {_id: 'my_repl', members: [
                          {_id: 0, host: '10.0.0.52:28017'},
                          {_id: 1, host: '10.0.0.52:28018'},
                          {_id: 2, host: '10.0.0.52:28019',"arbiterOnly":true}]
          }                
rs.initiate(config) 

6.5 復(fù)制集管理操作

6.5.1 查看復(fù)制集狀態(tài)

rs.status();    //查看整體復(fù)制集狀態(tài)
rs.isMaster(); // 查看當(dāng)前是否是主節(jié)點
 rs.conf();   //查看復(fù)制集配置信息

6.5.2 添加刪除節(jié)點

rs.remove("ip:port"); // 刪除一個節(jié)點
rs.add("ip:port"); // 新增從節(jié)點
rs.addArb("ip:port"); // 新增仲裁節(jié)點
例子:
添加 arbiter節(jié)點
1混移、連接到主節(jié)點
[mongod@db03 ~]$ mongo --port 28018 admin

2祠墅、添加仲裁節(jié)點

my_repl:PRIMARY> rs.addArb("10.0.0.52:28020")

3、查看節(jié)點狀態(tài)

my_repl:PRIMARY> rs.isMaster()
{
    "hosts" : [
        "10.0.0.53:28017",
        "10.0.0.53:28018",
        "10.0.0.53:28019"
    ],
    "arbiters" : [
        "10.0.0.53:28020"
    ],
rs.remove("ip:port"); // 刪除一個節(jié)點    ```要從主節(jié)點刪除```
例子:
my_repl:PRIMARY> rs.remove("10.0.0.52:28019");
{ "ok" : 1 }
my_repl:PRIMARY> rs.isMaster()
rs.add("ip:port"); // 新增從節(jié)點
例子:
my_repl:PRIMARY> rs.add("10.0.0.52:28019")
{ "ok" : 1 }
my_repl:PRIMARY> rs.isMaster()

注意:所有的從庫都允許讀寫

rs.slaveOk() 臨時打開從庫節(jié)點讀寫功能沫屡。

6.5.3 特殊從節(jié)點

arbiter節(jié)點:主要負(fù)責(zé)選主過程中的投票饵隙,但是不存儲任何數(shù)據(jù),也不提供任何服務(wù)
hidden節(jié)點:隱藏節(jié)點沮脖,不參與選主金矛,也不對外提供服務(wù)。
delay節(jié)點:延時節(jié)點勺届,數(shù)據(jù)落后于主庫一段時間驶俊,因為數(shù)據(jù)是延時的,也不應(yīng)該提供服務(wù)或參與選主免姿,所以通常會配合hidden(隱藏)
一般情況下會將delay+hidden一起配置使用

介紹:

arbiter節(jié)點:主要負(fù)責(zé)選主過程中的投票饼酿,但是不存儲任何數(shù)據(jù),也不提供任何服務(wù)
hidden節(jié)點:隱藏節(jié)點,不參與選主故俐,也不對外提供服務(wù)想鹰。
delay節(jié)點:延時節(jié)點,數(shù)據(jù)落后于主庫一段時間药版,因為數(shù)據(jù)是延時的辑舷,也不應(yīng)該提供服務(wù)或參與選主,所以通常會配合hidden(隱藏)
一般情況下會將delay+hidden一起配置使用

配置延時節(jié)點(一般延時節(jié)點也配置成hidden)

cfg=rs.conf() 
cfg.members[2].priority=0
cfg.members[2].hidden=true
cfg.members[2].slaveDelay=120
rs.reconfig(cfg)    

取消以上配置

注意:member里面的數(shù)字要看情況填寫槽片,如果最開始沒有改過的話就寫標(biāo)注的id,如果有改變就從0開始數(shù)即可何缓。

cfg=rs.conf() 
cfg.members[2].priority=1
cfg.members[2].hidden=false
cfg.members[2].slaveDelay=0
rs.reconfig(cfg)    
配置成功后,通過以下命令查詢配置后的屬性
rs.conf(); 

6.5.4 副本集其他操作命令

查看副本集的配置信息

admin> rs.conf()

查看副本集各成員的狀態(tài)

admin> rs.status()

++++++++++++++++++++++++++++++++++++++++++++++++
--副本集角色切換(不要人為隨便操作)

admin> rs.stepDown()

注:
admin> rs.freeze(300) //鎖定從还栓,使其不會轉(zhuǎn)變成主庫
freeze()和stepDown單位都是秒碌廓。
+++++++++++++++++++++++++++++++++++++++++++++
設(shè)置副本節(jié)點可讀:在副本節(jié)點執(zhí)行

admin> rs.slaveOk()
eg:
admin> use app
switched to db app
app> db.createCollection('a')
{ "ok" : 0, "errmsg" : "not master", "code" : 10107 }

查看副本節(jié)點(監(jiān)控主從延時)

admin> rs.printSlaveReplicationInfo()
source: 192.168.1.22:27017
    syncedTo: Thu May 26 2016 10:28:56 GMT+0800 (CST)
    0 secs (0 hrs) behind the primary

OPlog日志(備份恢復(fù)章節(jié))

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市剩盒,隨后出現(xiàn)的幾起案子谷婆,更是在濱河造成了極大的恐慌,老刑警劉巖勃刨,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件波材,死亡現(xiàn)場離奇詭異股淡,居然都是意外死亡身隐,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進(jìn)店門唯灵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來贾铝,“玉大人,你說我怎么就攤上這事埠帕」缚” “怎么了?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵敛瓷,是天一觀的道長叁巨。 經(jīng)常有香客問我,道長呐籽,這世上最難降的妖魔是什么锋勺? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮狡蝶,結(jié)果婚禮上庶橱,老公的妹妹穿的比我還像新娘。我一直安慰自己贪惹,他們只是感情好苏章,可當(dāng)我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般枫绅。 火紅的嫁衣襯著肌膚如雪泉孩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天并淋,我揣著相機與錄音棵譬,去河邊找鬼。 笑死预伺,一個胖子當(dāng)著我的面吹牛订咸,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播酬诀,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼脏嚷,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了瞒御?” 一聲冷哼從身側(cè)響起父叙,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎肴裙,沒想到半個月后趾唱,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡蜻懦,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年甜癞,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宛乃。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡悠咱,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出征炼,到底是詐尸還是另有隱情析既,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布谆奥,位于F島的核電站眼坏,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏酸些。R本人自食惡果不足惜宰译,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望擂仍。 院中可真熱鬧囤屹,春花似錦、人聲如沸逢渔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至智厌,卻和暖如春诲泌,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背铣鹏。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工敷扫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人诚卸。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓葵第,卻偏偏與公主長得像,于是被迫代替她去往敵國和親合溺。 傳聞我的和親對象是個殘疾皇子卒密,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 第一章:邏輯結(jié)構(gòu) 選擇之所以稱之為選擇,肯定是痛苦的!------->oldguo 第二章:安裝部署 1、系統(tǒng)準(zhǔn)備...
    王亞飛1992閱讀 748評論 0 0
  • 目錄 一棠赛、mongodb介紹二哮奇、mongodb安裝三、連接mongodb四睛约、mongodb用戶管理五鼎俘、mongod...
    XiaoMing丶閱讀 404評論 0 0
  • MongoDB MongoDB 是由C++語言編寫的,是一個基于分布式文件存儲的開源數(shù)據(jù)庫系統(tǒng)辩涝。MongoDB 將...
    hxx閱讀 460評論 0 0
  • MongoDB的訪問控制能夠有效保證數(shù)據(jù)庫的安全贸伐,訪問控制是指綁定Application監(jiān)聽的IP地址,設(shè)置監(jiān)聽端...
    散入風(fēng)中閱讀 1,285評論 0 3
  • 一膀值、MongoDB簡介 1.概述 ? MongoDB是一個基于分布式文件存儲的數(shù)據(jù)庫棍丐,由C++語言編寫。旨在為WE...
    鄭元吉閱讀 978評論 0 2