Skip to main content

Τι να προσέξουμε σε alter table σε παραγωγική βάση

Το alter table  είναι μια διαδικασία που αν δεν γίνει προσεκτικά μπορεί να φέρει σε κατάσταση WRITE LOCK του table για πολύ ώρα με αποτέλεσμα να μη μπορεί να γράψει κανείς στη βάση. Θα πρέπει να προσέξουμε σε περίπτωση που κάνουμε alter table αν κάνουμε προσθήκη column ή αλλαγή column ή drop index κτλπ. 

Αλλαγή column type σε ιδιο column type αλλά μεγαλύτερο μέγεθος

Είναι ασφαλές διαδικασία που γίνεται γρήγορα και δε θα επιφέρει lock για μεγάλο χρονικό διάστημα. Μπορεί να γίνει σε παραγωγική βάση

Αλλαγή column type σε ιδιο column type σε διαφορετικό είδος. Πχ VARCHAR -> TEXT

Οι αλλαγές σε διαφορετικό column type μπορούν να αργήσουν πάρα πολυ καθως χρειάζεται να γίνει διαγραφή ολοκληρη του table και μεταφορά σε άλλο table όπου ο πίνακας επαναδημιουργείτε. Θα πρέπει να γίνει προσεκτικός έλεγχος αν θέλουμε να κάνουμε τέτοια αλλαγή και να σκεφτούμε το χρόνο που μπορεί να διαρκέσει. Συνήθως τέτοια αλλαγές δε πρέπει να γίνουν ποτέ σε παραγωγικό πίνακα

Προσθηκη column

Μπορεί να γίνει με ασφάλεια σε παραγωγικό πίνακα