123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- mongoose:
- 删除子文档:collection.update({ 'students.stuid': id }, { $pull: { students: { id } } });
- 删除多条:collection.deleteMany();
- 查找+修改:collection.findAndUpdate({condition},{$set:{column:value,...}})
- 某字段值超过几位:collection.find({ $where: 'this.[column].length>x' })
- 模糊查找:collection.find({name:/刘睿峰/})
- rabbitMq:
- direct:只推送到key一直的交换机上
- fanout:广播式,所有的交换机都有
- topic:订阅key的消费者都有
- queue:队列,先到先得,1个消费者只能取1个
- 导出:mongoexport -d platform -c user -o d:/cms_user.json --type json
- 导入:mongoimport --db auth --collection menu --file ./menu.json
- 备份:
- #!/bin/bash
- #backup MongoDB
- #mongodump命令路径
- DUMP=/usr/local/mongodb/backup/mongodump
- #临时备份目录
- OUT_DIR=/usr/local/mongodb/backup/mongodb_bak/mongodb_bak_now
- #备份存放路径
- TAR_DIR=/usr/local/mongodb/backup/mongodb_bak/mongodb_bak_list
- #获取当前系统时间
- DATE=`date +%Y_%m_%d`
- #数据库账号
- DB_USER=admin
- #数据库密码
- DB_PASS=admin
- #DAYS=15代表删除15天前的备份,即只保留近15天的备份
- DAYS=15
- #最终保存的数据库备份文件
- TAR_BAK="mongodb_bak_$DATE.tar.gz"
- cd $OUT_DIR
- rm -rf $OUT_DIR/*
- mkdir -p $OUT_DIR/$DATE
- #备份全部数据库
- $DUMP -d train -o $OUT_DIR/$DATE
- #压缩为.tar.gz格式
- tar -zcPvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE
- #删除15天前的备份文件
- find $TAR_DIR/ -mtime +$DAYS -delete
- #执行上传
- $TAR_DIR/tosync.sh -a $TAR_BAK -b $DATE -c $TAR_DIR
- exit
- 上传服务器:
- #!/bin/bash
- #backup 同步服务器
- while getopts ":a:b:c:" opt
- do
- case $opt in
- a)
- FILE=$OPTARG
- echo "参数a的值$OPTARG"
- echo $FILE
- ;;
- b)
- DATE=$OPTARG
- echo "参数b的值$OPTARG"
- echo $DATE
- ;;
- c)
- DIR=$OPTARG
- echo "参数c的值$OPTARG"
- echo $DIR
- ;;
- ?)
- echo "未知参数"
- exit 1;;
- esac
- done
- cd $DIR
- git add $FILE
- git commit -m "$DATE"
- git remote set-url origin http://lrf402788946:lrf1327542758@git.cc-lotus.info/new_train/dataBase.git
- git push
- exit
|