• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Algemeen
  4. ICT Nieuws

Forum

  • Ictscripters Chat

    Frenzo.Brouwer 9 maart 2026 om 21:31
  • Help testers nodig voor android app Urgent

    Servertjee 20 februari 2026 om 12:07
  • Partner Gezocht om meerdere NFT Collecties op Open Sea te Plaatsen

    Servertjee 20 februari 2026 om 12:06
  • Afspraken systeem met planbeperking

    Jeffrey.Hoekman 20 februari 2026 om 11:52
  • Developer Gezocht

    Servertjee 19 februari 2026 om 17:31
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Servertjee 18 februari 2026 om 16:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09

Marktplaats

  • Heel wat sterke domeinen > 2 letters, 3 letters, premiums

    Michael DW 11 maart 2026 om 12:12
  • 367 Nieuwe Domeinnamen Februari 2026

    shiga 1 maart 2026 om 14:50
  • Meerdere mafia game template te koop

    Syntax 16 februari 2026 om 13:34

Mysqldump per database shell

  • Laura
  • 20 juni 2016 om 09:58
  • Laura
    Lady
    Ontvangen Reacties
    13
    Berichten
    108
    • 20 juni 2016 om 09:58
    • #1

    Sommigen onder ons gebruiken wel eens mysqldump om hun databases te backuppen.
    Maar als jullie net als mij zijn, haten jullie het dat dit allemaal in 1 groot bestand wordt gedumpt.
    Je dient dus of een apart commando te draaien per database, of je dient dit super bestand nadien te splitsen (onbegonnen werk).


    Echter kan dit veel eenvoudiger: er is een commando om elke database naar een apart bestand te backuppen.
    Ideaal dus als je backups wil maken van je websites en toch ze eenvoudig kunnen herstellen.
    Bovendien stelt dit je in staat om slechts 1 database te herstellen ipv ze allemaal.

    Bash
    mysql -N -e 'show databases' | while read dbname; do mysqldump --complete-insert --routines --triggers --single-transaction "$dbname" > "$dbname".sql; done


    Als output krijg je netjes een bestand per database:

    Code
    ls -alh *.sql
    
    
    -rw-r--r-- 1 root root  44M Aug 24 22:39 db1.sql
    -rw-r--r-- 1 root root  44M Aug 24 22:39 db2.sql


    Je kan natuurlijk ook eenvoudig bepalen in welke map deze database backups (dumps) moeten worden geplaatst:

    Bash
    mysql -N -e 'show databases' | while read dbname; do mysqldump --complete-insert --routines --triggers --single-transaction "$dbname" > /home/dump/databases/"$dbname".sql; done

    Hiermee plaats je ze bv in de map /home/dump/databases.

    Natuurlijk gebruik je hiermee heel wat ruimte.
    Daarom pak ik ze persoonlijk graag terug in via gzip:

    Code
    mysql -N -e 'show databases' | while read dbname; do mysqldump --complete-insert --routines --triggers --single-transaction "$dbname" > "$dbname".sql; [[ $? -eq 0 ]] && gzip "$dbname".sql; done


    Herstellen van je databanken
    Niet onbelangrijk, maar soms wil je deze databanken terug gaan herstellen.
    Bv: als je verhuist naar een andere server.

    Bash
    $ for sql in *.sql; do dbname=${sql/\.sql/}; echo -n "Now importing $dbname ... "; mysql $dbname < $sql; echo " done."; done 
    
    
    De output komt dan per database tabel er netjes onder:
    Now importing db1 ...  done.
    Now importing db2 ...  done.

    Noot: soms dien je wel not te authenticeren (in te loggen) voordat de database backup begint.


    Korte lijntjes shell code dus om je leven veel eenvoudiger te maken.

    Groetjes,
    Laura
    xxx

  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 20 juni 2016 om 18:19
    • #2

    Enkele kanttekeningen:
    --single-transaction werkt alleen voor databases met (enkel) tabellen met de InnoDB engine. Gebruik voor MyISAM-gebaseerde databases --lock-tables


    Daarnaast wil je er waarschijnlijk ook voor zorgen dat er geen actieve gebruikers in het systeem/de systemen bezig zijn op het moment van het maken van de backup(s). Bijvoorbeeld door downtime aan te kondigen en te zorgen dat deze systemen op die tijdstippen ook niet toegankelijk zijn.

    Het gebruik van > backup.sql (dus het gebruik van het groter-dan-teken) kan op sommige systemen voor problemen zorgen. Beter is wellicht het gebruiken van -r <file> of --result-file=<file>.

    Citaat van Laura

    Noot: soms dien je wel not te authenticeren (in te loggen) voordat de database backup begint.

    Dit kun je ondervangen door het uitlezen van een .cnf bestand middels --defaults-file=/path/to/db.cnf

    Hiermee voorkom je ook dat wachtwoorden gelogd worden (als je van plan was om gemakshalve deze credentials op te nemen in je shellscript wat misschien een minder goed idee is).

  • Laura
    Lady
    Ontvangen Reacties
    13
    Berichten
    108
    • 21 juni 2016 om 17:20
    • #3

    Super goede aanvullingen!

    Groetjes,
    Laura
    xxx

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Samsung zal miljoenen verdienen aan Apple iPhone Fold dankzij zijn 12GB RAM

    ICTscripters 11 maart 2026 om 22:42
  • Apple heeft zojuist iOS 26.4 Beta 4 vrijgegeven: hier is de verwachte lanceerdatum.

    ICTscripters 11 maart 2026 om 12:01
  • Kritieke kwetsbaarheid in Nginx UI bedreigt gevoelige data

    ICTscripters 10 maart 2026 om 18:29

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37

Gebruikers die dit topic bekijken

  • 3 Gasten
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design