27

Does anyone know how to populate mongodb with initial data? For example, with a traditional SQL database, you can put all your SQL statements in a textfile, then load that using a SQL command. This is extremely useful for unit testing.

Is it possible to do this with the mongo shell? For example, write down a list of shell statements into a file, and get the mongo shell to read the file and execute the statements.

Community
  • 1
  • 1
Erin Drummond
  • 5,347
  • 6
  • 35
  • 41

2 Answers2

38

./mongo server:27017/dbname --quiet my_commands.js

In my_commands.js:

db.users.insert({name:"john", email:"john@doe.com", age:12});
Mark
  • 5,994
  • 5
  • 42
  • 55
19

You can use the mongoimport tool that comes with MongoDB to import raw data.

To run scripts from a file, e.g. to recreate indexes, pass the file name as a command line argument:

mongo file.js "another file.js"
Niels van der Rest
  • 31,664
  • 16
  • 80
  • 86