Contributors can benefit from having real data when they are
developing. This script can do a few things (see
Truncate any tables (logs, and other cruft which may have sensitive data)
Nullify fields (emails, passwords, etc)
Fill in random/arbitrary data:
Delete rows based on simple rules: e.g.
DELETE FROM mytable WHERE private = "Yes":
database: tables: mytable: nullify: private: Yes
Apply rules exception in some cases: e.g.
UPDATE mytable SET cellphone=NULL WHERE id NOT IN(556, 889):
database: tables: mytable: exception: - 556 - 889 nullify: - cellphone
Define an other name for primary key of table: e.g.
UPDATE mytable SET `email` = CONCAT(user_id, '@example.com'):
database: tables: primary_key: user_id mytable: random_email: email
pip install https://github.com/riquellopes/mysql-anonymous/tarball/master
anonymize --sample-one anonymize --sample-two anonymize -y database.yml