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

About this blog

News about Microsoft SQL Server and other databases...

Entries in this blog

Το 1ο CTP για το “Madison” Project ανακοίνωσε η Microsoft.

Το Madison είναι ένας highly scalable data warehouse προσαρμογέας ο οποίος προσφέρει high performance σε χαμηλό κόστος μέσω μιας Massively Parallel Processing (MPP) αρχιτεκτονικής για τον SQL Server. Σε σχέση με τον ανταγωνισμό το Madison προσφέρει “hardware flexibility with configurations from the major hardware vendors and low cost through industry standard hardware”, όπως χαρακτηριστικά λεει η ανακοίνωση. Με αυτό το project η Microsoft μεγαλώνει το μέγεθος των data warehouses από τα περί

antonch

antonch

Πως προφέρεται ο SQL Server;

Αρκετοί με ρωτούν όταν μέσα στα μαθήματα που κάνω όταν λέω SQL Server τον προφέρω "sequel server", ενώ όταν αναφέρομαι στην γλώσσα Transact SQL λέω "transact ess kyoo ell". Θα σας δώσω λοιπόν την εξήγηση, την οποία εχω υιοθετήσει. Την έχω διαβάσει σε αρκετά sites και βιβλία, αλλά έχω ρωτήσει και αρκετά άτομα από το SQL Server Development Team της Microsoft στο τελευταίο μου ταξίδι στο Microsoft Campus στο Redmond πέρσι. Υπάρχουν δύο βασικοί λόγοι. Ο ένας είναι ιστορικός και ο άλλος γλωσσολο

antonch

antonch

Πώς να καταγράφω τα events μιας database του SQL Server 2005 στο Windows Event Log

Σήμερα το πρωί σε μια συνάντηση που είχαμε όλοι οι Έλληνες MCTs ένας συνάδελφος μου έκανε μια ερώτηση. “Θέλω να καταγράφω τα events που γίνονται σε μια βάση στο Windows Event Log γιατί θέλω να τα βλέπω από το MOM;” Η απάντηση σε αυτό είναι η παρακάτω, όμως θα πρέπει να επισημάνω ότι είναι για SQL Server 2005 μιας και στον SQL Server 2008 δεν υπάρχει η ανάγκη να κάνουμε κάτι τέτοιο μιας και υπάρχει build-in δυνατότητα την οποία υπόσχομαι να παρουσιάσω σε ένα άλλο μου post. Η προσέγγιση θα μ

antonch

antonch

Πως να επαναφέρω μια suspect database

Σήμερα δεν ξημέρωσε καλά για κάποιον συνάδελφο. Δυστυχώς για αυτόν είχε να αντιμέτωπίσει ένα σοβαρό θέμα μιας και η βάση του ERP του ήταν suspect. Πραγματικά είχα καιρό να ακούσω για κάτι τέτοιο και τις περισσότερες φορές αιτία είναι hard disk failures. Όπως και να έχει όμως υπάρχει τρόπος να την φέρεις ξανά πίσω με την παραδοχή ότι θα έχεις πιθανότατα κάποιες απώλειες δεδομένων. Βέβαια η καλύτερη λύση σε αυτές τις περιπτώσεις είναι να κάνεις restore το backup σου που θα σου εξασφαλίσ

antonch

antonch

Πώς να “σκοτώσω” τα ανενεργά connections στον SQL Server

Αφορμή για αυτό το post είναι ο Blackman. Σε μια ωραία συζήτηση που είχαμε μου εξέφρασε την επιθυμία για αυτό επειδή μια εφαρμογή που έχει του αφήνει ανοικτά sessions. Σε αυτό το σημείο θα πρέπει να αναφέρω ότι κάτι τέτοιο μπορεί να συμβεί είτε διότι η εφαρμογή δεν έχει γραφτεί σωστά, είτε έπειδή ο σταθμός εργασίας που έχει ανοίξει το session σταμάτησε να λειτουργεί είτε η εφαρμογή σταμάτησε απότομα. Ο SQL Server βέβαια έχει τους μηχανισμούς για να τα “σκοτώνει” αυτόματα αλλά απαιτείται να π

antonch

antonch

Πως μπορώ να μετρήσω το μέγεθος των δεδομένων που έχω μέσα σε ένα blob field?

Σημέρα ένας αγαπητός συνάδελφος έρχεται στο γραφείο μου και μου κάνει την εξής ερώτηση: «Υπάρχει κανένας τρόπος με τον οποίο μπορώ να δω το μέγεθος των πραγματικών δεδομένων που έχουν αποθηκευτεί στην βάση μου σε ένα πεδίο τύπου image;» Σίγουρα η πρώτη σκέψη όλων μας θα πάει στην LEN(), αλλά αυτή όμως δεν παίζει με πεδία τύπου image, text, ntext. Αντί για αυτή μπορούμε να χρησιμοποιήσουμε την DATALENGTH() η οποία επιστρέφει το μέγεθος σε bytes και η οποία φυσικά μπορεί να

antonch

antonch

Πώς θα βρω τα queries που κάνουν υψηλή χρήση της CPU;

Λοιπόν μιας και απέκτησα και εδω ένα blog είπα να κάνω σεφτέ με κάτι που λίγο ή πολύ όσοι ασχολούμαστε με SQL Server αντιμετωπίζουμε. Πως θα βρω τα queries που κάνουν υψηλή χρήση της CPU; H απάντηση στο ερώτημα αυτό είναι η παρακάτω custom stored procedure η οποία δουλεύει σε SQL Server 2005 & 2008   create procedure spFindQueriesThatUseHighCPU as Set NOCOUNT ON SELECT TOP 100 (a.total_worker_time/a.execution_count) as [Avg_CPU_Time], -- the ti

antonch

antonch

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

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

antonch

antonch

Προτεινόμενο Pagefile size στον SQL Server

Όλοι ξέρουμε το pagefile του λειτουργικού και την χρηστικότητα του. Όμως ποιό είναι το ιδανικό μέγεθος του σε ένα server που έχει εγκατεστημένο SQL Server; Πρέπει το Pagefile να είναι 1,5 φορές μεγαλύτερο από την φυσική μνήμη του server. Εάν έχω ή πρόκειτε να χρησιμοποιήσω full-text search τότε πρέπει να είναι τουλάχιστον τρεις φορές μεγαλύτερο από την φυσική μνήμη του server. Για ακόμα καλύτερα αποτελέσματα καλό θα είναι το pagefile να είναι σε ξεχωριστό φυσικό από αυτό του λειτουργικο

antonch

antonch

Πρόβλημα εγκατάστασης SQL Server 2005 ή 2008 σε Windows XP Pro Ελληνικά με ενσωματωμένο SP3

Πρόσφατα με έναν συνεργάτη μου που είναι dealer μια ελληνικής εταιρίας που έχει ERP αντιμετωπίσαμε το παρακάτω πρόβλημα όταν πήγαμε να εγκαταστήσουμε τον SQL Server 2005 Standard Edition σε pc που είχε εγκατεστημένο Window XP Pro Ελληνικό. Σε συνεργασία μαζί του (ευχαριστώ Δημήτρη) σας παρουσιάζουμε την λύση. Κατά την στιγμή της εγκατάστασης του SQL Server 2005 ή 2008 παίρνουμε το παρακάτω μήνυμα λάθους στο σημείο που πάει να ενημερώσει τον MSXML Parser. The Windows Installer service

antonch

antonch

Παρουσίαση του Resource Governor στον SQL Server 2008.

Μέσα σε έναν οργανισμό θα συναντήσουμε πολλές batabase οι οποίες περιέχουν business-critical data. Πάνω από αυτές θα βρούμε applications τα οποία διαχειρίζονται τα δεδομένα αυτά. Καθώς ο όγκος των δεδομένων γεωμετρικά αυξάνετε, αλλά και ο αριθμός των χρηστών που ζητούν πρόσβαση σε αυτά μεγαλώνει, είναι κατανοητό σε όλους ότι η διαθεσιμότητα των δεδομένων πρέπει να είναι αδιάλειπτη, όπως επίσης και η ταχύτητα απόκρισης στα ερώτημα και στα transactions των χρηστών πρέπει να είναι μεγάλη και σταθερ

antonch

antonch

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

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

antonch

antonch

Οι Top SQL Ομιλητές παρουσιάζουν… SQL Server – για 24 ώρες στον υπολογιστή σας… σε λίγες ώρες!

Δύο μέρες ΔΩΡΕΑΝ SQL Server Training Σήμερα ξεκινάμε το διήμερο free SQL Server training με 24ώρα live webcasts όπου θα δείτε στιγμιότυπα από το PASS Summit 2011. Με την υποστήριξη της Dell, το μέρος αυτό του 24 Hours of PASS θα σας παρουσιάσει τα σημαντικότερα νέα του SQL Server κατευθείαν στον υπολογιστή σας σε δύο 12ωρα, 7-8 Σεπτ., όπου κάθε 12ωρο ξεκινά στις 15:00 ώρα Ελλάδας. Εγγραφείτε εδώ για να παρακολουθήσετε τα αγαπημένα σας θέματα! Δείτε τι λένε γνωστοί ομιλητές για το 24 Hours

antonch

antonch

Ο θαυμαστός κόσμος του Transaction Log

Σήμερα λέω να κάνω κάτι που ίσως να σας αλλάξει πολλά στον τρόπο με τον οποίο αντιμετωπίζετε το transaction log. Είμαι σίγουρος ότι οι περισσότεροι έχετε το πρόβλημα το transaction log να μεγαλώνει ανεξέλεγκτα και να φωνάζετε βοήθεια. Να διαμαρτύρεστε που η Microsoft κατάργησε την TRUNCATE_ONLY. Αλλά είπα ήδη πολλά, δείτε το video και θα εξηγηθούν πολλά. Αυτά και ελπίζω να σας άρεσε. Υ.Γ Αυτό ήταν ένα video το οποίο πραγματικά γούσταρα που το έκανα για αυτό και τρόπος με τον οποίο

antonch

antonch

ΝΑΙ ή ΟΧΙ ,τελικά ΙΣΩΣ

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

antonch

antonch

Μια μικρή βουτία στα άδυτα της αρχιτεκτονικής μιας βάσης

Ίσως όσα θα αναφερθούν παρακάτω να είναι γνωστά, και το post αυτό να μην είναι ενδιαφέρον. Όμως έχω την υποχρέωση να τα αναφέρω ξανά γιατί θεωρώ ότι είναι πράγματα στα οποία δεν δίνουμε ιδιαίτερη σημασία και τα οποία όταν διογκώνονται είναι δύσκολα στην επίλυση τους. Θα μιλήσουμε εδώ γιa την αρχιτεκτονική μιας database στον SQL Server, από τι αποτελείτε μια database, πιο είναι το ιδανικό αρχικό μέγεθος δημιουργίας της, τι πολιτική να ορίσω για το growth της. Μια database στον SQL Server αποτ

antonch

antonch

Μια μέρα στην Σαλαμάνδρα

Σήμερα θα σας πω μια ιστορία που εξελίσσετε στη μαγική πόλη Σαλαμάνδρα. Στην μικρή αυτή πόλη υπάρχει μια επιχείρηση που έχει δύο servers εκ των οποίων ο ένας είναι και SQL Server. Στον SQL server τρέχουν διάφορα προγράμματα της εταιρείας Πέντε Κιλά Κώδικα (ανταγωνιστής της γνωστής ΤΚΚ) και ο χρήστης μπαίνει συχνά στον server μέσω remote desktop να κάνει διάφορες εργασίες. Επίσης ο τεχνικός του επιχειρηματία, ο Μπάμπης, έχει ανοίξει πρόσβαση μέσω remote desktop και στην ΠΚΚ στην default πόρτα, χω

antonch

antonch

Μια εικόνα χίλιες λέξεις

Ένας συνάδελφος MVP του SQL Server, που έχει ένα σύστημα σε SQL Server, που ψήνει καφέ, χταπόδια, μουσακά και άλλα ευγενή εδέσματα, μας έστειλε με υπερηφάνια το νέο του παιχνίδι. Ζ Η Λ Ε Ψ Τ Ε

antonch

antonch

Μήπως έχετε ξεχάσει κάποια database να την πάρετε backup;

Είστε σίγουροι ότι έχετε πάρει έστω και μια φορά όλες τις databases σας backup; Ειδικά εσείς αγαπητοί συνάδελφοι που έχετε πολλές databases είστε σίγουροι; Η απάντηση στο ερώτημα αυτό είναι η παρακάτω stored procedure η οποία θα σας επιστρέψει αμέσως όλες τις database που έχετε ξεχάσει να πάρετε backup.   create proc dbo.spUnbackupedDbs @backup_type char(1)='D', @time_span_days int=5 as -- Created by Antonios Chatzipavlis -- -- This stored procedure returns all database

antonch

antonch

Μεγάλο Transaction Log; Έλα να το μειώσουμε μέσω τηλεφώνου

Αν και το θέμα το έχουμε ξανασυζητήσει και αναλύσει στο παρελθόν εντούτοις πάντα είναι επίκαιρο και πάντα έχει παραλλαγές. Σήμερα ήρθα αντιμέτωπος με μία τέτοια παραλλαγή. Φίλος και συνεργάτης την ώρα που ήμουν στο δρόμο για το γραφείο ( 7:00 πμ ) με παίρνει στον τηλέφωνο και μου λέει. «Έχω μια βάση που τα 250ΜΒ είναι το data file και τα 93GB το log. Είναι από το ERP ενός πελάτη μου το οποίο θέλω να πάρω backup και να το δώσω στην εταιρεία ώστε να κάνουν κάποιους ελέγχους σε ένα θέμα

antonch

antonch

Λίγα λόγια για την TempDb στο SQL Server 2005

Όπως όλοι γνωρίζουμε μια από τις system databases του SQL Server είναι η tempdb. Λίγοι είναι όμως γνωρίζουν το ρόλο αλλά και την σημασία της database αυτής. Και για να γίνω εξ’ αρχής αντιληπτός ο ρόλος της είναι σημαντικός, ζωτικός θα έλεγα για το performance του SQL Server. Ειδικά στον SQL Server 2005 γίνεται «τρελή χρήση» της βάσης αυτής. Πολλά παλιά αλλά και νέα χαρακτηριστικά που μας έχει δώσει ο SQL Server 2005 χρησιμοποιούν την tempdb όπως: Query Triggers Snapshot isola

antonch

antonch

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

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

antonch

antonch

ΚΑΛΟ ΚΑΛΟΚΑΙΡΙ from SQL Saturday Nights

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

antonch

antonch

Κάθε πότε γίνεται η διαδικασία CHECKPOINT? (UPDATED)

Όπως είναι γνωρίζουμε στον SQL Server υπάρχει μια διαδικασία η οποία σκοπό έχει να μεταφέρει από την Buffer Cache τις αλλαγμένες σελίδες στο δίσκο, γίνεται σε όλες τις βάσεις εκτός από την tempdb (αν και αυτό δεν είναι και τόσο αλήθεια αλλά δεν θα το αναλύσουμε εδώ). Σκοπός του είναι να είναι όσο το δυνατό πιο ενημερωμένα τα data files με τις αλλαγές είναι γραμμένες στο log. Αυτό μπορεί να γίνει είτε εκτελώντας την εντολή CHECKPOINT είτε το κάνει o SQL Server αυτόματα. Το αυτόματο μπορεί να ορ

antonch

antonch

×
×
  • Create New...