Change Data Capture (CDC) Problem

Change Data Capture (CDC) Problem

Σε αυτό το άρθρο πρόκειται να δούμε ένα βασικό πρόβλημα που συμβαίνει με το Change Data Capture (CDC) , όταν για κάποιον λόγο έχει κολλήσει ο sql server.

Και εξηγούμαστε τι εννοούμε κόλλημα. Είναι όταν για κάποιον λόγο το service είτε σταματήσει είτε το log έχει γεμίσει και δεν μπορεί να διαχειριστεί η βάση που έχει ενεργοποιημένο το CDC.

Όταν λοιπόν συμβεί κάτι τέτοιο όπως είναι φυσικό το CDC σταματάει να λειτουργεί καθώς όλη η βάση είναι εκτός. Όταν λοιπόν κάνουμε τις κατάλληλες ενέργειες και την επαναφέρουμε, δυστυχώς το CDC δεν συνεχίζει την λειτουργία του από εκεί και πέρα. Τι σημαίνει όμως αυτό για το σύστημα μας. Για να μπορέσει το CDC να κάνει c apture τα δεδομένα με τις αλλαγές χρησιμοποιεί και δεσμεύει το log μέχρι να γίνει η εγγραφή, οπότε το log file σας θα είναι δεσμευμένο και θα έχει την ένδειξη Replicate στο log use. Ότι και να κάνετε σαν ενέργεια θα παρατηρήσετε ότι το log δεν θα γίνεται truncate με αποτέλεσμα να γεμίζει.

Για να διορθώσετε αυτό το πρόβλημα είναι να κάνετε τα παρακάτω βήματα:

  1. Να βρείτε το job που κάνει την εκκίνηση και την εκτέλεση του CDC,εάν έχετε κάτι τέτοιο
  2. Να εκτελέσετε την εντολή που ξεκινάει το job, capture και cleanup
  3. Να κάνετε flush την διαδικασία που μπορεί να έχετε πειράξει για απελευθέρωση του log από το replication.