Jump to content
  • entries
    292
  • comments
    368
  • views
    61031

About this blog

News about Microsoft SQL Server and other databases...

Entries in this blog

Storing DDL Statements History

Ένας οργανισμός έχει πολλά SQL Server Instances, πολλές databases και σίγουρα πάνω από έναν DBA, DB developer που έχουν πρόσβαση σε αυτά τα instances και αυτές τις databases. Ζητούμενο από όλους είναι να γνωρίζουμε τις αλλαγές που έχουν γίνει σε αυτές τις databases σε επίπεδο schema αλλά και πότε μπήκε ένας χρήστης σε ποιο ρόλο και πολλά ακόμα στοιχεία όπως δημιουργία indexes, αλλαγή στο μέγεθος μιας βάσης κλπ. Όλα αυτά ακόμα και μέσα από το SSMS να γίνουν είναι Data Definition Language (DDL) st

antonch

antonch

The server principal already exists – Error 15025 troubleshooting

Πάντα υπάρχει κάτι που μπορεί να σε κάνει να χαμογελάσεις ευχάριστα ακόμα και αν είναι ένα μήνυμα λάθους!. Κάνοντας ένα τυπικό έλεγχο σε ένα παλιό Always On Availability Group διαπίστωσα ότι ένα domain group που είχε πρόσβαση στο ένα node δεν είχε πρόσβαση στο άλλο. Φυσικά αυτό θα έπρεπε να διορθωθεί καθώς σε περίπτωση που γίνονταν failover οι χρήστες του συγκεκριμένου domain group δεν θα είχαν πρόσβαση στο άλλο. Τι ποιο απλό από το να κάνει κάνεις αυτή την διαδικασία είτε μέσω SSMS είτε με τη

antonch

antonch

Get All tables row count without using Count(*) function

Η δύναμη της συνήθειας είναι το μεγαλύτερο ναρκωτικό του μυαλού και δεν το αφήνει να σκεφτεί αποδοτικά. Αλήθεια πόσες φορές κάνουμε μηχανικά κάποια πράγματα επειδή τα έχουμε συνηθίσει στα τόσα χρόνια που κάνουμε αυτή την δουλειά ;   http://www.sqlschool.gr/blog/get-all-tables-row-count-without-using-count-function-1058.aspx

antonch

antonch

SQL Server 2016 New features - The sys.dm_exec_function_stats DMV

Τα User Defined Functions (UDF) είναι γνωστά στους περισσότερους. Η χρήση τους είναι μεγάλη αλλά αρκετές φορές χρησιμοποιούνται λάθος κυρίως λόγο της άγνοιας που υπάρχει γύρω από την εκτέλεση ενός UDF και ιδιαίτερα όταν αυτό εμπλέκεται μέσα σε ένα query. Οι περισσότεροι συγκρίνοντας το execution plan ενός query χωρίς UDF και με UDF βλέπουν ότι το query cost είναι μικρότερο σε αυτό που χρησιμοποιεί το UDF και αμέσως θεωρούν ότι αυτό είναι και το καλύτερο. Για ακόμα μια φορά θα τονίσω ότι δεν υπά

antonch

antonch

SQL Server 2016 New features - The sys.dm_exec_session_wait_stats DMV

Καθημερινά ένας DBA ή DB developer έχει να αντιμετωπίσει αρκετούς αστάθμητους τις περισσότερες φορές παράγοντες που επηρεάζουν το performance. Πιστέψτε με ότι αυτό είναι μια δουλεία που απαιτεί σχολαστικότητα γνώση της αρχιτεκτονικής τόσο του SQL Server όσο και της database. Για να κάνεις αυτή την δουλεία θα πρέπει να έχει μελετήσει αρκετά και να έχεις κάνει αρκετή πρακτική εξάσκηση για την απόκτηση εμπειρίας. Ακόμα και ένας τέτοιος άνθρωπος πάντα επιζητά τρόπους να κάνει λιγότερο δύσκολη την

antonch

antonch

Running SQL Server Agent job on AlwaysOn Availability Groups

Όσοι έχουν στο περιβάλλον τους έστω και ένα AlwaysOn Availability Group σίγουρα θα έχουν αναρωτηθεί πως να εκτελούν τις διάφορες εργασίες που θέλουν πάνω σε μια database που είναι σε Availability Group.   Υπάρχουν αρκετοί τρόποι, από τον απλούστερο μέχρι τον ποιό advanced και φυσικά αυτό που προτείνω για αυτό το θέμα.   Αντί να γράψω ένα μακροσκελές άρθρο για το συγκεκριμένο θέμα, επέλεξα να παρουσιάσω το θέμα με ένα web cast και στο post αυτό να σας δώσω το κώδικα που χρησιμοποίησα στο web

antonch

antonch

Auditing Reports Execution in SSRS

Ένα από τα services του SQL Server είναι τα Reporting Services τα οποία παρέχουν ένα εξαιρετικά ευέλικτο τρόπο να μεταδίδεται η πληροφορία στους τελικούς χρήστες. Η χρήση τους από τις εταιρίες και τους οργανισμούς έχει αυξηθεί σε υπερθετικό βαθμό και κανείς θα βρει μεγάλο αριθμό από reports να εκτελούνται καθημερινά στις υποδομές αυτών των εταιρειών. Είναι φυσικό κάποια στιγμή να χρειαζόμαστε να παρακολουθήσουμε ποια είναι αυτά που χρησιμοποιούνται, πόσο συχνά χρησιμοποιούνται, πόσο χρό

antonch

antonch

Webcast - Identity Property Behavior Changes in SQL Server 2012 and above

Από το SQL Server 2012 και πάνω έχει αλλάξει η συμπεριφορά του Identity property. Σε αυτό το web cast δείχνω την νέα και τι αυτή φέρνει σαν επιπτώσεις στην καθημερινή μας εργασία   http://www.sqlschool.gr/webcast/11/content.aspx

antonch

antonch

How to deal with migration or instance upgrade nightmares

Κάθε φορά που στο μυαλό σου έρχεται η σκέψη να κάνεις upgrade ένα υπάρχον SQL Server instance ή κάποιες databases σε επόμενη έκδοση τα αισθήματα σου είναι ανάμικτα. Από την μια λες πρέπει να γίνει καθώς θα πάω σε κάτι νέο με περισσότερα χαρακτηριστικά και δυνατότητες και έτσι θα είμαι σε θέση να παρέχω καλύτερες υπηρεσίες στους χρήστες μου. Από την άλλη αναρωτιέσαι αν αυτό θα σου δημιουργήσει προβλήματα καθώς μπορεί κάποια πράγματα μπορεί να μην δουλέψουν γιατί μπορεί να μην υπάρχει συμβατότητα

antonch

antonch

Create a db_executor database role

Επειδή το security στη database είναι αρκετά σημαντικό και πραγματικά δεν ξέρω γιατί οι περισσότεροι δεν δίνουν την πρέπουσα σημασία σε αυτό το σύντομο post θα σας δώσω ένα tip του οποίου η εφαρμογή ξεπερνάει το 99% των περιπτώσεων.   http://www.sqlschool.gr/blog/create-a-db_executor-database-role-1013.aspx

antonch

antonch

What you must know about official training and certification in SQL Server 2012 and 2014

Εδώ και αρκετό καιρό έχω γίνει αποδέκτης αρκετών ερωτήσεων σχετικά με τα σεμινάρια της Microsoft για τον SQL Server και συγκεκριμένα για τις εκδόσεις του 2012 & 2014. Οι ερωτήσεις αφορούν θέματα περιεχομένου και πιστοποίησης.   http://www.sqlschool.gr/blog/what-you-must-know-about-official-training-and-certification-in-sql-server-2012-and-2014-1012.aspx

antonch

antonch

Do not panic when an error occurred, just learn to read the logs

Δεν ξέρω αν σας αρέσει να ανεβαίνει η αδρεναλίνη σας ύψη αλλά προσωπικά μου αρέσει, αρκεί να είναι όπως αυτή η περίπτωση :-) Είμαι λοιπόν από το πρωί πάνω σε παραγωγικό server που έχει κομβικό Internet-ικο τμήμα του οργανισμού που εργάζομαι. Παλεύω να κάνω partitioning το πίνακα ημερολογίου συναλλαγών και είναι τεράστιος… Πρέπει να κάνω απλές και σίγουρες κινήσεις που δεν θα επηρεάσουν σε καμία περίπτωση την απόδοση του συστήματος.   http://www.sqlschool.gr/blog/do-not-panic-when-an-error-occ

antonch

antonch

Where stored the last checkpoint operation info

Στο μάθημα της προηγούμενης εβδομάδας δέχθηκα μια ερώτηση από ένα πολύ καλό φίλο και συνάδελφο (καλημέρα Θεόδωρε) μια αρκετά ενδιαφέρουσα ερώτηση που αφορούσε το που αποθηκεύεται η πληροφορία της διαδικασίας του checkpoint σε μια database. Επειδή η απάντηση μου τον ξάφνιασε λίγο σε αυτό το post αρχικά θα την μοιραστώ μαζί σας και θα την εξηγήσω. http://www.sqlschool.gr/blog/where-stored-the-last-checkpoint-operation-info-1010.aspx

antonch

antonch

Do not uncheck “Prevent saving changes that require table re-creation” option on SSMS

Οι περισσότεροι από εσάς όταν θέλετε να αλλάξετε την δομή ενός πίνακα σε μια βάση χρησιμοποιείτε το SQL Server Management Studio (SSMS) όπου με δεξί κλικ στον πίνακα κάνετε design και αφού κάνετε την αλλαγή που θέλετε πατάτε το save button από την toolbar.   Είμαι σίγουρος έχετε κάνει πολλά πράγματα έτσι και έχετε μείνει απόλυτα ευχαριστημένοι. Θεωρώ επίσης βέβαιο ότι κάποια στιγμή που κάτι πάλι θέλατε να αλλάξετε αυτό δεν μπορούσε να γίνει καθώς ο SSMS σας εμφάνισε ένα παράθυρο όπως το παρακ

antonch

antonch

What is Semi join and Anti join?

Στα μάθηματα μου συχνά αναφέρω (ιδιαίτερα όμως όταν κάνω μάθημα σχετικό με τα joins) ότι εκτός από τα γνωστά inner, full, cross, self και left / right outer joins υπάρχουν και τα semi joins και anti-joins. Η πρώτη αντίδραση από το ακροατήριο μου είναι αυτή που μπορεί να έχει κάποιος όταν το χτυπάει το ρεύμα. Το καταλαβαίνω αμέσως από το γεγονός ότι ξαφνικά αποκτώ το 110% της προσοχής τους. Αυτό συμβαίνει πάντα για αυτό και γράφτηκε το συγκεκριμένο post. Αρχικά θα πω ότι είμαι σίγουρος ότι όλ

antonch

antonch

Do not forget to update index statistics

Είναι πρωινό της 27/10/2014. Κάνει κρύο για τα δικά μου δεδομένα και είμαι στο γραφείο στην δουλειά μου. Χτυπάει το τηλέφωνο και είναι ο Σοφοκλής.   http://www.sqlschool.gr/blog/do-not-forget-to-update-index-statistics-1005.aspx

antonch

antonch

Using T-SQL commands to read SQL log files

Ένας DBA στην καθημερινότητα του χρειάζεται να διαβάζει αρκετές φορές τα logs που ο SQL Server παράγει είτε για το ίδιο το SQL Server service είτε για το SQL Server Agent service. Φυσικά και υπάρχει γραφικό περιβάλλον που μπορεί εύκολα κανείς να κάνει αυτό. Υπάρχει όμως και μη γραφικός τρόπος που διευκολύνει περισσότερο, κατά την γνώμη μου, στην ανάγνωση των logs ιδιαίτερα όταν αυτά έχουν μεγάλο όγκο από καταχωρήσεις.   http://www.sqlschool.gr/blog/using-t-sql-commands-to-read-sql-log-files-1

antonch

antonch

How often I have to do rebuild or reorganize indexes in my database?

Ένα ερώτημα που με ρωτάνε συνέχεια όλοι. Μάλιστα στο πρώτο SQL Saturday που έγινε στην Ελλάδα το Σάββατο 4/10/2014 η συγκεκριμένη ερώτηση είχε μεγάλο σουξέ. Για αυτό λοιπόν θα την απαντήσω και γραπτώς ώστε να είναι εύκολα αναγνώσιμη από όλους σας. http://www.sqlschool.gr/blog/how-often-i-have-to-do-rebuild-or-reorganize-indexes-in-my-database-1003.aspx

antonch

antonch

Export data to Excel File using pure T-SQL (New Version)

Πριν από τρία χρόνια είχα γράψει ένα post με αυτό το θέμα. Το συγκεκριμένο post είναι από τα δημοφιλή θα έλεγα και έχει αρκετούς, από όσο γνωρίζω που έχουν χρησιμοποιήσει την συγκεκριμένη πρόταση.Παρόλα αυτά όμως το παλαιό post χρειάζεται ένα refactoring καθώς από τότε που γράφτηκε μέχρι σήμερα έχουν μεσολαβήσει αρκετές αλλαγές που σε αρκετές περιπτώσεις δεν θα δουλέψει. Για αυτό σε αυτό δίνω μια νέα βελτιωμένη εκδοχή. more

antonch

antonch

Installing SQL Server 2012 on Windows Server 2012 Server without Internet Access

Αρκετές φορές υπάρχουν πράγματα τα οποία ερωτεύεσαι από την πρώτη στιγμή και θέλεις να είναι όλα πλέον έτσι. Εδώ και λίγο καιρό έχω αρχίσει να φτιάχνω νέα labs για τον SQL Server 2012 σε περιβάλλον Windows Server 2012 Datacenter Edition. Ο συγκεκριμένος συνδυασμός είναι από αυτά που έχουν συνηθίσει να λέμε ότι τα σπάει.Φυσικά όπως πάντα όλα μου τα labs είναι σε Ηyper-V Virtual Machines. Είναι γνωστή η λατρεία μου για τα virtual environments εδώ και χρόνια έτσι και αλλιώς. read more

antonch

antonch

How to write scripts for SQL Server Reporting Services RS.EXE utility using Visual Studio

Δεν είναι λίγες οι φορές που θέλουμε να αυτοματοποιήσουμε διαδικασίες ή να κάνουμε εργασίες μαζικά χωρίς να μπλέκουμε με το UI στα SQL Server Reporting Services. Για να κάνουμε κάτι τέτοιο πολλές φορές θα χρειαστεί να γράψουμε κάποιο script σε Visual Basic .NET το οποίο θα πρέπει να εκτελεστεί με το rs.exe utility που έχουν τα SSRS. more

antonch

antonch

Migrating a Database to a SQL Server 2012 Instance

Σε προηγούμενα μου post μίλησα για την διαδικασία του upgrade σε SQL Server 2012. Σε αυτό θα σας δώσω μερικές συμβουλές για το πως μπορείτε να κάνετε migration μια ή περισσότερες databases από μια παλαιότερη έκδοση του SQL Server σε SQL Server 2012. Οι προτεινόμενοι τρόποι για να γίνει κάτι τέτοιο είναι οι παρακάτω και δεν υπάρχει καλύτερος ή χειρότερος τρόπος. Ο κάθε ένας έχει τα συν και τα πλην του και θα πρέπει να κατανοήσουμε αυτά πριν διαλέξουμε αυτόν με τον οποίο θα δουλέψουμε. περισσότε

antonch

antonch

Introduction to MDX Queries in SQL Server 2012–SQL Saturday Night #17

Σε αυτό το SQL Saturday Night θα κάνουμε μια εισαγωγή στη Multi-Dimensional eXpression query language η οποία χρησιμοποιείται για να ρωτήσουμε data που είναι στα Analysis Services του SQL Server 2012. Εγγραφή (είναι δωρεάν)

antonch

antonch

Upgrading a previous version instance of SQL Server to SQL Server 2012

Όλο και περισσότεροι πλέον ενδιαφέρονται να μεταβούν στην έκδοση 2012 του SQL Server. Έχω αρκετές πλέον ερωτήσεις για το θέμα αυτό και νομίζω ότι πλέον είναι σκόπιμο να γράψω κάποιες γραμμές. more

antonch

antonch

×
×
  • Create New...