2016-06-21 5 views
1

Ich habe zwei Datenbanken in meinem phpmyadmin test and test1 jetzt habe ich es in andere Datenbank zusammenführen möchten d.h test3Wie wir zwei Datenbank in neue Datenbank fusionieren mit PHP

Datenbank test hat 15 Tabellen. Datenbank test 2 hat 23 Tabellen, so dass Datenbank test 3 enthalten 15 + 23 d.h 38 Tabelle

I Merge two database into a single database und How can we merge two databases with identical schemas? Link auch überprüfen, aber keine Lösung

Wie es gefunden kann mit Hilfe von PHP getan werden ??

+0

sind die ta Blen Namen unterscheiden sich zwischen den beiden bestehenden Datenbanken? –

+0

ja alle sind anders !! Tabellenname mit Präfix –

Antwort

2

PHP-Datei Mit allererst Sie Dump mehrere Datenbank nehmen müssen mit exec() und mysqldump als

exec("mysqldump --user root -p --databases test1 test2 > file.sql"); 

Dadurch werden Ihnen mehrere Datenbank in eine Datei exportiert jetzt kann Datenbank in test3 mit

importieren
+0

DANKE, DASS ES FUNKTIONIERT !! –

1

Da Sie phpmyadmin erwähnt haben, können Sie dies alles in phpmyadmin tun.

Zuerst beide Datenbanken (test1 und test2) als SQL exportieren. Sie können den Anweisungen in diesem post folgen. Dann können Sie beide Datenbanken mit phpmyadmin auch in test3 importieren.

Sie möchten wahrscheinlich sicherstellen, dass es keine Konflikte mit Tabellennamen gibt, um zu vermeiden, dass test1 test2-Tabellen überschreibt (oder umgekehrt). Wenn Sie diese Tabellen getrennt halten möchten, können Sie allen Tabellen ein Präfix hinzufügen, aber es hängt wirklich davon ab, was Sie tun möchten. Da Sie 38 Tabellen erwarten, gehe ich davon aus, dass Sie die Daten nicht mischen wollen.

+0

das ist eine Lösung mit GUI. Ich muss mit PHP-Skript tun !! –

+0

Sie können den Befehl in PHP-Skript mit Exec-Befehl verwenden, und Sie können den folgenden Befehl verwenden, um eine Datenbank in eine andere zu kopieren. mysqldump -u user1 -ppassword1 datenbankname> dump.sql mysql -u benutzer2 -ppassword2 datenbankname

+0

Danke für Ihre Unterstützung –

1

Unter der Annahme, dass alle Tabellennamen unterschiedlich sind und wir nur über Tabellen sprechen (Ich bin unsicher bei Triggern und anderen Operationen) können Sie die Funktion "Copy database to: " in PHPmyAdmin verwenden, um dies zu tun;

  1. die Datenbank test1
  2. Zum Artikel Operationen Navigation Wählen Sie am oberen Rand
  3. Zum Copy database to: Abschnitt und dann test3 wie die Datenbank einzugeben, die Sie migrieren möchten. Copy Database To
  4. Repeat für test2
+0

das ist eine Lösung mit GUI. Ich muss mit PHP-Skript tun !! –

+0

Warum? Es macht keinen Sinn, ein PHP-Skript zu schreiben, wenn so viele Tabellen involviert sind? Wie heißen die Tische? Sind sie 'table1',' table2'? – Dan

+0

Vielen Dank für Ihre Unterstützung –