MongoDB配置及一般操作 - MongoDB從入門到刪庫

安裝MongoDB

1耳胎、mongo文件說明

名稱 說明
mongod 是數(shù)據(jù)庫服務端友题,不能暴露再公共網(wǎng)絡都办,主要實現(xiàn)服務器端數(shù)據(jù)庫的數(shù)據(jù)處理美侦、數(shù)據(jù)訪問管理及其他后臺管理系谐。
mongo 客戶端 shell 程序巾陕。
mongos 路由管理程序讨跟,用于分片集群環(huán)境下系統(tǒng)訪問的路由管理。
mongostat 運行狀態(tài)監(jiān)控工具鄙煤。
mongotop 監(jiān)控工具晾匠,對讀寫數(shù)據(jù)進行統(tǒng)計。
mongodump 導出備份工具(二進制)梯刚。
mongorestore 備份數(shù)據(jù)恢復工具凉馆,跟mongodump一起使用(二進制)。
mongoexport 以JSON或CSV格式導出數(shù)據(jù)庫數(shù)據(jù)亡资。
mongoimport 備份數(shù)據(jù)恢復工具澜共,跟mongoexport一起使用。
bsondump 將BSON文件轉(zhuǎn)換為可閱讀的格式锥腻。
mongofiles 把任何數(shù)據(jù)類型文件上傳到MongoDB中嗦董。
mongooplog 以Oplog輪詢方式,實現(xiàn)對遠程服務器上的數(shù)據(jù)同步到本地磁盤瘦黑。
mongoperf 測試磁盤IO性能的工具京革。

2、安裝mongo

# 添加yum源
[root@gz-tencent ~]# cat > /etc/yum.repos.d/mongodb-org-4.0.repo << EOF
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
EOF

# 安裝mongo
[root@gz-tencent ~]# sudo yum install -y mongodb-org
[root@gz-tencent ~]# sudo service mongod start
[root@gz-tencent ~]# sudo chkconfig mongod on

# 連接shell
[root@gz-tencent ~]# mongo

3幸斥、docker運行mongo匹摇,so easy !

# 新建綁定目錄
[root@gz-tencent]# mkdir -p ~/mongo/{mongod-1,mongos-1}/{etc,data}
# 運行mongod
docker run --name mongod-1 -p 27017:27017 -v /mongo/mongod-1/etc:/etc/mongo -v ~/mongo/mongod-1/data:/data/db -d mongo

MongoDB常用配置

如何使用配置文件運行mongodb?直接修改配置文件/etc/mongod.conf甲葬、/etc/mongos.conf就可以了廊勃。

1、網(wǎng)絡配置說明:

net: 
   port: localhost
   # 綁定可訪問的IP地址演顾,IP地址用","隔開供搀,默認localhost
   bindIp: <string>
   # 是否綁定所有IP,默認 false
   bindIpAll: false
   # 最大并發(fā)連接數(shù)钠至,默認65536
   maxIncomingConnections: 65536
   # 客戶端請求內(nèi)容驗證葛虐,默認true
   wireObjectCheck: true
   compression:
      # 數(shù)據(jù)壓縮,默認:snappy棉钧,還支持zlib屿脐。zlib壓縮率高,但是慢宪卿。
      # snappy 比 zlib 更快的诵,但文件相對要大 20% 到 100%。
      compressors: snappy
   serviceExecutor: <string>

2佑钾、存儲配置說明

storage:
   # 實例存儲數(shù)據(jù)的目錄西疤,不要隨意修改,需要和安裝時一直休溶。
   dbPath: /data/db
   # 索引重建代赁,Mongod重啟會刪除不完整索引扰她,然后嘗試重建不完整索引 
   indexBuildRetry: true
   # 數(shù)據(jù)庫修復臨時存儲路徑
   repairPath: <string>
   # 數(shù)據(jù)操作記錄日志,只適用于Mongod
   journal:
      enabled: true
      # Mongod從內(nèi)存想數(shù)據(jù)操作記錄日志提交數(shù)據(jù)的最大間隔時間(ms)
      commitIntervalMs: <num>
   # 給每個數(shù)據(jù)庫建立獨立的子文件路徑
   directoryPerDB: false
   # 數(shù)據(jù)刷新到數(shù)據(jù)庫文件的間隔時間(秒)
   syncPeriodSecs: 60
   # 數(shù)據(jù)庫存儲引擎(wiredTiger/MMAPv1/inMemory)
   engine: wiredTiger
   # 相對于MMAPv1芭碍,wiredTiger可以壓縮最大80%的空間
   wiredTiger:
      engineConfig:
         # 數(shù)據(jù)在內(nèi)存中的緩存空間徒役,默認:50%RAM-1G或256M
         cacheSizeGB: <number>
         # 壓縮方式(none/snappy/zlib),壓縮wiredTiger日志
         journalCompressor: snappy
         # Mongod是否將索引和集合文件分開存放
         directoryForIndexes: false
      collectionConfig:
         # 集合數(shù)據(jù)的壓縮方式(none/snappy/zlib)
         blockCompressor: snappy
      indexConfig:
         # 啟用索引數(shù)據(jù)的前綴壓縮功能
         prefixCompression: true

3窖壕、審計日志說明

auditLog:
   # syslog:以json格式保存身份驗證到syslog
   # console:以json格式輸出信息到標準輸出
   # file:以json格式輸出信息到文件
   destination: <string>
   # JSON:輸出json格式文件忧勿;BSON:輸出bson二進制格式文件
   format: <string>
   path: <string>
   filter: <string>

審計filter的相關(guān)配置:

{
  atype: <String>,
  ts : { "$date": <timestamp> },
  local: { ip: <String>, port: <int> },
  remote: { ip: <String>, port: <int> },
  users : [ { user: <String>, db: <String> }, ... ],
  roles: [ { role: <String>, db: <String> }, ... ],
  param: <document>,
  result: <int>
}
字段 類型 記錄描述
atype string 記錄審計事件的行動,詳細信息和結(jié)果瞻讽。
ts document 文檔包含”$date”日期鍵值對鸳吸,其中是以時間戳格式的值
local document 文檔包含ip鍵值對,及port鍵值對
remote document 文檔包含與事件相關(guān)聯(lián)的遠程連接ip鍵值對和port鍵值對
users array 用戶識別文檔數(shù)組卸夕。由于MongoDB允許登錄不同的用戶數(shù)據(jù)庫层释,該數(shù)組可以有一個以上的用戶。每個文檔包含用戶名的user字段和該用戶身份驗證數(shù)據(jù)庫的db字段快集。
roles array 指定給用戶的角色的文檔數(shù)組贡羔,每個文檔包含角色名稱的role字段和該角色關(guān)聯(lián)的數(shù)據(jù)庫的db字段。
param document 定義審計事件的具體細節(jié)个初, 審計事件操作乖寒、細節(jié)和結(jié)果
result integer 錯誤代碼

查看示例:審計創(chuàng)建集合和刪除掉集合

auditLog:
   destination: file
   format: BSON
   path: /var/lib/mongo/auditLog.bson
   filter: ‘{ atype : {$in: [“createCollection”,”dropCollection” ] } }’
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市院溺,隨后出現(xiàn)的幾起案子楣嘁,更是在濱河造成了極大的恐慌,老刑警劉巖珍逸,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件逐虚,死亡現(xiàn)場離奇詭異,居然都是意外死亡谆膳,警方通過查閱死者的電腦和手機叭爱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來漱病,“玉大人买雾,你說我怎么就攤上這事⊙蠲保” “怎么了漓穿?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長注盈。 經(jīng)常有香客問我晃危,道長,這世上最難降的妖魔是什么老客? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任山害,我火速辦了婚禮纠俭,結(jié)果婚禮上沿量,老公的妹妹穿的比我還像新娘浪慌。我一直安慰自己,他們只是感情好朴则,可當我...
    茶點故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布权纤。 她就那樣靜靜地躺著,像睡著了一般乌妒。 火紅的嫁衣襯著肌膚如雪汹想。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天撤蚊,我揣著相機與錄音古掏,去河邊找鬼。 笑死侦啸,一個胖子當著我的面吹牛槽唾,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播光涂,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼庞萍,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了忘闻?” 一聲冷哼從身側(cè)響起钝计,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎齐佳,沒想到半個月后私恬,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡炼吴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年本鸣,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片缺厉。...
    茶點故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡永高,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出提针,到底是詐尸還是另有隱情命爬,我是刑警寧澤,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布辐脖,位于F島的核電站饲宛,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏嗜价。R本人自食惡果不足惜艇抠,卻給世界環(huán)境...
    茶點故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一幕庐、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧家淤,春花似錦异剥、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至青伤,卻和暖如春督怜,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背狠角。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工号杠, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人丰歌。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓姨蟋,卻偏偏與公主長得像,于是被迫代替她去往敵國和親动遭。 傳聞我的和親對象是個殘疾皇子芬探,可洞房花燭夜當晚...
    茶點故事閱讀 45,077評論 2 355

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