Skip to content

ylg/taps

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Taps – simple database import/export app

A simple database agnostic import/export app to transfer data to/from a remote database.

Usage: Server

Here’s how you start a taps server

$ taps server postgres://localdbuser:localdbpass@localhost/dbname httpuser httppassword

You can also specify an encoding in the database url

$ taps server mysql://localdbuser:localdbpass@localhost/dbname?encoding=latin1 httpuser httppassword

Usage: Client

When you want to pull down a database from a taps server

$ taps pull postgres://dbuser:dbpassword@localhost/dbname http://httpuser:httppassword@example.com:5000

or when you want to push a local database to a taps server

$ taps push postgres://dbuser:dbpassword@localhost/dbname http://httpuser:httppassword@example.com:5000

Known Issues

  • Foreign Keys get lost in the schema transfer

  • Large tables get slower as the offset gets larger. This is due to it being inefficient having large offset values in queries. This only affects tables without a single primary key.

  • Tables without primary keys will be incredibly slow to transfer.

Meta

Maintained by Ricardo Chimal, Jr. (ricardo at heroku dot com)

Written by Ricardo Chimal, Jr. (ricardo at heroku dot com) and Adam Wiggins (adam at heroku dot com)

Early research and inspiration by Blake Mizerany

Released under the MIT License: www.opensource.org/licenses/mit-license.php

github.com/ricardochimal/taps

About

simple database import/export app

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%