User Tools

Site Tools


DBdumper

DBdumper is a easy distributed network system for creating database dumps and restoring databases, managed via Web interface

It consists of three components

  1. dbagent, with purpose dump/restore/rename database on database management system
  2. dbstorage, very simple dump file storage
  3. dbmaster, web front-end management console

All components interact with REST RPC over HTTPS.

2018-Jan-12: Now I install first release DBdumper for regular backups 12 corporate finance databases what cover ~2000 staff.

2018-Jan-24: Now I install next release for all corporate DBMS for validation stage

You can

  1. Visualize list of databases adn dumps
  2. Create database dumps promptly and on schedule
  3. Quickly restore databases from backup copies
  4. Quickly transfer database(s) from one operation system/host to another
  5. Rename/Drop/Create empty database

Roles/user management, logging and other function now in development.

You can also

  1. Save dumps from any agent to any available file storage
  2. Restore a backup from a file storage to any dbms

That is, the data storage/recovery model is “any to any”

Limitation

  1. One agent per DBMS
  2. Just now only for PosgtesQL

But you/I/we =) can wrote interface for manage MySQL/MS SQL/… DBMS.
It may use around 200-300 code string.

RPC

I used a very simple kind of RPC over HTTP, basically abstracted from the transport layer. Procedure parameters are sent as parameters GET/POST, responses is sent as JSON structure. In future it is very easy to replace to full JSON RPC 2.0

Sources

Component communication diagram

Short description

Master interact with Agent(s) using commands (Web REST RPC)

  1. list databases/users
  2. create/alter/drop the database/user
  3. dump the database and put dump to selected store
  4. restore database from selected store and dump to agent

Master with Store(s)

  1. list dump files
  2. delete files

Agent(s) with DBMS(es) interact using native SQL API

Screens

Typical use case

Literature