Hai thuật ngữ bạn đang tìm là " sao chép "hoặc" ETL ".
Đầu tiên, cách tiếp cận nhân rộng.
Giả sử máy chủ quản trị của bạn có các bảng T1, T2, T3 và máy chủ công cộng của bạn có các bảng TP1, TP2.
Vì vậy, những gì bạn muốn làm (vì bạn có cấu trúc bảng khác nhau như đã nói) là:
-
Lấy các bảng từ máy chủ công cộng và tạo bản sao chính xác của các bảng đó trên máy chủ quản trị (TP1 và TP2).
-
Tạo trình kích hoạt trên bảng gốc của máy chủ quản trị để đưa dữ liệu từ T1 / T2 / T3 vào bản sao TP1 / TP2 của máy chủ quản trị.
-
Bạn cũng sẽ cần thực hiện tập hợp dữ liệu ban đầu từ T1 / T2 / T3 vào bản sao TP1 / TP2 của máy chủ quản trị. Duh.
-
Thiết lập " bản sao "từ TP1 / TP2 của máy chủ quản trị đến TP1 / TP2 của máy chủ công cộng
Một cách tiếp cận khác là viết một chương trình (các chương trình như vậy được gọi là ETL - Extract-Transform-Load) sẽ trích xuất dữ liệu từ T1 / T2 / T3 trên máy chủ quản trị (phần "E" của "ETL"), xoa bóp dữ liệu sang định dạng phù hợp để tải vào bảng TP1 / TP2 (phần "T" của "ETL"), chuyển (qua ftp / scp / whatnot) các tệp đó sang máy chủ công cộng và nửa sau của chương trình (chữ "L") một phần sẽ tải các tệp vào các bảng TP1 / TP2 trên máy chủ công cộng. Cả hai nửa chương trình sẽ được khởi chạy bởi cron
hoặc người lập lịch biểu mà bạn chọn.
Có một bài báo với một ví dụ rất hay về cách bắt đầu xây dựng Perl / MySQL ETL: http://oreilly.com/pub/a/databases/2007/04/12/building-a-data-warehouse -with-mysql-and-perl.html? page =2
Nếu bạn không muốn xây dựng hệ thống của riêng mình, đây là danh sách các hệ thống ETL mã nguồn mở, chưa bao giờ sử dụng bất kỳ hệ thống nào trong số đó nên không có ý kiến về khả năng sử dụng / chất lượng của chúng:http://www.manageability.org/blog/stuff/open-source-etl