Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menggunakan PHP untuk pemindahan data MySQL?
Panduan Migrasi Data MySQL PHP: Mewujudkan sambungan ke pangkalan data sumber dan sasaran. Ekstrak data daripada pangkalan data sumber. Buat struktur dalam pangkalan data sasaran yang sepadan dengan jadual sumber. Pindahkan data daripada pangkalan data sumber ke pangkalan data sasaran baris demi baris menggunakan sisipan baris demi baris.
Cara menggunakan PHP untuk pemindahan data MySQL
Pengenalan
Penghijrahan data ialah tugas penting untuk memindahkan data dari satu sistem ke sistem yang lain. Apabila membangunkan aplikasi, selalunya perlu untuk memindahkan data daripada persekitaran ujian kepada persekitaran pengeluaran. Artikel ini akan membimbing anda tentang cara menggunakan PHP untuk pemindahan data MySQL. . Dapatkan data yang perlu dipindahkan daripada pangkalan data sumber:
$sourceConn = new mysqli("localhost", "sourceuser", "sourcepass", "sourcedb"); $targetConn = new mysqli("localhost", "targetuser", "targetpass", "targetdb");
3 Sediakan jadual sasaran
Dalam pangkalan data sasaran, buat jadual sasaran dan padankan struktur jadual sumber: $result = $sourceConn->query("SELECT * FROM `source_table`");
.
Gelung Lelaran pada hasil pertanyaan sumber dan masukkan data ke dalam jadual sasaran baris demi baris: $targetConn->query("CREATE TABLE IF NOT EXISTS `target_table` LIKE `source_table`");
mysqli_query()
从源数据库获取需要迁移的数据:
while ($row = $result->fetch_assoc()) { $insertQuery = "INSERT INTO `target_table` SET "; foreach ($row as $field => $value) { $insertQuery .= "`$field` = '$value', "; } $insertQuery = substr($insertQuery, 0, -2); $targetConn->query($insertQuery); }
3. 准备目标表
在目标数据库中,创建目标表并匹配源表的结构:
$sourceConn = new mysqli("localhost", "devuser", "devpass", "development"); $targetConn = new mysqli("localhost", "produser", "prodpass", "production"); $result = $sourceConn->query("SELECT * FROM `users`"); $targetConn->query("CREATE TABLE IF NOT EXISTS `users` LIKE `users`"); while ($row = $result->fetch_assoc()) { $insertQuery = "INSERT INTO `users` SET `id` = '{$row['id']}', `name` = '{$row['name']}', `email` = '{$row['email']}'"; $targetConn->query($insertQuery); }
4. 逐行插入数据
循环遍历源查询结果,并逐行将数据插入到目标表中:
rrreee实战案例
例如,要将 users
表从 development
数据库迁移到 production
development
ke pangkalan data production
, anda boleh menjalankan kod PHP berikut: 🎜rrreeeAtas ialah kandungan terperinci Bagaimana untuk menggunakan PHP untuk pemindahan data MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!