perl-DBIx-OnlineDDL - Run DDL on online databases safely

Property Value
Distribution ALT Linux Sisyphus
Repository Autoimports noarch
Package filename perl-DBIx-OnlineDDL-0.92-alt1.noarch.rpm
Package name perl-DBIx-OnlineDDL
Package version 0.92
Package release alt1
Package architecture noarch
Package type rpm
Category Development/Perl
Homepage -
License -
Maintainer -
Download size 100.31 KB
Installed size 100.31 KB
This is a database utility class for running DDL operations (like `ALTER TABLE') safely
on large tables.  It has a similar scope as the DBIx::BatchChunker manpage, but is designed for
DDL, rather than DML.  It also has a similar function to other utilities like
pt-online-schema-change or
gh-ost, but actually works properly with foreign
keys, and is written as a Perl module to hook directly into a DBI handle.
Like most online schema change tools, this works by creating a new shell table that looks
just like the old table, running the DDL changes (through the the before_triggers entry elsewhere in this document hook),
copying data to the new table, and swapping the tables.  Triggers are created to keep the
data in sync.  See the STEP METHODS entry elsewhere in this document for more information.
The full operation is protected with an undo stack via the Eval::Reversible manpage.
If any step in the process fails, the undo stack is run to return the DB back to normal.
This module uses as many of the DBI info methods as possible, along with ANSI SQL in most
places, to be compatible with multiple RDBMS.  So far, it will work with MySQL or SQLite,
but can be expanded to include more systems with a relatively small amount of code
changes.  (See the DBIx::OnlineDDL::Helper::Base manpage for details.)
DISCLAIMER: You should not rely on this class to magically fix any and all locking
problems the DB might experience just because it's being used.  Thorough testing and
best practices are still required.


Package Version Architecture Repository
perl-DBIx-OnlineDDL - - -


Name Value
/usr/share/perl5 -
perl(Class/ -
perl(DBI/Const/ -
perl(DBIx/ >= 0.920
perl(Eval/ -
perl(List/ >= 1.440
perl( >= 2.0.002
perl(MooX/ >= 0.008
perl(Sub/ -
perl(Term/ >= 2.140
perl(Types/Common/ -
perl(Types/ >= 1.0
perl(namespace/ -
perl-base >= 1:5.10.0
rpmlib(PayloadIsLzma) -


Name Value
perl(DBIx/ = 0.920
perl(DBIx/OnlineDDL/Helper/ = 0.920
perl(DBIx/OnlineDDL/Helper/ = 0.920
perl(DBIx/OnlineDDL/Helper/ = 0.920
perl-DBIx-OnlineDDL = 0.92-alt1


Type URL
Binary Package perl-DBIx-OnlineDDL-0.92-alt1.noarch.rpm
Source Package perl-DBIx-OnlineDDL-0.92-alt1.src.rpm

Install Howto

  1. Add the following line to /etc/apt/sources.list:
    rpm [Sisyphus] noarch autoimports
    rpm [Sisyphus] noarch autoimports
  2. Update the package index:
    # sudo apt-get update
  3. Install perl-DBIx-OnlineDDL rpm package:
    # sudo apt-get install perl-DBIx-OnlineDDL



See Also

Package Description
perl-DBIx-Oracle-Unwrap-0.06-alt1.noarch.rpm Unwrap code obfuscated with the Oracle wrap command
perl-DBIx-Oracle-Unwrap-scripts-0.06-alt1.noarch.rpm DBIx-Oracle-Unwrap scripts
perl-DBIx-OracleLogin-0.02-alt1.noarch.rpm perl module DBIx-OracleLogin
perl-DBIx-PDlib-1.009-alt1.noarch.rpm DBI SQL abstraction and convenience methods
perl-DBIx-POS-0.03-alt1_34.noarch.rpm Define a dictionary of SQL statements in a POD dialect (POS)
perl-DBIx-POS-Template-0.067-alt1.noarch.rpm is a fork of L<DBIx::POS>. Define a dictionary of SQL statements in a POD dialect (POS) plus expand
perl-DBIx-Pager-0.02-alt1.noarch.rpm perl module DBIx-Pager
perl-DBIx-ParseDSN-0.9.3-alt1.noarch.rpm Parse DSN's, DBI connection strings
perl-DBIx-PasswordIniFile-2.00-alt1.noarch.rpm perl module DBIx-PasswordIniFile
perl-DBIx-PasswordIniFile-scripts-2.00-alt1.noarch.rpm perl-DBIx-PasswordIniFile scripts
perl-DBIx-Patcher-0.04-alt1.noarch.rpm store history of patches applied in database schema
perl-DBIx-Patcher-scripts-0.04-alt1.noarch.rpm DBIx-Patcher scripts
perl-DBIx-Perlish-1.03-alt1.noarch.rpm a perlish interface to SQL databases
perl-DBIx-Perlish-scripts-1.03-alt1.noarch.rpm DBIx-Perlish scripts
perl-DBIx-Pg-CallFunction-0.019-alt1.noarch.rpm Simple interface for calling PostgreSQL functions from Perl