Download the PipelineDB binary for your OS from our downloads page.
To install the PipelineDB RPM package, run:
sudo rpm -ivh pipelinedb-<version>.rpm
This will install PipelineDB at
/usr/lib/pipelinedb. To install at a prefix of your choosing, use the
sudo rpm -ivh --prefix=/path/to/pipelinedb pipelinedb-<version>.rpm
To install the PipelineDB Debian package, run:
sudo dpkg -i pipelinedb-<version>.deb
This will install PipelineDB at
Just double-click the
pipelinedb-<version>.pkg file to launch the OS X Installer. For older versions of OS X, you might need to install a few packages that PipelineDB depends on:
brew install json-c freexl
Once PipelineDB is installed, you can initialize a database directory. This is where PipelineDB will store all the files and data associated with a database. To initialize a data directory, run:
pipeline-init -D <data directory>
<data directory> is a nonexistent directory. Once this directory has been successfully initialized, you can run a PipelineDB server.
To run the PipelineDB server in the background, use the
pipeline-ctl driver and point it to your newly initialized data directory:
pipeline-ctl -D <data directory> -l pipelinedb.log start
-l option specifies the path of a logfile to log to. The
pipeline-ctl driver can also be used to stop running servers:
pipeline-ctl -D <data directory> stop
pipeline-ctl --help to see other available functionality. Finally, the PipelineDB server can also be run in the foreground directly:
pipelinedb -D <data directory>
To connect to a running server using the default database “pipeline”, the
pipeline command can be used:
PostgreSQL’s standard client,
psql, can also be used to connect to PipelineDB. Note that PipelineDB’s default port is
psql -p 5432 -h localhost pipeline
You can check out the Quickstart section to start streaming data into PipelineDB right now.
New in version 0.9.1.
The PipelineDB server can also be run in debug mode, which enables assertions as well as additional diagnostic output when something such as a crash occurs. Debug mode is designed to enable us to better support users when something goes wrong. It can be run in two ways:
First, with the
--debug flag in conjunction with
pipeline-ctl -d -D ... start pipeline-ctl --debug -D ... start
Or by executing the
pipelinedb-debug binary directly:
pipelinedb-debug -D <data directory>
The debug-mode binary uses unoptimized code and includes assertions and debug symbols, and as a result is not optimized for performance. Debug mode should only be used when reproducing errors.
PipelineDB’s configuration is generally synonymous with PostgreSQL’s configuration, so that is a good place to look for details about what everything in
By default, PipelineDB is not configured to allow incoming connections from remote hosts. To enable incoming connections, first set the following line in
listen_addresses = '*'
pg_hba.conf, add a line such as the following to allow incoming connections:
host all all <ip address>/<subnet> md5
For example, to allow incoming connections from any host:
host all all 0.0.0.0/0 md5
A PipelineDB Docker image is also available (thanks to Josh Berkus). It can be run with:
docker run -v /dev/shm:/dev/shm pipelinedb/pipelinedb
This image exposes port
5432 for interaction with PipelineDB; credentials are user
The database gets installed to
/mnt/pipelinedb, so if you want to put that on real storage, or modify the configuration files, then simply mount that as a volume before starting the image for the first time.
The configuration which installs with the image is appropriate for testing on your laptop. If you deploy this to production, you will want to edit pipelinedb.conf and substantially increase resource limits for most things.