随笔-86  评论-33  文章-0  trackbacks-0

Command Line

--help

Show command line options

--nodb

Start without a db, you can connect later with new Mongo() or connect()

--shell

After running a .js file from the command line, stay in the shell rather than terminating

Special Command Helpers

Non-javascript convenience macros:

help

Show help

db.help()

Show help on db methods

db.myColl.help()

Show help on collection methods

show dbs

Print a list of all databases on this server

use dbname

Set the db variable to represent usage of dbname on the server

show collections

Print a list of all collections for current database

show users

Print a list of users for current database

show profile

Print most recent profiling operations that took >= 1ms

Basic Shell Javascript Operations

db

The variable that references the current database object / connection. Already defined for you in your instance.

db.auth(user,pass)

Authenticate with the database (if running in secure mode).

coll = db.collection

Access a specific collection within the database.

cursor = coll.find();

Find all objects in the collection. See queries.

coll.remove(objpattern);

Remove matching objects from the collection. 
objpattern is an object specifying fields to match. E.g.: coll.remove( { name: "Joe" } );

coll.save(object)

Save an object in the collection, or update if already there. 
If your object has a presave method, that method will be called before the object is saved to the db (before both updates and inserts)

coll.insert(object) 

Insert object in collection.  No check is made (i.e., no upsert) that the object is not already present in the collection. 

coll.update(...) 

Update an object in a collection.  See the Updating documentation; update() has many options. 

coll.ensureIndex( { name: 1 } )

Creates an index on tab.name. Does nothing if index already exists.

coll.update(...)

 

coll.drop()

Drops the collection coll

db.getSisterDB(name)

Return a reference to another database using this same connection. Usage example:db.getSisterDB('production').getCollectionNames()

Queries

coll.find()

Find all.

it

Continue iterating the last cursor returned from find().

coll.find(criteria );

Find objects matching criteria in the collection. E.g.: coll.find( { name: "Joe" } );

coll.findOne(criteria );

Find and return a single object. Returns null if not found. If you want only one object returned, this is more efficient than just find() as limit(1) is implied. You may use regular expressions if the element type is a string, number, or date: coll.find( { name: /joe/i } );

coll.find( criteria, fields );

Get just specific fields from the object. E.g.: coll.find( {}, {name:true} );

coll.find().sort( {field:1[,field:1] });

Return results in the specified order (field ASC). Use -1 for DESC.

coll.find(criteria ).sort( { field : 1 } )

Return the objects matching criteria, sorted by field.

coll.find( ... ).limit(n)

Limit result to n rows. Highly recommended if you need only a certain number of rows for best performance.

coll.find( ... ).skip(n )

Skip n results.

coll.count()

Returns total number of objects in the collection.

coll.find( ... ).count()

Returns the total number of objects that match the query. Note that the number ignores limit and skip; for example if 100 records match but the limit is 10, count() will return 100. This will be faster than iterating yourself, but still take time.

More information: see queries.

Error Checking

db.getLastError()

Returns error from the last operation.

db.getPrevError()

Returns error from previous operations.

db.resetError()

Clear error memory.

Administrative Command Helpers

db.cloneDatabase(fromhost)

Clone the current database from the other host specified. fromhost database must be in noauth mode.

db.copyDatabase(fromdb, todb, fromhost)

Copy fromhost/fromdb to todb on this server. fromhost must be in noauth mode.

db.repairDatabase()

Repair and compact the current database. This operation can be very slow on large databases.

db.addUser(user,pwd)

Add user to current database.

db.getCollectionNames()

get list of all collections.

db.dropDatabase()

Drops the current database.

Opening Additional Connections

db = connect("<host>:<port>/<dbname>")

Open a new database connection. One may have multiple connections within a single shell, however, automatic getLastError reporting by the shell is done for the 'db' variable only. See here for an example of connect().

conn = new Mongo("hostname")

Open a connection to a new server. Use getDB() to select a database thereafter.

db = conn.getDB("dbname")

Select a specific database for a connection

Miscellaneous

Object.bsonsize(db.foo.findOne())

prints the bson size of a db object (mongo version 1.3 and greater)

db.foo.findOne().bsonsize()

prints the bson size of a db object (mongo versions predating 1.3)

 

posted on 2010-07-05 11:15 Derek.Guo 阅读(534) 评论(0)  编辑  收藏 所属分类: NoSqlDB

只有注册用户登录后才能发表评论。


网站导航:
 
MSN:envoydada@hotmail.com QQ:34935442