EVERYTHING XIAOMI
Get listed

pt-online-schema-change

pt-online-schema-change is a free command-line tool in Percona Toolkit for altering MySQL table structures while keeping reads and writes available.

Place
#22 of 32
Score
5.8
pt-online-schema-change's website

What pt-online-schema-change is

pt-online-schema-change is a free command-line tool in Percona Toolkit for altering MySQL table structures while keeping reads and writes available. It creates and populates a copy of a table, then replaces the original. Rows move in small chunks, and triggers carry changes made to the original across during copying. The tool can pause or abort if server load is too high, and pause copying when it detects delayed replicas.

It only modifies a table when run with `--execute`; `--dry-run` and `--execute` cannot be used together. Most tables need a PRIMARY KEY or UNIQUE INDEX. Tables that already have triggers are not supported, and referencing foreign keys require a specified handling method that adds risk. It runs on Linux and can be self-hosted. Requirements include Perl, DBI, DBD::mysql, MySQL 5.0.2 or newer, and specified privileges. Percona documents package-manager installation for Debian or Ubuntu and RHEL or CentOS, along with package downloads and a tar.gz release. The toolkit is free under GPL version 2 or the Perl Artistic License.

Good

  • Copies rows in small chunks.
  • Can pause when replicas are delayed.
  • Does not modify tables without `--execute`.
  • Free and available for self-hosting on Linux.

Watch out

  • Most tables need a PRIMARY KEY or UNIQUE INDEX.
  • Cannot operate on tables with existing triggers.
  • Foreign-key handling introduces additional risk.
  • Requires Perl, DBI, DBD::mysql, and MySQL 5.0.2 or newer.

Who it suits

This tool suits database administrators and database operations teams changing MySQL tables who need reads and writes to continue during the process. It is aimed at users comfortable with command-line tools and its database requirements.

Verdict

pt-online-schema-change provides a chunked approach to changing MySQL tables while allowing reads and writes. Check for existing triggers, keys, and foreign-key relationships before using it.

Plans and prices

From pt-online-schema-change's own pricing page, checked 8 Oct 2026.

All about pricing
PlanPriceWhat it gives you
Percona Toolkit (includes pt-online-schema-change)FreeFree, open-source command-line toolkit · GPL v2 or Perl Artistic License

The facts

Each one read from pt-online-schema-change's own pages, with the date it was checked.

What it does

Chunked copying
It copies rows in small chunks and uses triggers to apply changes made to the original table during the copy.checked 8 Oct 2026
Cluster support
For Percona XtraDB Cluster 5.5.28-23.7 and newer, only InnoDB tables can be altered and wsrep_OSU_method must be TOI.checked 8 Oct 2026
Execution safety
The tool does not modify a table unless the --execute option is specified; --dry-run and --execute are mutually exclusive.checked 8 Oct 2026
Foreign-key handling
Foreign keys that reference the table require a specified foreign-key method, and their handling introduces additional risk.checked 8 Oct 2026
Installation telemetry
The installer stores an instance UUID for toolkit usage statistics and states that no other information is gathered for that purpose.checked 8 Oct 2026
Intended users
Percona describes the Toolkit as advanced open-source command-line tools for DBAs and database operations.checked 8 Oct 2026
Key requirement
In most cases, the table needs a PRIMARY KEY or UNIQUE INDEX for the tool to operate.checked 8 Oct 2026
License
The program is free software under either the GNU General Public License version 2 or the Perl Artistic License.checked 8 Oct 2026
Load and replication checks
It can pause or abort when server load is too high and pause copying when it detects delayed replicas.checked 8 Oct 2026
Purpose
pt-online-schema-change alters MySQL table structures without blocking reads or writes by building and populating a copy of the table, then replacing the original.checked 8 Oct 2026
Requirements
The tool requires Perl, DBI, DBD::mysql, and MySQL 5.0.2 or newer, along with specified MySQL privileges.checked 8 Oct 2026
Support
Percona says its Community Forum service is free and response times vary with the complexity of the question.checked 8 Oct 2026
Trigger limitation
The tool will not work on a table that already has triggers defined because it uses triggers to keep the replacement table updated.checked 8 Oct 2026

The company

Founded
2006checked 28 Sep 2026

Where it runs

Install platforms
Percona documents package-manager installation for Debian or Ubuntu and RHEL or CentOS, plus package downloads and a tar.gz release.checked 8 Oct 2026

Alternatives to pt-online-schema-change

All alternatives
  1. 1Atlas logo

    Atlas

    Free planOpen sourceWebAPILinuxmacOS
    8.3From $39 a month
  2. 2

    DeepFilterNet

    Free planOpen sourceAPILinuxmacOSSelf-hosted
    7.6Free plan
  3. 3

    pgroll

    Free planOpen sourceLinuxmacOSSelf-hostedWindows
    7.3Free plan
  4. 4Skeema logo

    Skeema

    Free planLinuxmacOSWindows
    6.9From $649 a year
  5. 5Bytebase Enterprise logo

    Bytebase Enterprise

    Free planWebAPISelf-hosted
    6.8From $20 a month
  6. 6

    Sqitch

    Free planLinuxmacOSSelf-hostedWindows
    6.7Free plan