mysqldump mit mehreren Tabellen mit oder ohne where-Klausel

Ich habe eine Reihe von Tabellen in meiner Datenbank, für die ich einen Speicherauszug (: D) erstellen muss. Mein Problem ist, dass ich einige Daten aus einigen Tabellen übernehmen möchte, die nur bestimmte Tage zurückliegen, und die übrigen Tabellen in Ordnung halten möchte.

Die Abfrage, die ich mir ausgedacht habe, war etwa:

mysqldump -h<hostname> -u<username> -p <databasename> 
<table1> <table2> <table3> 
<table4> --where 'created > DATE_SUB(now(), INTERVAL 7 DAY)',
<table5> --where 'created > DATE_SUB(now(), INTERVAL 7 DAY)
--single-transaction --no-create-info | gzip
> $(date +%Y-%m-%d-%H)-dump.sql.gz

Das Problem mit dem obigen Code ist, dass table1, table2 und table3 versuchen, die where-Klausel von table4 zu übernehmen. Ich möchte nicht, dass diese Ursache einen Fehler auslöst, dass das erstellte Feld in diesen Tabellen nicht vorhanden ist.

Ich habe versucht, nach Tabellennamen ein Komma (,) zu setzen, wie ich es nach der where-Klausel getan habe, aber es funktioniert nicht.

An diesem Punkt stecke ich ziemlich fest und habe keine Alternative mehr zu erwarten, zwei verschiedene SQL-Dump-Dateien zu erstellen, was ich nicht tun möchte.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage