GNU/Linux >> Belajar Linux >  >> Linux

Cara menyalin tabel dari satu database mysql ke database mysql lainnya

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

Semuanya dapat dilakukan dalam satu perintah.


$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 merujuk ke tabel awaluser2, pass2, database2, table2 merujuk ke tabel yang disalin$keyfield adalah kunci utama tabel


Saya akan membuangnya. Jauh lebih mudah daripada apa pun yang berbasis PHP.

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

Referensi MySQL:4.5.4. mysqldump — Program Pencadangan Basis Data


Jika Anda perlu menyalin tabel di server yang sama, Anda dapat menggunakan kode ini:

USE db2;

CREATE TABLE table2 LIKE db1.table1;

INSERT INTO table2  
    SELECT * FROM db1.table1;

Ini disalin+tempel dari sini:codingforums.com

Ini bukan solusi saya, tapi menurut saya ini berguna.


Linux
  1. Cara menyalin database MySQL

  2. Cara menyalin atau mengkloning izin dari satu file ke file lain di Linux

  3. Cara Memperbaiki Tabel Database Mysql yang Rusak

  1. Cara menggunakan phpMyAdmin untuk menyalin database MySQL

  2. Cara menyalin tabel MySQL antar database

  3. Cara Menemukan dan Menyalin Jenis File Tertentu Dari Satu Direktori Ke Direktori Lain Di Linux

  1. Bagaimana Cara Menyalin Pengaturan Dari Satu Mesin Ke Mesin Lainnya?

  2. Salin N-baris Terakhir Dari Satu File Ke File Lain?

  3. Cara menyalin tabel database dengan phpMyAdmin