sqlschool.gr logo

search results

searching on site content

14 Oct 2015

SQL Server 2016 New features - The sys.dm_exec_session_wait_stats DMV

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

31 Dec 2019

Let's talk about Sessions, Requests, Tasks, Worker Threads, Schedulers

Η πολυπλοκότητα του SQL Server είναι τέτοια που πρέπει να γνωρίζεις πως εκτελούνται οι εργασίες του για να μπορέσεις να δώσεις εξηγήσεις και φυσικά λύσεις.

02 Jan 2016

The sys.dm_exec_query_optimizer_info DMV

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

15 Oct 2015

SQL Server 2016 New features - The sys.dm_exec_function_stats DMV

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

12 Oct 2011

The value of sys.dm_io_virtual_file_stats DMV

Όπως αρκετές φορές έχω αναφέρει, τρεις είναι οι παράγοντες που επηρεάζουν την λειτουργία ενός SQL Server και αυτοί είναι: Memory, CPU, I/O. Αρκετοί συνάδελφοι δηλώνουν λάτρεις των Dynamic Management Views (DMV) μεταξύ αυτών είμαι και εγώ , όμως το μυστικό σε αυτές είναι να τις χρησιμοποιείς έτσι ώστε να παίρνει από αυτές συνδυαστικά τις περισσότερες φορές τη μέγιστη δυνατή πληροφορία που αυτές μπορούν να σου σώσουν. Σε αυτό το post θα σας δείξω πως χρησιμοποιώντας μια εξ αυτών...

01 Jul 2009

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

Ας συνεχίζουμε στο δεύτερο και τελευταίο μέρος τους SQLOS. To 1ο μέρος θα το βρείτε εδω.

29 Jul 2013

How to determine if a database can run on a lower SKU (edition) of SQL Server

Πρόσφατα ρωτήθηκα αν μια συγκεκριμένη database μπορούμε να την βάλουμε σε κατώτερη έκδοση SQL Server καθώς θέλανε να την εγκαταστήσουν σε ένα υποκατάστημα και δεν ήθελαν να αγοράσουν Enterprise edition του SQL Server.

04 Feb 2015

What's new in the SQL Server 2014 Resource Governor

Στον SQL Server 2008 εμφανίστηκε για πρώτη φορά ο Resource Governor, όπως παρουσιάσθηκε σε αυτό το post. Το feature αυτό εξελίχθηκε στις επόμενες εκδόσεις και στον 2014 έγιναν πολύ σημαντικές και ενδιαφέρουσες προσθήκες. Με αυτές μας δώθηκε η δυνατότητα ελέγχου του ΙΟ πάνω στον φυσικό δίσκο, δίνοντας πλέον πληρέστερο έλεγχο στα resources του συστήματός μας.

07 Sep 2009

SQL Server Query for Index Recommendation

Το παρακάτω query είναι πάρα πολύ καλό!!!. Το ξαναβρήκα τυχαία μπροστά μου καθώς σκάλιζα τα διάφορα scripts που έχω στην βιβλιοθήκη μου. Αν θυμάμαι καλά, γιατί έχει περάσει καιρός, το έχει φτιάξει ένα παλικάρι από την μαμά εταιρία, νομίζω ότι είναι ο Swapnil Bajaj.

30 Jun 2009

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

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

08 Nov 2019

How to interpreting the results of DMV sys.dm_os_performance_counters

Η καθημερινότητα ενός DBA μόνο απλή δεν είναι, αν και πολλοί πιστεύουν αυτό. Καθημερινά πρέπει να φροντίζει ώστε τα instance/databases του να είναι σε εύρυθμη λειτουργία.

05 Jul 2009

Παρουσίαση του Activity Monitor στον SQL Server 2008

Πριν ξεκινήσω να περιγράφω το συγκεκριμένο εργαλείο, οφείλω να καταθέσω την άποψη μου γι’ αυτό. ΕΙΝΑΙ ΚΑΤΑΠΛΗΚΤΙΚΟ!!!. Όσοι έχετε ασχοληθεί από παλία με τον SQL Server, προσωπικά ασχολούμαι από την έκδοση 6.0 (1996), θα έχετε παρακολουθήσει την εξέλιξη του συγκεκριμένου εργαλείου. Σε κάθε έκδοση είχαμε κάποιες βελτιώσεις. Όμως στην έκδοση του SQL Server 2008 πιστεύω ότι έχουμε τις περισσότερες αλλά και τις σημαντικότερες βελτιώσεις.

25 Mar 2018

Manage and Monitor SQL Server instances - Monitor Current Sessions

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

11 Apr 2017

Update Statistics - sys.dm_db_stats_properties DMV

Δεν θα σταματήσω να γράφω για την σημασία που έχουν τα statistics στην επιλογή του καλύτερου execution plan ποτέ. Αρκετά μεγάλος αριθμός καθυστερήσεων σε queries οφείλεται σε αυτά και προσωπικά κρίνω απαραίτητο να υπάρχει σε όλους η συγκεκριμένη γνώση γύρω από αυτά.Στο παρελθόν έχω γράψει αρκετά άρθρα γύρω από αυτά και σήμερα επανέρχομαι με ακόμα ένα με το οποίο θέλω να ρίξω περισσότερο φως σε αυτά.

06 Oct 2015

How to know the execution percentage and completion time for a task

Καθημερινά ένας DBA εκτελεί πολλές εργασίες που μπορεί να είναι από ένα απλό backup/restore μέχρι κάποιο index rebuild/reorganize ή ένα DBCC CHECKDB. Είναι αρκετά περίπλοκο και δύσκολο εκ των προτέρων να γνωρίζει ακριβώς πόσο χρόνο θα χρειαστούν τέτοιου είδους εργασίες για να ολοκληρωθούν. Παρόλα αυτά όμως είναι σε θέση να γνωρίζει πόσο χρόνο θα χρειαστούν μέχρι να ολοκληρωθούν εφόσον αυτές ξεκινήσουν.

13 Jun 2014

How can I find who consumed tempdb on a SQL Server instance

Δεν είναι λίγες οι φορές που σαν DBA θα έρθεις αντιμέτωπος με το φαινόμενο η tempdb να μεγαλώνει υπέρμετρα και ξαφνικά, ενώ δεν έχεις κάνει κάποιες αλλαγές ή δεν έχει βάλει κάτι να εκτελεστεί που είναι γνωστό ότι κάνει εκτεταμένη χρήση αυτής. Για να δούμε μπορούμε να βρούμε τι έχει γίνει;

03 Apr 2014

How to find the last time that DBCC CHECKDB ran without any errors?

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

26 Aug 2014

Understanding the Dedicated Administrator Connection - DAC

Κάθε SQL Server DBA έχει στην συλλογή του διάφορα εργαλεία για να κάνει την καλύτερα την ημερήσια δουλεία του. Ένα από αυτά είναι και τo Dedicated Administrator Connection (DAC). Πόσοι όμως ξέρουν τι είναι αυτό και πως πρέπει να χρησιμοποιείται;

10 Feb 2018

Monitoring CREATE INDEX Progress

Όσοι από εμάς έχουν περάσει ή είναι DBA σε μεγάλες databases καθημερινά έρχονται αντιμέτωποι με πολλά ενδιαφέροντα θέματα. Ένα από αυτά είναι η συντήρηση και η δημιουργία των indexes σε μεγάλου όγκου databases. Ειδικότερα αυτό που ένας τέτοιος DBA ζητάει είναι να γνωρίζει το progress ώστε να είναι σε θέση να εκτιμήσει την ολοκλήρωση της εργασίας.

30 Jun 2015

How to find the root blocking session

Το να έχεις locks δεν είναι κάτι κακό τουναντίον είναι απαραίτητα διότι διασφαλίζουν την ακεραιότητα των δεδομένων. Το γιατί έχεις locks είναι κυρίως το πώς έχει γραφτεί η εφαρμογή και έχω εξηγήσει αρκετά στο SQL Night με θέμα το Concurrency in SQL Server.

09 May 2011

Tip of the Day: sys.dm_os_buffer_descriptors

Η DMV αυτή δείχνει μια γράμμη για κάθε data page η οποία είναι στην buffer cache. Με το παρακάτω script μπορείς να δεις το ποσό σε MB που έχει δεσμευτεί από τις σελίδες που υπάρχουν για κάθε βάση μέσα στην buffer cache.

30 Jul 2018

Server related DMVs in SQL Server

Πολλές φορές ένας DBA ψάχνει να βρει πληροφορίες για το configuration ενός instance. Από όσο έχω δει μέχρι τώρα οι περισσότεροι καταφεύγουν στο γραφικό περιβάλλον ίσως από ευκολία ή μήπως επειδή δεν γνωρίζουν άλλον τρόπο;

20 Oct 2019

Useful Extended Events scenarios

Είναι γνωστό, εδώ και 7 χρόνια, ότι ο SQL Server Profiler είναι σε κατάσταση απόσυρσης και ότι ο διάδοχος τους είναι τα Extended Events. Με αυτά μπορούμε να κάνουμε πολλά πράγματα που μας βοηθούν στον εντοπισμό και την επίλυση προβλημάτων.

02 Apr 2018

Manage and Monitor SQL Server instances - Identify sessions that consume tempdb resources

Η tempdb είναι μια database την οποία μοιράζονται ΟΛΟΙ όσοι χρησιμοποιούν το instance στο οποίο αυτή υπάρχει. Στην tempdb αποθηκεύονται πολλά όπως user objects, internal objects, και version stores.

14 Sep 2015

Monitor Connection Pooling as SQL Server DBA

Το connection pooling είναι μια cache από database connections που σκοπό έχει αυτά που είναι ελεύθερα στην cache αυτή να μπορούν να επαναχρησιμοποιηθούν κάθε φορά που κάποιος ζητάει να κάνει connect στην database.Η χρησιμότητα του connection pooling είναι αρκετά σημαντική στην εκτέλεση διαδικασιών πάνω στην database από το application καθώς με αυτό τον τρόπο γίνεται αφενός γρηγορότερη επικοινωνία αφετέρου καταναλώνονται λιγότεροι πόροι.

20 Jul 2021

SQL Server Allocation Units

Συνεχίζοντας την "κατάδυση" μας στα SQL Server internals σε αυτό το άρθρο θα ασχοληθούμε με τα Allocation Units τα οποία μπορούμε να δούμε με την χρήση της DMV sys.allocation_units.

02 Mar 2017

Show Record fields in key/value format

Δεν είναι λίγες οι φορές που θέλεις να δεις τα δεδομένα μιας εγγραφής σε αντί σε μια γραμμή σε πολλές γραμμές (μία για κάθε field) και δύο στήλες (σε μια λογική key/value).

26 Jun 2016

Query for information about pages in buffer cache

Ένα query που μπορούμε να χρησιμοποιήσουμε για να μαζέψουμε χρήσιμες πληροφορίες για τα data pages που βρίσκονται στην buffer pool του SQL Server

16 Mar 2022

Exploring FETCH API CURSOR and sp_cursorfetch

Δεν είναι σπάνιες οι φορές όταν κάνουμε performance tuning investigation χρησιμοποιώντας διάφορα εργαλεία όπως Profiler, sp_whoisactive, dbcc inputbuffer να συναντάμε σαν query text είτε FETCH API CURSOR είτε exec sp_cursorfetch με κάποιες παραμέτρους. Φυσικά με αυτά δεν βγάζουμε άκρη. Για αυτό στο άρθρο αυτό θα σας εξηγήσω πως μπορείτε να βγάλετε άκρη και κυρίως να δείτε το πραγματικό query που εκτελείτε πίσω από αυτά.

26 May 2013

External and Internal Index Fragmentation

Αναμφίβολα όλοι γνωρίζουμε την αξία που έχουν οι indexes σε ένα πίνακα και την ευεργετική επίδραση τους στα queries που γίνονται σε αυτούς.Επίσης όλοι ξέρουν ότι το index fragmentation είναι ένας παράγοντας που έχει αρνητική επίδραση στην αξία των index όμως γνωρίζουν όλοι τι είναι internal και τι external fragmentation;

12 Apr 2019

The sys.dm_exec_query_stats DMV

Ένα από τα πράγματα που κάνω στην δουλειά μου είναι πηγαίνω σε πελάτες και να τους βοηθάω να λύσουν τα προβλήματα τους. Αυτό σημαίνει ότι έρχομαι αντιμέτωπος με instances που δεν γνωρίζω και πρέπει να μάθω για αυτά. Έτσι εκτελώ αρκετά scripts που έχω γράψει για να συλλέξω τις πληροφορίες που θέλω.

25 Oct 2015

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

Η δύναμη της συνήθειας είναι το μεγαλύτερο ναρκωτικό του μυαλού και δεν το αφήνει να σκεφτεί αποδοτικά. Αλήθεια πόσες φορές κάνουμε μηχανικά κάποια πράγματα επειδή τα έχουμε συνηθίσει στα τόσα χρόνια που κάνουμε αυτή την δουλειά ;

03 Jan 2020

Let's talk about CPU related wait types

Σε αυτό το άρθρο μου θα μιλήσω για τα ποιο σημαντικά wait types που αφορούν την CPU καθώς αυτή είναι αποτελεί ένα από τα βασικά στοιχεία που συντελούν στην απόδοση του SQL Server.

15 Feb 2018

Configuring and Mapping Connections to specific ports and processors to NUMA nodes

Είναι καθημερινή συζήτηση η ασφάλεια των δεδομένων και o διαμοιρασμός των resources στο περιβάλλον μας. Όλοι μας γνωρίζουμε και κάνουμε αρκετά για αυτά καθημερινά και πάντα ζητάμε το κάτι παραπάνω. Αυτό το κάτι παραπάνω δεν είναι ένα αλλά πολλά και ένα από τα πολλά είναι και αυτό που αναλύω στο άρθρο μου αυτό.Δεν είναι κάτι συνηθισμένο αλλά θεωρώ ότι θα αρέσει σε πολλούς. Είναι ένα άρθρο haute couture στον SQL Server.

14 Jun 2012

Using CONTEXT_INFO function–Another useful usage scenario

Αυτό που με εξιτάρει περισσότερο στην δουλειά μου και στην ενασχόληση μου με τον SQL Server είναι να βρίσκω λύση σε προβλήματα, αλλά και σε ποιον δεν αρέσει αυτό;

06 Jan 2020

Let's talk about Backup related wait types

Backup/Restore δύο τόσο συνηθισμένες εργασίες που όμως γίνονται τόσα λάθη σε αυτές που πολλές φορές έχουν τραγικά αποτελέσματα. Σε αυτό το άρθρο θα ασχοληθώ με τα wait types που αφορούν τις διαδικασίες αυτές και τα οποία θα βοηθήσουν, θεωρώ, στην κατανόηση τους.

16 Apr 2019

The sys.dm_server_registry DMV

Δεν είναι λίγες οι φορές που θέλουμε για ένα SQL Server instance να δούμε πληροφορίες που αφορούν τα services, network configuration, startup trace flags, version και πολλά ακόμα και καταφεύγουμε στον SQL Configuration Manager.

23 Dec 2018

How can you find which statement is currently running in a stored procedure?

Πόσες φορές έρχεστε αντιμέτωποι με μια stored procedure που δεν την έχετε γράψει, δεν ξέρετε τι κάνει, είναι τεράστια σε κώδικα, έχει αργή εκτέλεση και δημιουργεί προβλήματα και ψάχνετε την κύρια αιτία;

03 Nov 2020

Setting Cores in Virtual Machine for SQL Server Standard Edition

Από τα πράγματα που καλούμαι συχνά να κάνω στην δουλειά μου είναι να διενεργώ SQL Health Checks στους πελάτες με σκοπό να τους βοηθάω να βελτιώσουν την απόδοση του εντοπίζοντας τα σημεία αυτά που χρειάζονται βελτίωση.
Ένα SQL Health Check περιλαμβάνει αρκετούς ελέγχους και γίνεται σε κάθε instance ξεχωριστά. Αυτό που παρατήρησα στα τελευταία checks είναι κάτι που με οδήγησε στο να γράψω αυτό το άρθρο.

10 May 2017

Missing and Unused Indexes

Είναι γνωστό ότι οι indexes αποτελούν την κηροζίνη των queries. Στο SQL Server από το 2005 και μετά έχω στην διάθεση μου αρκετά εργαλεία τα οποία μπορώ να χρησιμοποιήσω και τα οποία μου προτείνουν την δημιουργία indexes με σκοπό την βελτίωση του performance.

10 Jul 2021

In which pages (data or index) are my table data stored?

Η γνώση των internals στο SQL Server όπως πολλές φορές έχω αναφέρει είναι σημαντική γιατί έτσι μπορείς να σχεδιάσεις καλύτερα το database schema, να γράψεις καλύτερα queries ή διαδικασίες και φυσικά να μπορείς να κάνεις καλύτερο troubleshooting. Σε αυτό το άρθρο θα κατέβουμε για τα καλά το πάτο του βαρελιού καθώς θα κατανοήσουμε το πως ο SQL Server αντιμετωπίζει αυτά που του ζητάμε.

10 Jan 2016

Dynamic Management Functions for referencing and referenced entities

Στον SQL Server υπάρχουν διάφορα dynamic management objects, από τα οποία μπορεί κανείς να πάρει πληροφορίες για την δομή της βάσης και τις εξαρτήσεις που υπάρχουν ανάμεσα στους διάφορους πίνακες. Παρόλα αυτά πολλές φορές χρειαζόμαστε να μάθουμε και εξαρτήσεις που αφορούν SQL expressions. Την πληροφορία αυτή μπορούμε να πάρουμε από δύο dynamic management functions, την sys.dm_sql_referenced_entities και την sys.dm_sql_referencing_entities, τις οποίες θα δούμε σε αυτό το post.

1 2 

|< < > >| 

Categories

Labels

0-9

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Σ

Become a member

If you want to receive updates from us become a member to our community.

Connect

Explore

Learn


sqlschool.gr © 2010-2024 All rights reserved

This site uses cookies for operational and analytics purposes only. By continuing to browse this site, you agree to their use.