MongoDB数据库迁移
1 导出:
mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径
mongodump -h 127.0.0.1 --port 27017 -u 用户名 -p 密码 -d 数据库 -o /home/data/
详细解释:
-h:mongodb所在的服务器地址(必须指定端口),不指定的话就是本地的127.0.0.1:27017
-u:用户名
-p:密码
-d:需要备份的数据库(导出整个mongodb就去掉)
-o:备份的数据存放的位置
mongodump备份还原数据库
格式:
mongorestore -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 --drop 文件存在路径
–drop是先删除所有的数据,再恢复,不需要删除可不加;
注意:如果数据库存在数据,要导入最新的数据,则需要加–upsert选项,会更新数据,否则会报错(提示重复键错误收集)
导入导出某表
导出
mongoexport -u 用户名 -p 密码 -d 数据库 -c station -o /home/data/station.json --type json -f stationid,name,city,area,level,lat,lon
导入
#方法1
./mongoimport -u 用户名 -p 密码 -d 数据库 -c station --file /home/station.json
#方法2
./mongoimport -u 用户名 -p 密码 -d 数据库 -c station --type json /home/station.json --drop
导出几张表
set -e
set -x
tables=('role'
'user'
)
for table in ${tables[@]}
do
mongodump -u 账号 -p 密码 -h 127.0.0.1:27017 -d 数据库名 -c $table --out db
done