Skip to content

Instantly share code, notes, and snippets.

@muradddd
Last active June 6, 2022 11:29
Show Gist options
  • Save muradddd/a1fd9a498888fe7c173448e6e307393b to your computer and use it in GitHub Desktop.
Save muradddd/a1fd9a498888fe7c173448e6e307393b to your computer and use it in GitHub Desktop.
Backup / restore SQL DB
docker exec {CONTAINER} /usr/bin/mysqldump -u {USER} --password={PASSWORD} {DATABASE} > {BACKUP_FILE_PATH}
# For ignoring some tables
docker exec {CONTAINER} /usr/bin/mysqldump -u {USER} --password={PASSWORD} --ignore-table={DATABASE}.{TABLE} {DATABASE} > {BACKUP_FILE_PATH}
cat {BACKUP_FILE_PATH} | docker exec -i {CONTAINER} /usr/bin/mysql -u {USER} --password={PASSWORD} {DATABASE}
docker exec -it ${DB_CONTAINER} bash # create a new Bash session in the container
pg_dumpall -c -U ${DB_USER} > ${FILENAME} # dump sql data
docker cp ${DB_CONTAINER}:${FILENAME} ./${DESTIONATION_PATH} # copying dumped data from container to host
docker cp ${DUMPED_FILE_PATH} ${DB_CONTAINER}:. # copying dumped data from host to container
docker exec -it ${DB_CONTAINER} bash # create a new Bash session in the container
psql -U ${DB_USER} ${DB_NAME} < ${FILENAME} # restore sql data
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment