1、建立儲存分片資料的資料夾
$ mkdir /home/zikie/data/db/shardsvr1
$ mkdir /home/zikie/data/db/shardsvr2
$ mkdir /home/zikie/data/db/config
# log檔案
$ /home/zikie/data/log/log_shardsvr1
$ /home/zikie/data/log/log_shardsvr2
$ /home/zikie/data/log/log_config
$ /home/zikie/data/log/log_mongos
2、在一台機器上模擬兩個shard,啟動:
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongod --dbpath=/home/zikie/data/db/shardsvr1/ --logpath=/home/zikie/data/log/log_shardsvr1 --port 27017 --shardsvr --fork
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongod --dbpath=/home/zikie/data/db/shardsvr2/ --logpath=/home/zikie/data/log/log_shardsvr2 --port 27018 --shardsvr --fork
3、啟動配置伺服器
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongod --smallfiles --dbpath=/home/zikie/data/db/config --logpath=/home/zikie/data/log/log_config --port 10000 --configsvr --fork
4、啟動mongos
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongos --port 20000 --configdb localhost:10000 --chunksize 5 --logpath=/home/zikie/data/log/log_mongos --fork
5、連線mongos
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongo localhost:20000/admin
6、新增分片
$ db.runcommand()
$ db.runcommand()
檢視分片資訊
$ db.runcommand()
7、在mongos上連線上配置伺服器
$ config = connect("localhost:10000") // 連線配置伺服器
$ config = config.getsisterdb("config") // 選擇資料庫
$ test = db.getsisterdb("test") // 建立test資料庫
$ db.runcommand() // 開啟test資料庫的分片功能
$ db.runcommand(}) // 以gid開啟test集合的分片功能
檢視分片資訊
$ db.printshardingstatus()
檢視集合資訊
$ db.test.stats()
刪除片命令
$ db.runcommand()
8、參考資料
搭建mongodb分片
這是一種將海量的資料水平擴充套件的資料庫集群系統,資料分表儲存在sharding的各個節點上,使用者通過簡單的配置就可以很方便地構建乙個分布式mongodb集群。mongodb 的資料分塊稱為 chunk。每個 chunk 都是 collection中一段連續的資料記錄,通常最大尺寸是 200mb,...
MongoDB分片技術
在mongodb裡面存在另一種集群,就是分片技術,跟sql server的表分割槽類似,我們知道當資料量達到t級別的時候,我們的磁碟,記憶體 就吃不消了,針對這樣的場景我們該如何應對。一 分片 mongodb採用將集合進行拆分,然後將拆分的資料均攤到幾個片上的一種解決方案。下面我對這張 釋一下 人臉...
mongodb分片技術
在mongodb裡面存在另一種集群,就是分片技術,跟sql server的表分割槽類似,我們知道當資料量達到t級別的時候,我們的磁碟,記憶體 就吃不消了,針對這樣的場景我們該如何應對。一 分片 mongodb採用將集合進行拆分,然後將拆分的資料均攤到幾個片上的一種解決方案。下面我對這張 釋一下 人臉...