Mysqlknife
MySQL Knife is a Ruby Gem and command line tools, written for UNIX-like operating systems. That allows many tasks in MySQL Administration is easily for normal installation or in Amazon RDS. You can:
- Checksum tables.
- Skip error is slave.
- Swap Databases
- Kill process for RDS or MySQL.
Installation
Install this tool executing the following command:
$ gem install mysqlknife
Usage
Checksum table
Compare two tables with checksum:
$ mysqlknife checksum --from h=127.0.0.1,P=3306,u=root,p=admin,d=demo_from \
--to h=127.0.0.1,P=3306,u=root,p=admin,d=demo_to \
--table foo
Skip error in slave.
$ mysqlknife skip --host 127.0.0.1 \
--user root \
--password admin \
--behind -120
Swap Databases
Swap tables and views between two databases.
You need to rename two databases, for example, foo and bar. You only need to run the following command and save the STDOUT output to a file and then execute DML statements.
$ mysqlknife swap --host 127.0.0.1 \
--user root \
--password admin \
--databases from,to > swap.sql
$ mysql -h 127.0.0.1 -u root -padmin < swap.sql
Kill process
This action permit kill MySQL process in Amazon RDS or normal service, and log output who kill.
Please, follow next instructions to kill process:
$ mysqlknife kill --host 127.0.0.1 \
--user root \
--pass admin \
--where "time >= 200"
And kill the listed process:
$ mysqlknife kill --host 127.0.0.1 \
--user root \
--pass admin \
--where "time >= 200" \
--kill
Warning
- Do not use this tool in production before testing it.
- Please, use when do you need.
- The author is NOT responsible for misuse use of this tool.
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request