目录
MongoDB 提供了一些工具,:
mongoimport
和mongoexport
,mongodump
等工具 https://www.mongodb.com/try/download/tools
官方文档:https://docs.mongodb.com/database-tools/?_ga=2.29559871.1661032572.1642390415-20619496.1636351487
数据库工具提供了操作数据库的一些脚本:
二进制导入导出
数据导入导出
诊断工具
GridFS工具
#!/bin/bash
echo "校验参数..."
taskNo=$1
if [ -z $taskNo ]
then
echo "taskNo 不允许为空!"
exit 2
fi
echo "export taskNo[${taskNo}] hdmap data ..."
# 日期
cur_date=`date +%Y%m%d%H%M%S`
mongo_db_tool_dir="/home/public/Soft/mongodb-5.0.4"
# 保存路径
save_path="/home/public/Soft/mongodb-5.0.4/hdmap_data_export/${cur_date}"
# 创建保存路径
mkdir -p ${save_path}
# 循环数组
for table in "my_task" "my_task_detail" "my_task_rel"
do
echo "start export table[${table}] data to ${save_path}/${table}.json"
if [ ${table} = "my_task_detail" ] || [ ${table} = "my_task_rel" ]
then
# 查询条件为tasknos数组包含taskNo的数据
${mongo_db_tool_dir}/tool/bin/mongoexport --host=127.0.0.1 --port=27018 --db=task_db --collection=${table} --type=json --jsonArray --query='{"tasknos":{"$all":["'${taskNo}'"]}}' --out=${save_path}/${table}.json
if [ $? -ne 0 ]
then
echo "export table [${table}] failed!"
else
echo "export table [${table}] success."
fi
else
# 查询条件为task_no为 taskNo的数据
${mongo_db_tool_dir}/tool/bin/mongoexport --host=127.0.0.1 --port=27018 --db=task_db --collection=${table} --type=json --jsonArray --query='{"task_no":"'${taskNo}'"}' --out=${save_path}/${table}.json
if [ $? -ne 0 ]
then
echo "export table [${table}] failed!"
else
echo "export table [${table}] success."
fi
fi
done
echo "export hdmap data over."
手机扫一扫
移动阅读更方便
你可能感兴趣的文章