標籤:word protoc 系統 chm 可用性 RoCE one 無法串連 kill
MongoDB安裝及多執行個體啟動MongoDB簡介
MongoDB是一款跨平台、面向文檔的資料庫。可以實現高效能、高可用性,並且能夠輕鬆擴充,是一個基於分布式檔案儲存體的開來源資料庫系統,在高負載的情況下,添加更多的節點可以保證伺服器的效能。
在大資料時代中,大資料量的處理已經成了考量一個資料庫最重要的原因之一。MongoDB的一個主要目標就是儘可能的讓資料庫保持卓越的效能,這很大程度地決定了MongoDB的設計。MongoDB選擇了最大程度而利用記憶體資源用作緩衝來換取卓越的效能,並且會自動選擇速度最快的索引來進行查詢。MongoDB儘可能精簡資料庫,將儘可能多的操作交給用戶端,這種方式也是MongoDB能夠保持卓越效能的原因之一。
MongoDB是非關係性資料庫(NoSQL)中功能最豐富,最像關聯式資料庫的。不採用關聯式模式是為了擷取更好的擴充性,MongoDB不在有“行”的概念,其運行方式主要基於兩個概念:集合(collection)和文檔(document)。
MongoDB的特點
Mongo是一個高效能,開源,無模式的文檔型資料庫,它在許多情境下可用於替代傳統的關係型資料庫或鍵/值儲存方式。
1、面向集合的儲存:適合儲存物件及JSON形式的資料。
2、MongoDB安裝簡單,提供了面向文檔的儲存功能,操作起來比較容易。
3、MongoDB提供了複製,高可用性和自動分區功能。如果負載增加(需要更多的儲存空間和更強的處理能力),它可以分布在電腦網路中的其他節點上,這就是所謂的分區。
4、MongoDB支援豐富的查詢運算式。
5、高效的傳統儲存方式:支援位元據及大型物件(如照片或圖片)。
MongoDB適用領域
1、MongoDB可以為Web應用提供可擴充的高效能資料儲存解決方案。MongoDB主要適用領域有網站資料、分布式情境、資料緩衝和JSON文檔格式儲存。適合大資料量、高並發、弱事務的互連網應用,其內建的水平擴充機制提供了從幾百萬到十億層級的資料處理能力,可以很好的滿足Web2.0和移動互連網應用資料存放區的要求。
MongoDB安裝1、下載和安裝MongoDB及支援軟體。
我們這裡選擇的是直接下載軟體包,由於我使用的虛擬機器是CentOS7並且是64位版本,所以我們選擇對應的RedHat7版本64位。下載完後經過配置可以直接使用。由於軟體包已經啟用了SSL安全加密,所以需要我們安裝openssl相關的依賴包。
[[email protected] ~]# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.0.tgz #可以直接下載[[email protected] ~]# yum install openssl openssl-devel -y #安裝相關依賴包[[email protected] ~]# tar xvfz mongodb-linux-x86_64-rhel70-4.0.0.tgz -C /usr/local/#將壓縮包解壓到指定的目錄中[[email protected] ~]# mv /usr/local/mongodb-linux-x86_64-rhel70-4.0.0/ /usr/local/mongodb#重新命名軟體包,方便以後使用
2、建立資料存放區目錄,日誌儲存目錄及記錄檔
由於我們下載的是已經編譯好的軟體包,所以我們需要自行建立資料存放區目錄,日誌儲存日誌及記錄檔。
[[email protected] ~]# mkdir -p /data/mongodb1#建立資料存放區目錄[[email protected] ~]# mkdir -p /data/logs/mongodb#建立日誌儲存目錄[[email protected] ~]# touch /data/logs/mongodb/mongodb1.log#建立記錄檔[[email protected] ~]# chmod -R 777 /data/logs/mongodb/mongodb1.log #修改記錄檔許可權,方便下面操作
當MongoDB處於頻繁訪問的狀態,如果shell啟動進程所佔用的資源設定過低,會產生錯誤到時無法串連MongoDB。
[[email protected] ~]# ulimit -n 2500 #修改shell所能啟用的最大進程數[[email protected] ~]# ulimit -u 2500 #修改shell所能開啟的最大檔案數
3、建立MongoDB設定檔和配置啟動參數
下載下來的軟體包沒有設定檔,這裡需要我們自行建立。
[[email protected] ~]# cd /usr/local/mongodb/bin/[[email protected] bin]# vim mongodb1.confport=27017 #預設伺服器連接埠號碼dbpath=/data/mongodb1 #資料存放區目錄,就是我們上一步建立的logpath=/data/logs/mongodb/mongodb1.log #記錄檔logappend=true #使用追加方式寫日誌fork=true #後台運行maxConns=5000 #最大串連數
4、啟動和停止MongoDB
安裝並且配置好後就可以啟動的們的MongoDB服務了
[[email protected] bin]# export PATH=$PATH:/usr/local/mongodb/bin/#可以把MongoDB的路徑加入到環境變數,這樣可以直接使用MongoDB的相關命令[[email protected] bin]# mongod -f /usr/local/mongodb/bin/mongodb1.conf #mongod用於啟動服務進程,-f後面加上服務的設定檔路徑[[email protected] bin]# netstat -ntap | grep mongod #可以查看MongoDB的進程啟動狀態tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 78984/mongo[[email protected] bin]# mongo #可以進入到資料庫中[[email protected] bin]# mongod -f /usr/local/mongodb/bin/mongodb1.conf --shutdown#--shutdown表示關閉MongoDB服務進程2018-07-16T21:22:05.828+0800 I CONTROL [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols ‘none‘killing process with pid: 78984[[email protected] bin]# netstat -ntap | grep mongod #沒有MongoDB進程
啟動MongoDB多執行個體
在單台伺服器資源充分的情況下,可以使用多執行個體,以便充分使用伺服器資源。步驟和上面相同,再建立一組資料存放區目錄、記錄檔和設定檔。
[[email protected] bin]# mkdir -p /data/mongodb2#建立新的資料存放區目錄[[email protected] bin]# touch /data/logs/mongodb/mongodb2.log #建立新的記錄檔[[email protected] bin]# chmod -R 777 /data/logs/mongodb/mongodb2.log #賦予記錄檔對應許可權[[email protected] bin]# chmod -R 777 /data/logs/mongodb/mongodb2.log [[email protected] bin]# cp /usr/local/mongodb/bin/mongodb1.conf /usr/local/mongodb/bin/mongodb2.conf #複製一份新的設定檔,再修改相應的參數port=27018 #設定一個新的連接埠號碼dbpath=/data/mongodb2 #設定新的資料存放區目錄 logpath=/data/logs/mongodb/mongodb2.log #設定新的記錄檔logappend=truefork=truemaxConns=5000[[email protected] bin]# mongod -f /usr/local/mongodb/bin/mongodb2.conf #開啟新執行個體的進程[[email protected] bin]# mongod -f /usr/local/mongodb/bin/mongodb1.conf 2018-07-16T21:31:16.103+0800 I CONTROL [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols ‘none‘about to fork child process, waiting until server is ready for connections.forked process: 79334child process started successfully, parent exiting[[email protected] bin]# netstat -ntap | grep mongotcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 79334/mongod tcp 0 0 127.0.0.1:27018 0.0.0.0:* LISTEN 79304/mongod #可以看到開啟了兩個執行個體
MongoDB安裝及多執行個體啟動