1.下載服務。https://www.mongodb.com/ 點擊products 下拉第二列MongoDB server 選擇 4.0.6
2.下載下來后 有限管理員運行 一路安裝,可以不用安裝客戶端圖解
3.安裝完成后只有一個bin文件。根據以下圖片創建各個文件夾。
data 下面不用創建任何文件
conf 地下創建 mongo.conf
mongo.conf 文件內容:
# mongod.conf # for documentation of all options, see: # http://docs.mongodb.org/manual/reference/configuration-options/ # Where and how to store data. storage: dbPath: E:\xxx\MongoDB\shard01\s1\data journal: enabled: true # engine: # mmapv1: # wiredTiger: # where to write logging data. systemLog: destination: file logAppend: true path: E:\xxx\MongoDB\shard01\s1\log\mongo.log # network interfaces net: port: 28021 bindIp: 192.168.0.23 #processManagement: #security: #authorization: enabled #keyFile: E:\xx\MongoDB\shard01\s1\keyfile\mongodb.keyfile #operationProfiling: replication: oplogSizeMB: 2048 replSetName: sh1 #sharding: #clusterRole: shardsvr ## Enterprise-Only Options: #auditLog: #snmp:
log下面創建 mongo.log 文件
keyfile 下面創建 mongodb.keyfile 文件,為了復制集的用戶驗證。
安裝完成后將每個文件復制成3個放到一起將conf 中的路徑進行分別配置 port 端口號要改。
4.運行win+r 選擇管理員啟動cmd
5.開始注冊服務:
安裝成服務后可以到服務中查看。以此注冊s2,s3服務。
6.注冊完成后,將所有服務啟動
7.重新打開cmd 鏈接到其中的一個mongodb
8.在重新開啟2個cmd將其他2個也安裝這樣鏈接上
9.進入其中一個進行初始化配置
config = {_id: 'sh1', members: [{_id: 0, host: '192.168.0.23:28021'},{_id: 1, host: '192.168.0.23:28022'},{_id: 1, host: '192.168.0.23:28023',"arbiterOnly":true}] }
sh1 是我們配置文件中的復制集名稱,arbiterOnly 是否為仲裁節點
rs.initiate(config)
等一下,按enter 就會發現
primary 為主庫的意思,seconder為從庫的意思。
==創建用戶名
在主庫上運行
use admin
db.createUser( { user: "root", pwd: "root", roles: [ { role: "root", db: "admin" } ] } )
找到主庫的配置文件 conf 開啟一下
關於這個keyfile linux 上說的是
意思大概是將隨機一批數字然后base64編碼有666個字符的樣子,不是很清楚。我就是在網上隨機了一批數字然后base64編碼后生成的數據放到keyfile中。
conf 配置好后,將服務重新啟動,然后客戶單重新練級后 如果查看等報錯的話就會提示需要權限,然后轉到use admin下db.auth("admin","admin") 返回1就是 成功。然后登陸從節點進行登陸看一下是否需要提示。
如果都成功,可以寫入數據看一下復制集中是否有數據。
寫的有點亂。~~~~~~~~~~~~~~~~~~~~~~尷尬