| SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden. |
 |

10-10-2009, 14:30
|
|
dwollen
Registrierter Benutzer
|
|
Registriert seit: Oct 2009
Beiträge: 4
|
|
[gelöst] 2 Datenexporte der gleichen Datenbank mergen?
Hallo Forum ...
Ich hoffe, dass ich hier nicht die gleiche Frage zum xten mal stelle. Meine Suche zum Thema war bisher aber leider wenig erfolgreich.
Mein Problem ist folgendes:
Gestern habe ich die komplette SQL-Datenbank eines Shop-Systems gesichert. An dieser Datenbank mussten ein paar Dinge korrigiert werden (nur Daten, nicht die Struktur). In der Zwischenzeit lief der Shop natürlich weiter und hat neue Bestellungen erhalten.
Nun möchte ich meine korrigierte Datenbank wieder in das Live-System einspielen, ohne dass Daten verloren gehen. - Klar.
Hat jemand von Euch einen Tipp für mich, wie ich das am besten und natürlich ultra-sicher anfangen kann?
Vielen Dank im Voraus für Eure Hilfe.
Beste Grüße, Denis
--------------------
http://w-sys.info
|

10-10-2009, 15:29
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Hallo Denis,
Zitat:
Zitat von dwollen
Hat jemand von Euch einen Tipp für mich, wie ich das am besten und natürlich ultra-sicher anfangen kann?
|
Wenn du nur geändert hast (UPDATE) und nichts eingefügt (INSERT, REPLACE) oder gelöscht (DELETE, TRUNCATE), spricht nichts dagegen, die gesicherte DB mit REPLACE INTO in die Live-Version zurückzuspielen.
Gruß,
Amica
|

10-10-2009, 15:44
|
|
dwollen
Registrierter Benutzer
|
|
Registriert seit: Oct 2009
Beiträge: 4
|
|
Zitat:
|
... spricht nichts dagegen, die gesicherte DB mit REPLACE INTO in die Live-Version zurückzuspielen.
|
Hallo AmicaNoctis
Lieben Dank für die schnelle Antwort und den Tipp. Für eine einzelne Tabelle wäre das wohl ein praktikabler Weg. Aber funktioniert das auch für eine komplette Datenbank mit 60 Tabellen?
Wenn ja. Brauch ich einen kleinen Schubs in die richtige Richtung...
Grüße,
Denis
|

10-10-2009, 15:50
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Unter der genannten Bedingung(!) funktioniert das auch für eine große DB. Warum auch nicht? Du musst halt 60 Replace-Statements schreiben oder du nutzt PHP in Verbindung mit SHOW um die Struktur der DB zu analysieren und daraus die Statements zu generieren.
|

10-10-2009, 16:02
|
|
dwollen
Registrierter Benutzer
|
|
Registriert seit: Oct 2009
Beiträge: 4
|
|
Zitat:
|
Unter der genannten Bedingung(!)
|
Ja. Ich glaube, die Bedingung ist erfüllt:
Ich habe bei einigen Tabellen nichts anderes gemacht, als per UPDATE bisher leere Felder mit Daten aus einer anderen Tabelle zu füllen. Das wollte ich natürlich nicht im Live-System probieren.
Zitat:
|
...Du musst halt 60 Replace-Statements schreiben
|
Wenn ich im SQL-Dump jetzt einfach jedes INSERT INTO (für jede Tabelle) in ein REPLACE INTO ändere, komme ich dann zum Ziel? Klingt fast wie eine dumme Frage, aber ich brauche hier mal die 'Absolution des erfahreneren Benutzers'
LG,
Denis
|

10-10-2009, 16:06
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Zitat:
Zitat von dwollen
Wenn ich im SQL-Dump jetzt einfach jedes INSERT INTO (für jede Tabelle) in ein REPLACE INTO ändere, komme ich dann zum Ziel? Klingt fast wie eine dumme Frage, aber ich brauche hier mal die 'Absolution des erfahreneren Benutzers' 
|
Ok, das würde auch gehen, aber ich dachte da eher an
Code:
replace into live_db.table_name
select * from backup_db.table_name
|

10-10-2009, 16:12
|
|
dwollen
Registrierter Benutzer
|
|
Registriert seit: Oct 2009
Beiträge: 4
|
|
Ja, deine Variante sieht in der Tat eleganter aus. Ich bringe den Holzhammer also mal eben wieder in den Keller und probiere es so, wie Du vorschlägst.
Unabhängig vom Erfolg: Du hast mir schon jetzt sehr geholfen, denn meine kleine Panikattacke ist erst mal gelindert
Also ...  und ich meld mich mit dem Resultat.
LG,
Denis
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|