Skip to content

Instantly share code, notes, and snippets.

@mucaho
Created July 11, 2025 08:27
Show Gist options
  • Save mucaho/e21f3f0d11230a282aa2d19a058b5c0b to your computer and use it in GitHub Desktop.
Save mucaho/e21f3f0d11230a282aa2d19a058b5c0b to your computer and use it in GitHub Desktop.
MySQL dump diff (Darwin)
# Instructions for darwin coreutils
# credits: https://stackoverflow.com/questions/3840908/how-do-i-see-the-differences-between-2-mysql-dumps
cd /to/appropriate/working/dir
docker exec -ti mysql5.7 /bin/bash
> mysqldump --skip-opt DB_NAME > prior.sql
> exit
docker cp mysql5.7:/prior.sql prior.sql
sed -i='' -e "s/[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9]/0000-00-00 00:00:00/g" prior.sql
# DO THE NECESSARY CHANGES IN YOUR DB
docker exec -ti mysql5.7 /bin/bash
> mysqldump --skip-opt DB_NAME > post.sql
docker cp mysql5.7:/post.sql post.sql
sed -i='' -e "s/[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9]/0000-00-00 00:00:00/g" post.sql
diff --normal --suppress-common-lines prior.sql post.sql > dump.sql.diff
sed -i='' -e "s/^[0-9].*$//g" dump.sql.diff
sed -i='' -e "s/> INSERT INTO/INSERT INTO/" dump.sql.diff
mv dump.sql.diff dump.sql
# Open dump.sql in your favorite editor, e.g. VS Code
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment