Project

tapsicle

0.0
No commit activity in last 3 years
No release in over 3 years
A simple database agnostic import/export app to transfer data to/from a remote database. Tapsicle includes fixes submitted by the community.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

>= 1.0.1
< 1.7.0, >= 1.4.0
~> 3.20.0
~> 1.4.4
~> 1.3.8
 Project Readme

Tapsicle – simple database import/export app¶ ↑

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

By no means did we write this code. This is a fork from wijet/taps which is in turn a fork of ricardochimal/taps. Both repos are no longer maintained. Feel free to make any pull-requests and I’ll try to keep this up to date.

Installation¶ ↑

gem install tapsicle

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

or when you want to transfer a list of tables

$ taps push postgres://dbuser:dbpassword@localhost/dbname http://httpuser:httppassword@example.com:5000 --tables logs,tags

or when you want to transfer tables that start with a word

$ taps push postgres://dbuser:dbpassword@localhost/dbname http://httpuser:httppassword@example.com:5000 --filter '^log_'

Known Issues¶ ↑

  • Foreign key constraints get lost in the schema transfer

  • Tables without primary keys will be incredibly slow to transfer. This is due to it being inefficient having large offset values in queries.

  • Multiple schemas are currently not supported

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

Special Thanks to Sequel for making this tool possible sequel.rubyforge.org/