Posted under » MongoDB on 26 Jan 2024
You may want to export data to JSON format by
$ mongoexport --db mth --collection students --out output.json $ mongoexport --db=mth --collection=students --type=csv --fields=username,cid --query='{"username":"hanafi"}' --noHeaderLine --out=taik.csv
Please note that query='{"username":"hanafi"}' is different from query="{'username':'hanafi'}". Doing the later will cause a JSON error.
To import
$ mongoimport --db mth --collection students --file output.json $ mongoimport --db mth --collection students --jsonArray --file output.json
Also mongoimport does not import the indexes so you have to recreate them.
If you want backup everything including the indexes, then you should do a mongodump which is equivalent to a mysqldump.
$ mongodump --db students --out $(date +'%m-%d-%y') $ mongodump --db students --out pelajar
The first example will create a folder with a data format. This is great for cron backups.
The 2nd example will create a folder called pelajar. Inside the pelajar folder will be a students folder. Why I differentiate is because when you want to restore it later, there will be less confusion.
$ mongorestore --db students --drop pelajar/students #whole database $ mongorestore --db students --collection psy pelajar/students/psy.bson --drop