export DB="holodoc" # -- master-data=2 nur falls binlog aktiviert time mysqldump -u ???? -p -h localhost \ --master-data=2 \ --quick \ --single-transaction \ --events \ --flush-logs \ --lock-tables \ --quote-names \ --set-charset \ --create-options \ --extended-insert \ --add-locks \ --disable-keys \ --skip-add-drop-table \ --no-create-db \ --ignore-table=mysql.event \ --databases ${DB} | gzip > $HOSTNAME.${DB}.master.dump.$(date +%Y%m%d_%H%M%S).sql.gz
Ergibt dann:
-- CHANGE MASTER TO MASTER_LOG_FILE='....-mysql-bin.00nnnn', MASTER_LOG_POS=nnn;
USE `....`;
CREATE TABLE `....` (
`ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
DROP TABLE
…Nur Struktur:
export DB=holodoc time mysqldump -u ???? -p --no-data --create-options --databases $DB | gzip > $HOSTNAME.$DB.no-data.dump.$(date +%Y%m%d_%H%M%S).sql.gz
--
SHOW DATABASES;
USE db_name;
-- hier nun 100% sicherstellen, dass das die DB ist, die überschieben werden soll
-- und nochmal: gaaaanz sicher gehen!
-- erst dann:
DROP DATABASE db_name;
-- nun sind keine Tabellen mehr vorhanden
-- die werden gleich via Restore wieder erstellt und befüllt
-- nun wir noch die DB leer angelegt
CREATE DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
exit
time zcat voyager.holodoc.master.dump.20141125_212531.sql.gz | mysql -u ???? -p -d db_name -h localhost