Mysql
 sql >> Database >  >> RDS >> Mysql

Come copiare una tabella da una tabella su un server remoto a una tabella su un diverso db mysql5.6 remoto con PDO

Puoi aprire due connessioni. Usane uno per leggere dal server di origine, gli altri due si inseriscono nel server di destinazione. Usa il ON DUPLICATE KEY IGNORE opzione per evitare errori quando tenti di sovrascrivere le righe esistenti, quindi inserisce solo le righe mancanti.

$pdo1 = new PDO('mysql:host=server1;dbname=xxx', $username1, $password1);
$pdo2 = new PDO('mysql:host=servrer2; dbname=xxx', $username2, $password2);

$insert_stmt = $pdo2->prepare("INSERT INTO yourTable (col1, col2, col3, ...) VALUES (:col1, :col2, :col3, ...) ON DUPLICATE KEY IGNORE");
$select_results = $pdo1->query("SELECT * FROM yourTable");
while ($row = $select_results->fetch(PDO::FETCH_ASSOC)) {
    $insert_stmt->execute($row);
}