乱七八糟

**关于片键的选择** 在创建分片集群时,片键一定要慎选。随便选择一个字段作为片键,会容易导致巨大块的产生。这样分片就是去了意义。 如果没有好的集合键,建议使用"_id"字段做哈希,这样能保证,集合数据平均分布到所有分片上。无论使用何种聚合键, 都**必须保证读和写平均的分布**以及充分利用集群中的每个节点。 **mongoexport 导出集合** -h 数据库主机IP -u 数据库用户名 -p 数据库密码 -d 库名 -c 标明 -f 导出列 -o 导出文件名 -q 导出数据的过滤条件 -authenticationDatabase 验证数据的名称 shell命令行 => “/home/mongo/mongodb/bin/mongoexport -h 182.92.239.193:23717 --authenticationDatabase admin -d JBN_PRO -c sys_menu -u dba -p jingzhongyue1 -o sysMenu.csv” **mongoimport 导入集合** -h 数据库ID -u 数据库用户 -p 数据库密码 -d 库名 -c 集合名 --drop 插入之前删掉原有数据 --headerline 第一行为列表,不需要导入 -j 同时运行的插入操作数默认:1,并行 --authenticationDatabase 验证数据的名称 --file 导入的文件 shell命令行 => “/home/mongo/mongodb/bin/mongoimport -h 182.92.239.193:23717 --authenticationDatabase admin -u dba -p jingzhongyue1 -d BNZ_TEST -c sys_menu_test --file /home/mongo/mongodb/bin/sysMenu.csv” **恢复某一个集合** ``` /home/mongo/mongodb/bin/mongorestore --host 127.0.0.1:23717 --authenticationDatabase admin -u dba -p jingzhongyue1 --db JBN_PRO --collection sys_depart --drop /root/mongobak/20201211/JBN_PRO/sys_depart.bson ``` 查看库信息:db.stats(); db:库名 collections:当前库有多少个集合(表) views: objects:当前库所有集合中欧多上条数据 avgObjSize:表条数据的平均大小,单位bytes dataSize:当前库所有数据的总大小,不是指占用磁盘大小,单位bytes storageSize:当前库占用磁盘大小,单位bytes numExtents:不知道-。- indexes:当前库的索引数 indexSize:当前库索引占用磁盘大小,单位bytes scaleFactor fsUsedSize: fsTotalSize: ok: 查看集合信息:db.collection.stats();