Installation: Running as a Service

  • Running servers as OS services reduces downtime whenever a machine restarts because the servers automatically start every time the machine boots.

  • After completing the Server configuration process either via the Setup Wizard or Manually, you can register the Server as a Service using the rvn tool that can be found inside the RavenDB Server distribution package.

  • After registering RavenDB as a service, be sure to check your OS "Services" manager to see that the "RavenDB" service is there and that the Startup Type is "Automatic".

In this page:


The prerequisites for running RavenDB as a Service are defined here.



To register RavenDB as a Service on Windows OS, run PowerShell with administrator privileges.
Navigate to the RavenDB package root and execute:


If you receive the following error:
"setup-as-service.ps1 cannot be loaded. The file [YourFileLocation] is not digitally signed"

  1. Run the following command Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass.
  2. Affirm the "Execution Policy Change" with Y.
  3. Run .\setup-as-service.ps1 again.

Alternatively, navigate to the node Server folder and execute the following command:

.\rvn.exe windows-service register --service-name RavenDB

If you want to run the service under a non-default user (Local Service is default) then execute the following command:

.\rvn.exe windows-service register --service-name RavenDB --service-user-name MyUser --service-user-password MyPassword


You can end the service using:


Alternatively, use the 'unregister' command as follows:

.\rvn.exe windows-service unregister --service-name RavenDB

Starting and Stopping

Service can be also controlled using the start and stop commands:

.\rvn.exe windows-service stop --service-name RavenDB
.\rvn.exe windows-service start --service-name RavenDB

Linux - Ubuntu 16.04

You can run RavenDB as a daemon by running the script from the package root.

Alternatively, open a bash terminal, and create the following file /etc/systemd/system/ravendb.service, using super-user permissions:

Description=RavenDB v4.0



Note: Replace <desired-user> with your username and <path-to-RavenDB> with your path.

Then register the service and enable it on startup:

systemctl daemon-reload
systemctl enable ravendb.service

Start the service:

systemctl start ravendb.service

View its status using:

systemctl status ravendb.service
journalctl -f -u ravendb.service