{"id":1122,"date":"2021-10-29T11:03:18","date_gmt":"2021-10-29T09:03:18","guid":{"rendered":"https:\/\/torstenzimmermann.de\/wordpress\/?p=1122"},"modified":"2022-02-10T13:44:23","modified_gmt":"2022-02-10T12:44:23","slug":"sql-datenbanken-sichern","status":"publish","type":"post","link":"https:\/\/torstenzimmermann.de\/wordpress\/sql-datenbanken-sichern\/","title":{"rendered":"SQL Datenbank(en) sichern"},"content":{"rendered":"\n<p>Hier ein kleines Script das ich gefunden habe um eure SQL Datenbank zu sichern.<\/p>\n\n\n\n<p>Der Vorteil von dem Script ist das es f\u00fcr jede Datenbank eine einzelne Sicherung anlegt. <\/p>\n\n\n\n<p>So kann man gezielt einzelne Datenbank(en) wiederherstellen.<br><\/p>\n\n\n\n<p><br>Quelle:<\/p>\n\n\n\n<p><a href=\"https:\/\/marketmix.com\/de\/mysql-datenbanken-komplett-sichern\/\">https:\/\/marketmix.com\/de\/mysql-datenbanken-komplett-sichern\/<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">#!\/bin\/bash\n#\n# backup-mysql.sh 1.0.5\n#\n# Dumps all databases to seperate files.\n# All files are created in a folder named by the current date.\n# Folders exceeding the defined hold time are purged automatically.\n# \n# (c)2015-2019 Harald Schneider\n#\n\n# Setup.start\n#\n\nHOLD_DAYS=7 \nTIMESTAMP=$(date +\"%F\")\nBACKUP_DIR=\"\/Users\/hschneider\/Work\/_BACKUP\/MySQL\"\n\nMYSQL_USR=\"root\"\nMYSQL_PWD=\"XXXXXXXXXXX\"\n\n# Use this on Linux\n#\n#MYSQL_CMD=\/usr\/bin\/mysql  \n#MYSQL_DMP=\/usr\/bin\/mysqldump  \n#MYSQL_CHECK=\/usr\/bin\/mysqlcheck\n\n# Use this for MAMP on macOS:\n#\n#MYSQL_CMD=\/Applications\/MAMP\/Library\/bin\/mysql\n#MYSQL_DMP=\/Applications\/MAMP\/Library\/bin\/mysqldump\n#MYSQL_CHECK=\/Applications\/MAMP\/Library\/bin\/mysqlcheck\n\n# Use this for AMPPS on macOS:\n#\nMYSQL_CMD=\/Applications\/AMPPS\/mysql\/bin\/mysql\nMYSQL_DMP=\/Applications\/AMPPS\/mysql\/bin\/mysqldump\nMYSQL_CHECK=\/Applications\/AMPPS\/mysql\/bin\/mysqlcheck\n\n#\n# Setup.end\n\n\n# Check and auto-repair all databases first\n#\necho\necho \"Checking all databases - this can take a while ...\"\n$MYSQL_CHECK -u $MYSQL_USR --password=$MYSQL_PWD --auto-repair --all-databases\n\n# Backup\n#\necho\necho \"Starting backup ...\"\nmkdir -p \"$BACKUP_DIR\/$TIMESTAMP\"\ndatabases=`$MYSQL_CMD --user=$MYSQL_USR -p$MYSQL_PWD -e \"SHOW DATABASES;\" | grep -Ev \"(Database|information_schema|performance_schema)\"`\n \nfor db in $databases; do\n  echo \"Dumping $db ...\"\n  $MYSQL_DMP --force --opt --user=$MYSQL_USR -p$MYSQL_PWD --databases \"$db\" | gzip &gt; \"$BACKUP_DIR\/$TIMESTAMP\/$db.gz\"\ndone\n\necho\necho \"Cleaning up ...\"\nfind $BACKUP_DIR -type d -mtime +$HOLD_DAYS -maxdepth 1 -mindepth 1 -exec rm -rf {} \\;\necho \"-- DONE!\"<\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Um die einzelne SQL datei dann zu imporierten gibt man:<\/p>\n\n\n\n<p>~$ mysql -u root -p &#8222;HierDieSicherungsDateiAngeben&#8220;<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Man kann auch die ganze SQL Datenbank in eine Backupdatei dumpen, aus Erfahrung kann ich davon allerdings nur abraten: Bei meinem Systemumzug viel mir das nur auf die F\u00fc\u00dfe, irgend eine Zeile konnte SQL damals nicht verstehen und brach alles andere dadurch ab. Eine mehrere hundert MB Text Datei nach Fehlern durchsuchen ist unlustig. So k\u00f6nnte man IMHO recht einfach die anderen Datenbanken wenigstens schonmal sicher importieren und wei\u00df im Fehlerfall welche DB \u00c4rger macht und kann dann leichter auf Fehlersuche gehen.<\/p>\n\n\n\n<p><\/p>\n<div class=\"thanks_button_div\" \n                  style=\"float: left; margin-right: 10px;\"><div id=\"thanksButtonDiv_1122_1\" style=\"background-image:url(https:\/\/torstenzimmermann.de\/wordpress\/wp-content\/plugins\/thanks-you-counter-button\/images\/thanks_large_blue.png); background-repeat:no-repeat; float: left; display: inline;\"\n                onmouseover=\"javascript:thankYouChangeButtonImage('thanksButtonDiv_1122_1', true);\" \n                onmouseout=\"javascript:thankYouChangeButtonImage('thanksButtonDiv_1122_1', false);\"\n                onclick=\"javascript:thankYouChangeButtonImage('thanksButtonDiv_1122_1', false);\" >\n                <input type=\"button\" onclick=\"thankYouButtonClick(1122, 'You left &ldquo;Thanks&rdquo; already for this post')\" value=\"Thank You 5\"\n                  class=\"thanks_button thanks_large thanks_blue\"\n                  style=\"  font-family: Verdana, Arial, Sans-Serif; font-size: 14px; font-weight: normal;; color:#ffffff;\"\n                  id=\"thanksButton_1122_1\" title=\"Click to leave &ldquo;Thanks&rdquo; for this post\"\/>\n             <\/div><div id=\"ajax_loader_1122_1\" style=\"display:inline;visibility: hidden;\"><img decoding=\"async\" alt=\"ajax loader\" src=\"https:\/\/torstenzimmermann.de\/wordpress\/wp-content\/plugins\/thanks-you-counter-button\/images\/ajax-loader.gif\" \/><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Hier ein kleines Script das ich gefunden habe um eure SQL Datenbank zu sichern. Der Vorteil von dem Script ist das es f\u00fcr jede Datenbank eine einzelne Sicherung anlegt. So kann man gezielt einzelne Datenbank(en) wiederherstellen. Quelle: https:\/\/marketmix.com\/de\/mysql-datenbanken-komplett-sichern\/ #!\/bin\/bash # # backup-mysql.sh 1.0.5 # # Dumps all databases to seperate files. # All files are [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,6],"tags":[15,49],"class_list":["post-1122","post","type-post","status-publish","format-standard","hentry","category-linux","category-linux-allgemein","tag-backup","tag-sql"],"_links":{"self":[{"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/posts\/1122","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/comments?post=1122"}],"version-history":[{"count":1,"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/posts\/1122\/revisions"}],"predecessor-version":[{"id":1123,"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/posts\/1122\/revisions\/1123"}],"wp:attachment":[{"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/media?parent=1122"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/categories?post=1122"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/torstenzimmermann.de\/wordpress\/wp-json\/wp\/v2\/tags?post=1122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}