我有2個不同的服務器上的數據庫。源數據庫是一個龐大的房地產數據庫,第二個是一個WordPress數據庫。我必須將來源的數據導入到Wordpress數據庫的posts和postmeta表中。巨大的數據導入,Wordpress的PHP和MySQL
目前,我將所有東西都從源數據庫中取出,然後遍歷這些結果,將它們插入到帖子表中,使用另一個嵌套查詢將每個字段作爲使用插入後插入標識的元值插入。換句話說,這是一個記憶豬。
我的問題是,下面的循環可以改進,以便沒有這麼多的單獨插入行嗎?或者有沒有人有任何建議讓這個更快/而不是馬虎?
// SOURCE DB
$query = "select $fields from listings where data_id = 'B'";
$result = mysql_query($query);
// WORDPRESS DB
while ($row = mysql_fetch_assoc($result)) {
$query2 = "insert into wp_posts (post_author, post_content, post_title, post_status, comment_status, ping_status, post_name, post_type) values";
$query2 .= " ('1', '" . mysql_real_escape_string($row['remarks']) . "', '{$row['mls_acct']}', 'publish', 'closed', 'closed', '{$row['mls_acct']}', 'properties')";
$result2 = mysql_query($query2);
$id = mysql_insert_id();
foreach ($row as $key => $val)
{
$query3 = "insert into wp_postmeta (post_id, meta_key, meta_value) values ";
$query3 .= "('$id', '$key', 'mysql_real_escape_string($val)')";
$result3 = mysql_query($query3);
}
}
將一個命令行mysqldump(+如果需要搜索和替換表名稱)並重新導入到wordpress數據庫不是訣竅? – wkoot
如果您有PHPMyAdmin,您還可以導出所有表並將其導回到您需要的任何數據庫。 – maiorano84