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

About this blog

News about Microsoft SQL Server and other databases...

Entries in this blog

SqlSchool.gr, New Site, More Content

Εδώ και ένα μήνα προσπάθησα να αναβαθμίσω το www.sqlschool.gr. Σήμερα γίνονται τα αποκαλυπτήρια του. Ελπίζω να σας αρέσει…

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

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

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

SqlSchool.gr Blog Moved

Όπως θα έχετε δει τον τελευταίο καιρό και συγκεκριμένα το τελευταίο μήνα ασχολούμαι συστηματικά με την αναμόρφωση του SqlSchool.gr. Αυτό ήταν κάτι το οποίο έπρεπε να γίνει εδώ και πολύ καιρό αλλά μια το ένα μια το άλλο δεν μου άφηναν τον χρόνο που χρειαζόμουν για το κάνω αυτό, βέβαια ούτε και τώρα τον είχα αλλά πήρα την απόφαση να το κάνω καθώς ήταν κάτι που δεν έπρεπε να μείνει στην παλαιότερη κατάσταση του. Στην αρχή κοίταξα μήπως και χρησιμοποιήσω κάποια έτοιμη πλατφόρμα και να γλυτώσω χρ

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

Running SQL Server Agent job on AlwaysOn Availability Groups

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

antonch

antonch

Implement Database Mirroring in SQL Server 2008

Ένα από τα πράγματα τα οποία προσωπικά θεωρώ από τα διαμάντια του SQL Server που έχουμε διαθέσιμα από την έκδοση του SQL Server 2005 (Standard & Enterprise) SP1 είναι το Database Mirroring. Μέχρι την εμφάνιση του για να έχω αυτό που όλοι θέλουμε και δεν είναι άλλο από το database availability έπρεπε να καταφύγουμε σε κάποιες λύσεις όπως: 1. Clustering Ιδανική λύση αλλά στοιχίζει αρκετά σε χρήμα τόσο για την υλοποίηση της όσο και στη διαχείριση του. 2. Replication Αξιόπιστη λύσ

antonch

antonch

Auditing Reports Execution in SSRS

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

antonch

antonch

Uniqueidentifier data type as table primary key or clustered index

Περιμένοντας να έρθουν συγγενείς και φίλοι σπίτι να μου ευχηθούν για την γιορτή μου, σκεφτόμουν πώς να ευχαριστήσω όλους που σήμερα είτε με email είτε με μηνύματα στο facebook ή στο messenger μου ευχήθηκαν χρόνια πολλά. Στο μυαλό μου ήρθε κάτι το οποίο το είδα πάλι να χρησιμοποιείται αλλά όχι και τόσο καλά το αντίθετο θα έλεγα. Aυτό δεν είναι από το sql server data type uniqueidentifier σαν primary key σε table. Ας δούμε λοιπόν τα πράγματα με την σειρά για να καταλάβουμε το πρόβλημα Φτιάχν

antonch

antonch

Tip of the Day: Page Life Expectancy Performance Counter

Όπως γνωρίζουμε ο SQL Server διαβάζει τις σελίδες από το δίσκο και τις βάζει στην buffer cache. To πόσο χρόνο (σε δευτερόλεπτα) αυτές μπορούν να μείνουν κατά μέσο όρο στην buffer cache χωρίς να ζητηθούν/χρησιμοποιηθούν μπορούμε να το δούμε από τον SQL Server\Buffer Manager\Page Life Expectancy performance counter. O μετρητής αυτός  σύμφωνα με τα recommendations πρέπει να είναι πάνω από 300 sec για να έχουμε ένα καλό PLE. Φυσικά σε σύστήματα που έχουν προβλήματα με την μνήμη αυτός θα είναι μικρότ

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

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

What is Semi join and Anti join?

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

antonch

antonch

SQL Server 2016 New features - The sys.dm_exec_session_wait_stats DMV

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

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

Why & How to optimize SQL Server for performance from design to query

Πρόσφατα έκανα μια παρουσίαση με το παραπάνω θέμα για το dotNetZone. Επειδή το θεωρω σημαντικό και επειδή τα παιδιά εκεί την έχουν μαγνητοσκοπήσει σας την δίνω και σε εσάς. https://www323.livemeeting.com/cc/usergroups/view?id=dnz34 και η παρουσίαση μου είναι στο http://cid-4745d5449dec653a.skydrive.live.com/self.aspx/dnzPresentations/Why%20%5E0%20How%20to%20optimize%20SQL%20Server%20for%20performance%20from%20design%20to%20query.pdf

antonch

antonch

What a DBA must know for query performance in SQL Server

Θα επανέλθω στο συγκεκριμένο θέμα μετά από απαίτηση συναδέλφων που είδαν την παρουσίαση που έχω κάνει για το 34ο dotNetZone Event και την οποία θα βρείτε εδώ. Υπήρχαν κάποιες απορίες και ερωτήσεις που φιλοδοξώ να τις απαντήσω με το παρόν post μου. Ας πάρουμε λοιπόν τα πράγματα από την αρχή μιας και διακαείς πόθος όλων μας είναι να έχουμε την τέλεια απόδοση στα queries μας δηλαδή όλα να εκτελούνται σε χρόνο μηδέν και να επιστρέφουν δισεκατομμύρια εγγραφές (καλά πλάκα κάνω ). Όμως για όλα αυτά υ

antonch

antonch

The SQL Server Operating System (SQLOS) – Μέρος 1ο

Πριν προχωρήσω στο αντικείμενο που θέλω να παρουσιάσω θα ήθελα να περιγράψω κάποιες γνωστές έννοιες που θεωρώ ότι είναι καλό να επαναληθούν, μιας και η επανάληψη είναι η μητέρα της μάθησης όπως έλεγαν οι πρόγονοι μας. Κάθε application ( και με αυτό τον όρο συμπεριλαμβάνω και τα services ) μπορεί να εκτελεσθεί πολλές φορές. Κάθε εκτέλεση του application είναι ένα instance. Κάθε instance που τρέχει είναι ένα process, το οποίο στην ουσία είναι ένας container από ένα ή πολλα threads και τα οποία

antonch

antonch

Θα ήθελα την γνώμη σας

Καθώς έχουν ήδη γίνει δέκα SQL Saturday Nights θα ήθελα την γνώμη σας για την ποιότητα αυτών. Θα παρακαλούσα αν θέλετε να μου πείτε όσοι τα έχετε παρακολουθήσει είτε ζωντάνα είτε μαγνητοσκοπημένα την γνώμη σας για αυτά. Αυτό μπορείτε να το κάνετε μπαίνοντας στο www.sqlschool.gr και στη δημοσκόπηση που υπάρχει εκεί να επιλέξετε την άποψη σας. Σας ευχαριστώ εκ των προτέρων antonch

antonch

antonch

SQL Saturday Nights - Ενημέρωση

Μόλις έχω τελειώσει το 9ο SQL Saturday Night και μάλιστα σε χρονικό διάστημα συντομότερο από τον αρχικά προγραμματισμένο. Αίτια για αυτή την συντόμευση ήταν κάποια παλικάρια τα οποία είχαν σαν σκοπό όχι να παρακολουθήσουν την παρουσίαση μου αλλά να κάνουν πλάκα προτείνοντας θέματα σεξουαλικού περιεχομένου και άλλα όμορφα τέτοια πράγματα. Αυτό είχε σαν αποτέλεσμα πρώτον να με απασχολούν και να μου αποσπούν την προσοχή μου από την παρουσίαση μου και δεύτερο η μαγνητοσκόπηση αυτή να πάει στο καλάθι

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

Λίγα λόγια για τα database Schemas

Αρκέτες φορές έχω δεχθεί ερωτήσεις σχετικά με τα database Schemas. Οι πιο δημοφιλείς ερωτήσεις είναι; Τι είναι τα Schemas; Ποιά είναι η πρακτική αξία τους; Γιατί τα έβαλαν στον SQL Server τόσο αργά; η Oracle τα έχει χρόνια τώρα! Θα ξεκινήσω με την τελευταία. Μπορεί τα schemas να εμφανίστηκαν από τον SQL Server 2005 αλλά αυτό δεν σημαίνει ότι δεν υπήρχαν και πριν. Υπήρχαν αλλά δεν ήταν “ορατά”. Στην πραγματικότητα με το που έφτιαχνες έναν user, αυτόματα δημιουργόνταν το αντίστοιχ

antonch

antonch

Microsoft SQL Server ODBC Driver for Linux

Με μια ανακοίνωση που ακολουθεί η Microsoft παρουσίασε τον Microsoft SQL Server ODBC Driver for Linux. Διαλειτουργικότητα σε όλο της το μεγαλείο. Greetings Developer community: We heard yesterday and today at the PASS conference about the exciting new areas that we are investing in bringing the power of SQL Server to our customers. Many of our developers who rely on native connectivity to SQL Server primarily use ODBC for their connectivity needs. We have been supporting ODBC as

antonch

antonch

Πώς εκτελείται λογικά ένα sql query;

Τόσα χρόνια στον χώρο της πληροφορικής έχω μάθει να προσπαθώ να καταλάβω τι γίνεται πίσω από την σκηνή με αυτό που ασχολούμαι. Ο SQL Server είναι ένα από αυτά, και στο οποίο έχω αφιερώσει αρκετές τρίχες της κεφαλής μου. Σήμερα θα σας πάρω λίγο από τον πολύτιμο χρόνο σας για να σας μεταφέρω μια γνώση που θα σας φανεί αρκετά χρήσιμη. Όλοι λίγο ή πολύ έχετε γράψει ένα sql query. Άλλες φορές αυτό λειτούργησε άψογα άλλες φορές όχι. Το μυστικό για να γράψεις ένα καλό sql query είναι να έχεις κατανο

antonch

antonch

×
×
  • Create New...