Chuyển đến nội dung chính
Quay lại danh sách bài viết

คัดลอกฐานข้อมูลใน Plesk ไปเว็บทดสอบโดยไม่ทับข้อมูลจริง

เลือกปลายทาง สำรองก่อน copy และตรวจว่า staging ใช้ฐานใหม่จริง

คัดลอกฐานข้อมูลใน Plesk ไปเว็บทดสอบโดยไม่ทับข้อมูลจริง

การคัดลอกฐานข้อมูลใน Plesk เหมาะกับการเตรียมข้อมูลสำหรับเว็บทดสอบหรือย้ายไปเซิร์ฟเวอร์ฐานข้อมูลอีกตัว แต่คำว่า “Copy” ไม่ได้หมายถึงการเปลี่ยนปลายทางของเว็บไซต์ให้อัตโนมัติ และหากเลือกฐานปลายทางที่มีอยู่ ตารางชื่อเดียวกับต้นทางอาจถูกแทนที่ คู่มือนี้จึงเริ่มจากการวางแผนปลายทางและการตรวจผลหลังคัดลอก

เลือกสถานการณ์ให้ถูก

ถ้าต้องการทดลองอัปเดตแอป ให้คัดลอกไปฐานใหม่ที่แยกจาก production แล้วให้เว็บทดสอบใช้ฐานนั้น ไม่ควรชี้ staging เข้าฐานจริงเพียงเพราะสะดวก หากต้องการเปลี่ยนโฮสต์ฐานข้อมูล ให้ตรวจว่าเซิร์ฟเวอร์ต้นทางและปลายทางเป็นชนิดเดียวกัน เช่น MySQL/MariaDB กับ MySQL/MariaDB เพราะ Plesk ไม่ได้ใช้ปุ่มนี้แปลงฐานต่างชนิดให้กัน

ก่อนเริ่ม บันทึกชื่อฐานต้นทาง ปลายทาง และเว็บไซต์ที่เกี่ยวข้อง ตรวจพื้นที่ว่างกับขนาดฐาน และสร้าง backup ของฐานต้นทางรวมถึงปลายทางเดิมเมื่อมีข้อมูลอยู่ การคัดลอกไปฐานที่มีอยู่เสี่ยงเขียนทับตารางชื่อซ้ำตามคำเตือนในเอกสาร Plesk จึงควรเลือกชื่อใหม่สำหรับงานทดสอบเมื่อทำได้

ขั้นตอนการคัดลอก

เข้า Websites & Domains > Databases เลือกฐานต้นทางแล้วกด Copy ระบุ destination server, subscription และชื่อฐานปลายทางตามที่หน้า Plesk ขอ หากต้องการปลายทางเป็นเซิร์ฟเวอร์ภายนอก ตัวเลือก Other อาจต้องใช้ host กับข้อมูลผู้ดูแลฐานข้อมูลปลายทาง ซึ่งเจ้าของแพ็กเกจแชร์โฮสต์มักไม่มีข้อมูลนี้ ให้ประสานผู้ให้บริการแทนการพยายามใช้รหัสของ database user แทนบัญชีผู้ดูแล

Plesk ให้เลือกระหว่าง Create a full copy ที่รวมข้อมูลในตาราง กับการคัดลอกเฉพาะโครงสร้าง หากต้องทดสอบ migration บนข้อมูลจริง ให้เลือกแบบเต็มและคำนึงถึงข้อมูลส่วนบุคคลใน staging หากต้องการเพียง schema สำหรับพัฒนา ให้เลือกเฉพาะโครงสร้าง เพราะไม่ควรพาข้อมูลลูกค้าไปอยู่ในระบบทดสอบโดยไม่จำเป็น

หลังคัดลอกต้องทำอะไรต่อ

ตรวจว่าฐานปลายทางปรากฏในรายการ เปิดเครื่องมือฐานข้อมูลเพื่อตรวจจำนวนตารางและตัวอย่างข้อมูลที่คาดไว้ จากนั้นกำหนด database user ให้มีสิทธิ์เข้าถึงปลายทาง ตรวจ Connection Info แล้วเปลี่ยนไฟล์ตั้งค่าของเว็บทดสอบให้ชี้ฐานใหม่ ไม่แก้ไฟล์ตั้งค่าของเว็บจริงก่อนทดลอง หากเว็บไซต์แสดงข้อมูลเก่า ให้ตรวจว่าแอปอ่านค่าจาก config หรือ environment ชุดใด ไม่ใช่คัดลอกซ้ำโดยไม่ทราบสาเหตุ

ทดสอบทั้งการอ่านและเขียนข้อมูลใน staging และตรวจว่าการเขียนไม่ไปปรากฏบน production หากพบว่าข้อมูลสองเว็บเปลี่ยนพร้อมกัน แปลว่ามีโอกาสยังใช้ฐานเดียวกัน ให้หยุดทดสอบแล้วตรวจ host ชื่อฐานและ user ทันที สำหรับเว็บที่มีข้อมูลเปลี่ยนตลอดเวลา สำเนาครั้งหนึ่งเป็น snapshot ณ เวลานั้น ไม่ใช่การซิงก์ต่อเนื่อง เมื่อจะเปิดเว็บใหม่จริงต้องวางแผนช่วงหยุดเขียนและคัดลอกข้อมูลล่าสุดอีกครั้ง

อ่านเอกสารต้นทาง: https://docs.plesk.com/en-US/obsidian/customer-guide/website-databases/copying-databases.71563/

Chia sẻ bài viết:
Xem thêm bài viết