1. 程式人生 > >阿里雲搭建MongoDB+遠端連線實現MongoDB應用(PHP版)

阿里雲搭建MongoDB+遠端連線實現MongoDB應用(PHP版)

                             MongoDB雲伺服器搭建連線說明文件

一、下載

二、雲伺服器MongoDB搭建

      1.遠端連線首要解決:

  • 進入雲伺服器ECS-->網路和安全-->安全組-->建立安全組-->配置規則 配置開放埠(本文以port=40000為例);
  • 關閉雲伺服器和遠端連線端防火牆;

      2.MongoDB分片叢集:

    (1)修改配置檔案使伺服器可被遠端連線:

  • 下載MongoDB,特別注意安裝的最後一步左下角不要勾選“install mongodb compass”;
  • C:\Program Files\MongoDB\Server\4.0\bin
    目錄下開啟mongod.cfg檔案,修改bindip=127.0.0.1為bindip=0.0.0.0;
  • 電腦搜尋“服務”,找到MongoDB Server服務,滑鼠右擊選擇重新啟動即可;

    (2)建立相關資料夾及日誌檔案:

  • C:\Program Files\MongoDB目錄下建立shard分片資料夾;
  • C:\Program Files\MongoDB\shard目錄下建立資料夾conf(配置伺服器),log(日誌檔案),rs(分片);
  • C:\Program Files\MongoDB\shard\conf目錄下建立資料夾conf1,conf2,conf3(配置伺服器副本集,至少3個);
  • C
    :\Program Files\MongoDB\shard\rs目錄下建立資料夾rsa1,rsa2,rsa3,rsb1,rsb2,rsb3,rsc1,rsc2,rsc3 (建立了三個分片,每個分片三個副本集);
  • C:\Program Files\MongoDB\shard\log目錄下建立日誌檔案conf1.log,conf2.log,conf3.log,rsa1.log,rsa2.log,rsa3.log,rsb1.log,rsb2.log,rsb3.log,rsc1.log.rsc2.log,rsc3.log, route.log(日誌檔案建立方法:開啟記事本另存為 - >儲存型別“所有檔案” - >檔名“conf1.log”);

   (3)建立分片rsa(建立的每個副本集命令列程式都不能關閉):

A.建立副本集rsa1:

  • 開啟命令列鍵入cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 接著鍵入mongod --port=27020 --dbpath "C:\Program Files\MongoDB\shard\rs\rsa1" --logpath "C:\Program Files\MongoDB\shard\log\rsa1.log" --logappend --shardsvr --replSet=rsa

B.建立副本集rsa2:

  • 開啟命令列鍵入cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 接著鍵入mongod --port=27021 --dbpath "C:\Program Files\MongoDB\shard\rs\rsa2" --logpath "C:\Program Files\MongoDB\shard\log\rsa2.log" --logappend --shardsvr --replSet=rsa

C.建立副本集rsa3:

  • 開啟命令列鍵入cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 接著鍵入mongod --port=27022 --dbpath "C:\Program Files\MongoDB\shard\rs\rsa3" --logpath "C:\Program Files\MongoDB\shard\log\rsa3.log" --logappend --shardsvr --replSet=rsa

D.配置分片rsa(配置完可關閉):

  • 開啟命令列鍵入cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 鍵入mongo localhost=27020
  • 鍵入rs.initiate({_id: 'rsa', members: [{_id: 0, host: 'localhost:27020'}, {_id: 1, host: 'localhost:27021'},{_id: 2, host: 'localhost:27022'}]}) ——初始化分片rsa

同上可建立分片rsb,rsc,標紅處是根據實際分片需更改的地方;

(4)建立配置伺服器conf (建立的每個副本集程式都不能關閉):

A.建立副本集conf1:

  • 開啟命令列鍵入cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 接著鍵入mongod --port=27100 --dbpath "C:\Program Files\MongoDB\shard\conf\conf1" --logpath "C:\Program Files\MongoDB\shard\log\conf1.log" --logappend --configsvr --replSet=conf;

B.建立副本集conf2:

  • 開啟命令列鍵入cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 接著鍵入mongod --port=27101 --dbpath "C:\Program Files\MongoDB\shard\conf\conf2" --logpath "C:\Program Files\MongoDB\shard\log\conf2.log" --logappend --configsvr --replSet=conf;

C.建立副本集conf3:

  • 開啟命令列鍵入cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 接著鍵入mongod --port=27102 --dbpath "C:\Program Files\MongoDB\shard\conf\conf3" --logpath "C:\Program Files\MongoDB\shard\log\conf3.log" --logappend --configsvr --replSet=conf;

D.配置伺服器conf(配置完可關閉):

  • 開啟命令列鍵入cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 鍵入mongo localhost=27100
  • 鍵入rs.initiate({_id: 'conf', members: [{_id: 0, host: 'localhost:27100'}, {_id: 1, host: 'localhost:27101'},{_id: 2, host: 'localhost:27102'},{_id: 3, host: 'localhost:27102'}]});

(5)建立查詢:

A.建立路由伺服器(建立的伺服器不能關閉):

  • 開啟命令列鍵入 cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 接著鍵入 mongos --port=40000 --bind_ip=192.168.2.79 --configdb conf/localhost:27100,localhost:27101,localhost:27102 --logpath " C:\Program Files \MongoDB\shard\log\route.log" --logappend;    ——使用內網地址建立mongos

B.配置路由伺服器(配置完可關閉):

  • 開啟命令列鍵入cd C:\Program Files\MongoDB\Server\4.0\bin;
  • 依次鍵入 mongo 192.168.2.79:40000
  • use admin ——mongos所有操作都需在admin中
  • db.runCommand({ addshard:'rsa/localhost:27020,localhost:27021,localhost:27022'})  ­——伺服器中新增分片rsa
  • db.runCommand({ addshard:'rsb/localhost:27030,localhost:27031,localhost:27032'})
  • db.runCommand({ addshard:'rsc/localhost:27040,localhost:27041,localhost:27042'})
  • db.runCommand({ enablesharding: 'panda'})  ——建立分片資料庫
  • sh.shardCollection("panda.data", { _id: "hashed" } ) ——雜湊雜湊儲存方式建立集合data,儲存於panda資料庫中

注:只有第一次需要配置分片和相關伺服器,但以後每次使用該資料庫和開啟MongoDB Compass之前還是需要如以上方式創建出所有分片副本集、配置伺服器副本集以及路由伺服器;

2.MongoDB Compass:

作為MongoDB的GUI,直接開啟此工具,輸入內網或公網IP和路由伺服器埠號port=40000即可檢視整個分片叢集文件結構,方便高效地進行文件查詢,同時也可直接將集合匯出為JSON格式儲存至本地。如果還需檢視具體分片,可再connect到localhost,埠號輸入對應分片主節點,但注意副節點不可進行檢視和操作,主副節點是mongodb自主通過選舉機制得出,可通過該分片任一副本集開啟mongo程式,鍵入rs.status()檢視具體選舉情況。

例:開啟命令列依次鍵入

  • cd C:\Program Files\MongoDB\Server\4.0\bin
  • mongo localhost=27030
  • rs.status()

​​​​​​​三、遠端實現MongoDB應用

1.修改配置檔案以連線雲伺服器:

  • 同樣需下載MongoDB,特別注意安裝的最後一步左下角不要勾選“install mongodb compass”;
  • C:\Program Files\MongoDB\Server\4.0\bin目錄下開啟mongod.cfg檔案,修改bindip=127.0.0.1為bindip=0.0.0.0;
  • 電腦搜尋“服務”,找到MongoDB Server服務,滑鼠右擊選擇重新啟動即可;

​​​​​​​2.MongoDB Compass:

直接開啟此工具,輸入公網IP和路由伺服器埠號port=40000即可檢視整個雲伺服器的分片叢集文件結構,方便高效地進行文件查詢,雲伺服器也會同步更新。

3.MongoDB PHP版擴充套件搭建:

LAST:小白一路踩坑填坑,終於能上線跑了……但畢竟作為阿里雲、騰訊雲等企業最貴的資料庫之一,如果人人都能輕易搭建做好管理,收費還有什麼意義呢……所以祝你好運