14 Mar 2010
Lesson: Backup/Restore in SQL Server 2008
Βλέποντας μέσα από το forum μας διάφορες συζητήσεις σχετικά με το θέμα του μεγέθους του transaction log (T-Log) διαπίστωσα ότι υπάρχει ένα θολό τοπίο γύρω από το θέμα disaster recovery (backup - restore) πάνω στον SQL Server. Πήρα την απόφαση να γράψω για αυτό το θέμα ώστε να το ξεκαθαρίσω μια και καλή διότι είναι τόσο απλό και τόσο δυνατό που είναι αμαρτία από το Θεό να παιδεύεται ο κόσμος.
23 Jan 2016
In-sync databases backups and restores
Για τους περισσότερους ένα application έχει μια database. Αυτό απολοποιεί σε μεγάλο βαθμό κάποια πράγματα και ένα από αυτά είναι και το backup της database. Ακόμα και σε αυτή την περίπτωση όμως πρέπει να ληφθούν σοβαρά όλες οι παράμετροι όπως το RPO και το RTO.
Τα πράγματα όμως παίρνουν μια άγρια ομορφιά όταν πίσω από την εφαρμογή σου υπάρχουν περισσότερες από μια databases. Σενάρια για μια τέτοια κατάσταση υπάρχουν αρκετά όπως για παράδειγμα να έχεις μια OLTP database που ενημερώνει μια MIS database ή να έχεις δύο OLTP databases που ενημερώνονται παράλληλα κατά την διάρκεια των transactions που υλοποιούνται από το application.
18 Oct 2012
Migrating a Database to a SQL Server 2012 Instance
Σε προηγούμενα μου post μίλησα για την διαδικασία του upgrade σε SQL Server 2012. Σε αυτό θα σας δώσω μερικές συμβουλές για το πως μπορείτε να κάνετε migration μια ή περισσότερες databases από μια παλαιότερη έκδοση του SQL Server σε SQL Server 2012.
Οι προτεινόμενοι τρόποι για να γίνει κάτι τέτοιο είναι οι παρακάτω και δεν υπάρχει καλύτερος ή χειρότερος τρόπος. Ο κάθε ένας έχει τα συν και τα πλην του και θα πρέπει να κατανοήσουμε αυτά πριν διαλέξουμε αυτόν με τον οποίο θα δουλέψουμε.
05 Dec 2012
Answer to Recovery question
Μια ερώτηση μου ήρθε πριν από λίγο στο mailbox μου σχετικά με backup / restore. Νομίζω ότι είναι κάτι το οποίο θα πρέπει να αναφερθεί γιατί έχω την υποψία ότι αρκετοί δεν το γνωρίζουν.
24 Jan 2010
Why TRUNCATE_LOG discontinued (Answer to Mr. Kladakis)
Στο 18ο event μας που είχα την ομιλία μου η συζήτηση μας έφερε να μιλήσουμε για το ότι ευτυχώς πλέον δεν υποστηρίζεται η χρήση της BACKUP LOG WITH TRUNCATE_ONLY. Ο φίλος μου, συναγωνιστής μου, Αθανάσιος Κλαδάκης είχε την εύλογη απορία γιατί έγινε αυτό. Είπαμε κάποια πράγματα αλλά επειδή ο χρόνος ήταν περιορισμένος διότι περίμεναν οι μπύρες και η πίτα-πίτσα δεν έμεινα ικανοποιημένος με την απάντηση που έδωσα. Έτσι επανέρχομαι στο θέμα.
14 Nov 2011
SQL Server 2012 - Backup Timeline feature
Όσοι ασχολούμαστε καθημερινά με τον SQL Server και το πρώτο πράγμα που κάνουμε το πρωί πριν ακόμα πιούμε την πρώτη τζούρα καφές είναι σχεδόν σίγουρο ότι όταν θα χρειαστεί να κάνουμε κάποιο restore σε μια database γνωρίζουμε εξ αρχής σε ποιο χρονικό σημείο θα γυρίσουμε. Παρόλα αυτά όμως κάνουμε επιβεβαίωση χρησιμοποιώντας διάφορες τεχνικές κυρίως με T-SQL commands.
06 Jan 2020
Let's talk about Backup related wait types
Backup/Restore δύο τόσο συνηθισμένες εργασίες που όμως γίνονται τόσα λάθη σε αυτές που πολλές φορές έχουν τραγικά αποτελέσματα. Σε αυτό το άρθρο θα ασχοληθώ με τα wait types που αφορούν τις διαδικασίες αυτές και τα οποία θα βοηθήσουν, θεωρώ, στην κατανόηση τους.
31 Jan 2013
Backup (and Restore) database to (from) the cloud?
Αν πριν μερικά χρόνια κάποιος ήθελε να παίρνει backup την βάση του σε share network drive ίσως να τον λέγατε παρανοϊκό αλλά παρόλα αυτά μπορούσε εύκολα να γίνει. Αν όμως κάποιος σας έλεγε ότι ήθελε κάτι αντίστοιχο να γίνει σε κάποιο άλλο share αλλά σε άλλον γεωγραφικό τόπο εκεί τα πράγματα να γίνονταν λίγο δυσκολότερα. Αν τώρα κάποιος σας έλεγε ότι μπορεί πλέον να έχει παίρνεις backup αλλά και να κάνει restore στο cloud;
06 Oct 2015
How to know the execution percentage and completion time for a task
Καθημερινά ένας DBA εκτελεί πολλές εργασίες που μπορεί να είναι από ένα απλό backup/restore μέχρι κάποιο index rebuild/reorganize ή ένα DBCC CHECKDB.
Είναι αρκετά περίπλοκο και δύσκολο εκ των προτέρων να γνωρίζει ακριβώς πόσο χρόνο θα χρειαστούν τέτοιου είδους εργασίες για να ολοκληρωθούν. Παρόλα αυτά όμως είναι σε θέση να γνωρίζει πόσο χρόνο θα χρειαστούν μέχρι να ολοκληρωθούν εφόσον αυτές ξεκινήσουν.
06 Aug 2010
Πως να επαναφέρω μια suspect database
Σήμερα δεν ξημέρωσε καλά για κάποιον συνάδελφο. Δυστυχώς για αυτόν είχε να αντιμέτωπίσει ένα σοβαρό θέμα μιας και η βάση του ERP του ήταν suspect. Πραγματικά είχα καιρό να ακούσω για κάτι τέτοιο και τις περισσότερες φορές αιτία είναι hard disk failures. Όπως και να έχει όμως υπάρχει τρόπος να την φέρεις ξανά πίσω με την παραδοχή ότι θα έχεις πιθανότατα κάποιες απώλειες δεδομένων.
07 Dec 2009
Implement Database Mirroring in SQL Server 2008
Ένα από τα πράγματα τα οποία προσωπικά θεωρώ από τα διαμάντια του SQL Server που έχουμε διαθέσιμα από την έκδοση του SQL Server 2005 (Standard & Enterprise) SP1 είναι το Database Mirroring. Μέχρι την εμφάνιση του για να έχω αυτό που όλοι θέλουμε και δεν είναι άλλο από το database availability έπρεπε να καταφύγουμε σε κάποιες λύσεις όπως...
30 Mar 2012
Data Warehouse Physical Design Guide.
Αφού έχουμε σχεδιάσει λογικά και σύμφωνα με τις επιχειρησιακές απαιτήσεις το DW μας, φτάνει η στιγμή που πρέπει να το κάνουμε πραγματικότητα υλοποιώντας το φυσικά. Όπως έχω αναφέρει σε όλα τα προηγούμενα post αυτής της σειράς θα πρέπει φυσικά να υλοποιήσω το DW λαμβάνοντας σοβαρά υπόψη μου τους εξής παράγοντες που δεν είναι άλλοι από τους performance, scalability, manageability. Με αυτούς σαν πυξίδα θα πρέπει να Tips for Database Files...
04 May 2015
SQL Server 2016 datasheet
Σήμερα ο Satya Nadella , CEO της Microsoft στα πλαίσια του keynote του Microsoft Ignite ανακοίνωσε την έλευση του SQL Server 2016. Φυσικά αμέσως υπήρχαν και οι απαραίτητες αναρτήσεις στο msdn / TechNet όπου πλέον υπάρχει το datasheet για την νέα έκδοση και τα περιεχόμενα του είναι τα παρακάτω
26 Aug 2014
Understanding the Dedicated Administrator Connection - DAC
Κάθε SQL Server DBA έχει στην συλλογή του διάφορα εργαλεία για να κάνει την καλύτερα την ημερήσια δουλεία του. Ένα από αυτά είναι και τo Dedicated Administrator Connection (DAC). Πόσοι όμως ξέρουν τι είναι αυτό και πως πρέπει να χρησιμοποιείται;
18 Jun 2012
Why you must terminate your statements with semicolon (;)
Αφορμή για αυτό το post ήταν δύο γεγονότα τα οποία μου συνέβησαν το τελευταίο διάστημα. Το ένα ήταν μια «διαμάχη» με έναν συνάδελφο σχετικά με το γεγονός ότι πλέον δεν υποστηρίζεται πλέον στον SQL Server 2012 η sp_dboption, και το άλλο είναι ένα προσωπικό μήνυμα που έλαβα από κάποιον άλλο συνάδελφο σχετικά με το αν θα πρέπει να χρησιμοποιείται το semicolon στο τέλος των εντολών της T-SQL.
28 Jul 2010
What are the largest SQL projects in the world?
Πρόσφατα έπεσα μούρη με μούρη σε μια παρουσίαση του Kevin Cox που είχε το παραπάνω θέμα. Επειδή είναι αρκετά ενδιαφέρουσα και ρίχνει αρκετούς μύθους αποφάσισα να την μοιραστώ μαζί σας. Ας ξεκινήσουμε με μερικά στατιστικά
01 Feb 2012
How to use specific values in parameters of fn_dblog function
Μια από τις αγαπημένες functions που την χρησιμοποιώ αρκετά συχνά ιδιαίτερα σε περιπτώσεις που υπάρχει κάποιο πρόβλημα με συγκεκριμένη βάση είναι η fn_dblog. Παρόλο που είναι μια undocumented function εντούτοις είναι ευρέως γνωστή και φυσικά χρησιμοποιούμενη σε όσους σοβαρά ασχολούνται με τον SQL Server.
13 Jun 2021
Failed to generate a checkpoint in a database
Πρόσφατα κλήθηκα να διορθώσω μια corrupted database με αρκετά μεγάλο αριθμό corrupted pages. Η διαδικασία επιδιόρθωσης ήταν επίπονη και πήρε αρκετές ημέρες αλλά τελικά ολοκληρώθηκε. Με την ολοκλήρωση της διαδικασίας ζήτησα να γίνει full backup καθώς τα ήδη υπάρχοντα backups ήταν και αυτά corrupted καθώς περιείχαν τις corrupted pages.
Κατά την διάρκεια του full backup όμως εμφανίστηκε ένα νέο μήνυμα λάθους που έλεγε το εξής...
03 Aug 2018
Rebuild / Recreate Transaction log
Θα ξεκινήσω τα άρθρο μου αυτό τονίζοντας ότι όλα όσα θα αναφερθούν παρακάτω αφορούν εξαιρετικά δύσκολες περιπτώσεις και αποτελούν την τελευταία σανίδα σωτηρίας. Επίσης καλό είναι να έχει γίνει και μια σχετική "προπόνηση" σε περιβάλλον δοκιμών ώστε να είστε σίγουροι για το τι ακριβώς κάνετε και να μην σας λούζει κρύος ιδρώτας.
05 Oct 2018
Smart backups in SQL Server 2017
Σε αυτό το επεισόδιο SQL Server in Greek θα θούμε την δυνατότητα που έχουμε για να υλοποιήσουμε έξυπνα backups στον SQL Server 2017 και μετά.
06 Aug 2016
Databases Restore History Report
Ένας DBA καθημερινά έχει πολλά πράγματα να κάνει και πολλές ερωτήσεις να απαντήσει. Πολλές φορές αυτό που θέλει να κάνει ή να απαντήσει δεν γίνεται με το πάτημα ενός κουμπιού.
Μια ερώτηση που μου τέθηκε χθες ήταν να δω το πότε έχει γίνει restore μια database σε ένα instance.
Η απάντηση εύκολα βγαίνει από το restorehistory table που υπάρχει στην msdb database αλλά πάντα θέλεις να έχεις περισσότερες πληροφορίες που αυτός δεν περιέχει.
12 May 2014
Mirror Backups, a feature that most of us ignore
Σήμερα θα σας απασχολήσω με ένα θέμα το οποίο αφορά το backup. Aν και είναι Enterprise edition feature διαπίστωσα ότι ακόμα και αυτοί που διαθέτουν την συγκεκριμένη έκδοση αγνοούν αυτό, τουλάχιστον η πλειοψηφία.
Αυτό δεν είναι άλλο από την δυνατότητα να έχω MIRROR Backup στα backups τα οποία εκτελώ στον SQL Server.
28 Oct 2013
Taking database backups from SQL Server 2014 to Windows Azure Storage (Part I)
Σαν DBA πρέπει να έχω μια σωστή πολιτική backup που να ταιριάζει με τις εκάστοτε ανάγκες της database. Πέρα όμως από αυτή την πολιτική πρέπει να φροντίζω να φυλάσσω τα backup αυτά σε χώρους εκτός κτηρίου / περιοχής για τον φόβο των Ιουδαίων.
Από το CU2 του SQL Server 2012 μας δόθηκε η δυνατότητα να μπορούμε να εκτελούμε backups απευθείας σε azure storage. Πλέον αυτή η δυνατότητα στον SQL Server 2014 (CTP2) έχει μεγαλώσει και δίνει περισσότερες δυνατότητες.
06 Nov 2010
Backup & Restore
Μια βασική εργασία που όλοι πρέπει να γνωρίζουν στον SQL Server είναι αυτή του Backup. Σε αυτό το session παρουσιάζεται η δυνατότητα αυτή με απλό τρόπο ώστε όλοι να μπορούν να την πραγματοποιήσουν και να έχουν σωστό backup των δεδομένων τους. Επίσης παρουσιάζονται και οι δυνατότητες Restore που υπάρχουν ανάλογα με το τι Backup έχει προηγούμενα δημιουργηθεί.
24 Apr 2017
TRY… CATCH with Extended Event
Από το SQL Server 2005 έχουμε στην διάθεση μας το TRY…CATCH με το οποίο μπορούμε να έχουμε ένα δομημένο exception handling και πραγματικά είμαστε όλοι ευχαριστημένοι με αυτό.Παρόλο που αυτό κάνει εξαιρετικά την δουλειά του και πιάνει πραγματικά όλα τα run time exceptions υπάρχει κάτι που συμβαίνει και που οι περισσότεροι πιστεύουν ότι είναι limitation σε αυτό (κατά την γνώμη μου δεν είναι).
27 Apr 2015
Database(s) backup history reports
Σαν DBA θέλεις να έχεις τα πάντα σε έλεγχο και για αυτό πρέπει αρκετές φορές να κάνεις κάποια πράγματα πριν οι καταστάσεις ξεφύγουν από τον έλεγχο σου.