Setting up MongoDB as a Windows Service

Windows Services are long-running applications that run in the background, just like daemon threads. Databases are good candidates for such services, whereby they start and stop when the host machines start and stop (you may, however, choose to manually start/stop a service). Many database vendors do provide a feature to start the database as a service, when installed on the server. MongoDB also lets you do that, and that is what we will see in this recipe.

Getting ready

Refer to the Single node installation of MongoDB with options from the config file recipe in Chapter 1, Installing and Starting the MongoDB Server, to get information on how to start the MongoDB server using an external configuration file. As in this case, Mongo is run as a service, it cannot be provided with command-line arguments, and configuring it from a configuration file is the only alternative. Refer to the prerequisites of the Single node installation of MongoDB recipe in Chapter 1, Installing and Starting the MongoDB Server. This is all we will need for this recipe.

How to do it…

Let's take a look at the steps in detail:

  1. We will first create a config file with three configuration values, namely, the port, db path, and logfile path. We name the file mongo.conf and keep it in c:confmongo.conf with the following three entries in it (you may choose any path for the config file location, database, and logs):
    port = 27000
    dbpath = c:datamongodb
    logpath = c:logsmongo.log
  2. Execute the following steps from the Windows terminal, which you may need to execute as an administrator. In Windows 7, execute the following steps:
    1. Press the Windows key on your keyboard.
    2. In the Search programs and files space, type cmd.
    3. In the programs, the command prompt program will be seen. Right-click on it and select Run as administrator.
  3. In the shell, execute the following command:
    C:> mongod --config c:confmongo.conf –install
    

    The log printed out on the console should confirm that the service is installed properly

  4. The service can be started from the console as follows:
    C:> net start MongoDB
    
  5. The service can be stopped as follows:
    C:> net stop MongoDB
    
  6. Type services.msc in the Run window (Windows button + R). In the opened management console, search for the MongoDB service. We should see it as follows:
    How to do it…
  7. The service is automatic, that is, it will be started when the operating system starts. It can be changed to manual by right-clicking on the service and clicking on properties.
  8. To remove a service, we need to execute the following command from the command prompt:
    C:>mongod --remove
    
  9. There are more options available that can be used to configure the name of the service, display name, description, and the user account that is used to run the service. These can be provided as command-line arguments. Execute the following command to see the possible options, and take a look at the Windows Service Control Manager options:
    C:> mongod --help
    
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset