mongoDB-2.3.0: Driver (client) for MongoDB, a free, scalable, fast, document DBMS

Safe HaskellNone
LanguageHaskell2010

Database.MongoDB.Admin

Contents

Description

Database administrative functions

Synopsis

Admin

Collection

createCollection :: MonadIO m => [CollectionOption] -> Collection -> Action m Document #

Create collection with given options. You only need to call this to set options, otherwise a collection is created automatically on first use with no options.

renameCollection :: MonadIO m => Collection -> Collection -> Action m Document #

Rename first collection to second collection

dropCollection :: MonadIO m => Collection -> Action m Bool #

Delete the given collection! Return True if collection existed (and was deleted); return False if collection did not exist (and no action).

validateCollection :: MonadIO m => Collection -> Action m Document #

This operation takes a while

Index

data Index #

Instances

Eq Index # 

Methods

(==) :: Index -> Index -> Bool #

(/=) :: Index -> Index -> Bool #

Show Index # 

Methods

showsPrec :: Int -> Index -> ShowS #

show :: Index -> String #

showList :: [Index] -> ShowS #

index :: Collection -> Order -> Index #

Spec of index of ordered keys on collection. Name is generated from keys. Unique and dropDups are False.

ensureIndex :: MonadIO m => Index -> Action m () #

Create index if we did not already create one. May be called repeatedly with practically no performance hit, because we remember if we already called this for the same index (although this memory gets wiped out every 15 minutes, in case another client drops the index and we want to create it again).

createIndex :: MonadIO m => Index -> Action m () #

Create index on the server. This call goes to the server every time.

dropIndex :: MonadIO m => Collection -> IndexName -> Action m Document #

Remove the index

getIndexes :: MonadIO m => Collection -> Action m [Document] #

Get all indexes on this collection

dropIndexes :: MonadIO m => Collection -> Action m Document #

Drop all indexes on this collection

User

allUsers :: MonadIO m => Action m [Document] #

Fetch all users of this database

addUser :: MonadIO m => Bool -> Username -> Password -> Action m () #

Add user with password with read-only access if bool is True or read-write access if bool is False

Database

admin :: Database #

"admin" database

cloneDatabase :: MonadIO m => Database -> Host -> Action m Document #

Copy database from given host to the server I am connected to. Fails and returns "ok" = 0 if we don't have permission to read from given server (use copyDatabase in this case).

copyDatabase :: MonadIO m => Database -> Host -> Maybe (Username, Password) -> Database -> Action m Document #

Copy database from given host to the server I am connected to. If username & password is supplied use them to read from given host.

dropDatabase :: MonadIO m => Database -> Action m Document #

Delete the given database!

repairDatabase :: MonadIO m => Database -> Action m Document #

Attempt to fix any corrupt records. This operation takes a while.

Server

Diagnotics

Collection

Profiling

type MilliSec = Int #

Database

type OpNum = Int #

currentOp :: MonadIO m => Action m (Maybe Document) #

See currently running operation on the database, if any

Server