MongoDB案例笔记
******Linux下的安装
tar -zxvf mongodb-linux-x86_64-4.0.11.tgz
3、移动并重命名
mv mongodb-linux-x86_64-4.0.11 /usr/local/mongodb
4、在mongodb目录下创建data、logs目录和logs/mongodb.log文件
mkdir data logs
vi logs/mongodb.log
:wq //保存退出
7、启动mongodb
./mongod --dbpath /root/mongodb_me/data --logpath /root/mongodb_me/logs/mongodb.log --port=27017 --fork --logappend
./mongod --dbpath /root/mongodb_me/data1 --logpath /root/mongodb_me/logs1/mongodb.log --port=27018 --fork
8、测试是否启动成功
./mongo localhost:27017
9.关闭服务
mongod --dbpath /root/mongodb_me/data --logpath /root/mongodb_me/logs/mongodb.log --shutdown
******Linux下的安装结束
***SpringBoot引入mongodb依赖
org.springframework.boot
spring-boot-starter-data-mongodb
***mongodb依赖结束
连接mongo*****
mongo localhost:27018
连接mongo结束*****
高可用**
./mongod --port 27017 --dbpath “/root/mongodb_me/data” --replSet rs0
./mongod --port 27018 --dbpath “/root/mongodb_me/data1” --replSet rs0
注意:两个replSet要同样
rs.initiate()
或者
rs.initiate({_id: ‘rs0’, members: [{_id: 0, host: ‘localhost:27030’}, {_id: 1, host: ‘localhost:27031’}]}) //不知道这条行不行
rs.add(“xxx.com:27018”)
rs.conf()
rs.status()
rs.isMaster()
注意:不能用localhost或者127.0.0.1,只能用域名
高可用结束**
****分片
nohup ./mongod --dbpath /root/mongodb_me/shard1 --port 27021 --shardsvr --replSet rs0 &
nohup ./mongod --dbpath /root/mongodb_me/shard2 --port 27022 --shardsvr --replSet rs0 &
./mongo localhost:27021
rs.initiate({_id: ‘rs0’, members: [{_id: 0, host: ‘hbt123.xyz:27021’}, {_id: 1, host: ‘hbt123.xyz:27022’}]})
nohup ./mongod --dbpath /root/mongodb_me/shard3 --port 27023 --shardsvr --replSet rs1 &
nohup ./mongod --dbpath /root/mongodb_me/shard4 --port 27024 --shardsvr --replSet rs1 &
./mongo localhost:27023
rs.initiate({_id: ‘rs1’, members: [{_id: 0, host: ‘hbt123.xyz:27023’}, {_id: 1, host: ‘hbt123.xyz:27024’}]})
nohup ./mongod --dbpath /root/mongodb_me/conf1 --port 27031 --configsvr --replSet conf &
nohup ./mongod --dbpath /root/mongodb_me/conf2 --port 27032 --configsvr --replSet conf &
./mongo localhost:27031
rs.initiate({_id: ‘conf’, members: [{_id: 0, host: ‘hbt123.xyz:27031’}, {_id: 1, host: ‘hbt123.xyz:27032’}]})
nohup ./mongos --port 40000 --configdb conf/localhost:27031,localhost:27032 --fork --logpath=/root/mongodb_me/route.log --logappend &
或者
nohup ./mongos --port 40000 --configdb conf/hbt123.xyz:27031,hbt123.xyz:27032 --fork --logpath=/root/mongodb_me/route.log–logappend &
./mongo localhost:40000
use admin
db.runCommand({ addshard: ‘rs0/hbt123.xyz:27021,hbt123.xyz:27022’})
db.runCommand({ addshard: ‘rs1/hbt123.xyz:27023,hbt123.xyz:27024’})
db.runCommand({ enablesharding: ‘hbt’})
use hbt
db.user.ensureIndex({username:1})
use admin
db.runCommand({ shardcollection: ‘hbt.user’, key: {username: 1}})
或者
db.runCommand({ shardcollection: ‘hbt.user’, key: {username: “hashed”}})
****分片结束