GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So kopieren Sie eine Tabelle von einer MySQL-Datenbank in eine andere MySQL-Datenbank

mysqldump -u user1 -ppassword1 databasename TblName | mysql -u user2 -ppassword2 anotherDatabase

Das alles kann mit einem einzigen Befehl erledigt werden.


$L1 = mysql_connect('localhost', 'user1', 'pass1');
$DB1 = mysql_select_db('database1', $L1);   

$L2 = mysql_connect('localhost', 'user2', 'pass2');
$DB2 = mysql_select_db('database2', $L2);   

$re=mysql_query("SELECT * FROM table1",$L1);
while($i=mysql_fetch_assoc($re))
{
    $u=array();
    foreach($i as $k=>$v) if($k!=$keyfield) $u[]="$k='$v'";
    mysql_query("INSERT INTO table2 (".implode(',',array_keys($i)).") VALUES ('".implode("','",$i)."') ON DUPLICATE KEY UPDATE ".implode(',',$u),$L2) or die(mysql_error());
}

user1, pass1, database1, table1 bezieht sich auf die ursprüngliche Tabelleuser2, pass2, database2, table2 bezieht sich auf die kopierte Tabelle$keyfield ist der Primärschlüssel der Tabelle


Ich würde es wegwerfen. Viel weniger kompliziert als alles, was auf PHP basiert.

mysqldump -u user1 -ppassword1 databasename > dump.sql
mysql -u user2 -ppassword2 databasename < dump.sql

MySQL-Referenz:4.5.4. mysqldump – Ein Datenbanksicherungsprogramm


Wenn Sie die Tabelle auf denselben Server kopieren müssen, können Sie diesen Code verwenden:

USE db2;

CREATE TABLE table2 LIKE db1.table1;

INSERT INTO table2  
    SELECT * FROM db1.table1;

Es wird von hier kopiert und eingefügt:codingforums.com

Es ist nicht meine Lösung, aber ich finde sie nützlich.


Linux
  1. So kopieren Sie eine MySQL-Datenbank

  2. So finden und kopieren Sie bestimmte Dateitypen von einem Verzeichnis in ein anderes unter Linux

  3. So kopieren oder klonen Sie Berechtigungen von einer Datei in eine andere unter Linux

  4. Kopieren Sie die letzten N-Zeilen von einer Datei in eine andere?

  5. So kopieren Sie eine Datenbanktabelle mit phpMyAdmin

So exportieren Sie eine Tabelle von MySQL nach CSV

So kopieren Sie Elemente von einer DynamoDB-Tabelle in eine andere DynamoDB-Tabelle mit Python auf AWS

So sichern Sie eine einzelne MySQL-Datenbank über die Befehlszeile

Wie kopiert man eine Datei aus einem anderen Verzeichnis in das aktuelle?

Wie stellt man die MySQL-Datenbank von phpMyAdmin wieder her?

So kopieren Sie in Plesk Daten von einer WordPress-Website auf eine andere