Πριν από λίγο καιρό, λόγω της ανάγκης, τα δεδομένα στη βάση δεδομένων Α πρέπει να μετεγκατασταθούν στη βάση δεδομένων Β για να γίνουν τα δεδομένα και στις δύο βάσεις δεδομένων ίδια. Χρησιμοποίησα το SSIS για να το ολοκληρώσω, επειδή ήταν ένας νέος πίνακας που δημιουργήθηκε από εμένα εκείνη την εποχή, οπότε κατά τη δημιουργία του πίνακα, πρόσθεσα το πεδίο rowversion για να διακρίνω ποιες διαφορές δεδομένων μεταξύ των βάσεων δεδομένων Α και Β και μετεγκατέστησα δεδομένα μόνο με διαφορετικούς αριθμούς έκδοσης, χωρίς να αντιγράψω ολόκληρο τον πίνακα για να βελτιώσω την αποτελεσματικότητα. Ωστόσο, δεν είναι πάντα απαραίτητο να λειτουργούμε σε έναν νέο πίνακα, για παράδειγμα, όταν πρέπει να λειτουργήσουμε έναν υπάρχοντα πίνακα, δεν υπάρχει πεδίο rowversion σε αυτόν τον πίνακα για να διακρίνουμε μεταξύ των παλαιών και των νέων δεδομένων, τι πρέπει να κάνουμε τότε;
Στην πραγματικότητα, πριν επικοινωνήσω με τη βάση δεδομένων του SQL Server, χρησιμοποίησα τη βάση δεδομένων Mysql, η οποία θα είχε ένα binlog για να καταγράφει ποια δεδομένα χειραγωγήθηκαν, αλλά ο sqlserver δεν είχε binlog, είχε ένα αρχείο καταγραφής συναλλαγών baiTransaction Log File είναι ένα αρχείο που χρησιμοποιείται για την καταγραφή ενημερώσεων βάσης δεδομένων, με την επέκταση ldf. Μπορείτε να συμπιέσετε τα αρχεία καταγραφής και να χρησιμοποιήσετε ένα εργαλείο άλλου κατασκευαστή για να προβάλετε τα αρχεία καταγραφής. Για παράδειγμα, εξερευνήστε το αρχείο καταγραφής για να προβάλετε αρχεία καταγραφής SQL.
Για μια λεπτομερή ματιά στο Thing Log, ρίξτε μια ματιά σε αυτό το ιστολόγιο https://www.cnblogs.com/CareySon/archive/2012/02/14/2351149.html
|