Skip to main content

A simple master-slave database router that can route all reads to slave(s) and writes to a master database.

Project description

# django-master-slave-router
---
A simple database router that lets you route all reads to slave(s) and writes to a master database in a django project. It **DOES NOT** take care of replication nor does it handle scenarios where your databases are down/unavailable.

## Installation

Install the package through pip.

pip install django-master-slave-router

Prerequisites:

* Django >= 1.5


## Usage

Add the following settings inside your project's **settings.py**

1) Add 'master\_slave_router' to INSTALLED\_APPS.

INSTALLED_APPS = (
...
'master_slave_router',
)

2) Add MasterSlaveRouter to DATABASE_ROUTERS

DATABASE_ROUTERS = ('master_slave_router.MasterSlaveRouter')


3) Add connection settings for slave/master databases.

DATABASES = {
'default': {
...
},

'test_slave_1': {
...
},

'test_slave_2': {
...
}
}

4) Specify name(s) of the master and slave connections.

SLAVE_DATABASES = ('test_slave1', 'test_slave2')
MASTER_DATABASE = 'default'



## Licence
MIT.

Project details


Release history Release notifications | RSS feed

This version

0.2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page