Table des matières SQL Server 2014

Transcription

Table des matières SQL Server 2014
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
Table des matières
Avant-propos
1
Contenu de l’ouvrage
Guide de lecture
Première partie : manipulation d’une base
Deuxième partie : programmation
Troisième partie : gestion des bases de données
Quatrième partie : maintien des performances
Cinquième partie : administration du serveur
Annexes
Conventions typographiques
Contact et téléchargements
Les auteurs
Remerciements
1
2
2
2
3
3
3
3
3
4
4
6
Introduction
7
Position de SQL Server dans le monde des SGBDR
Et le libre ?
Des métriques
Un peu d’histoire
Offre du moment
Du serveur à l’utilisateur
Installation de SQL Server
Désinstallation de SQL Server
Premiers pas : création d’une base
7
10
12
12
13
14
15
19
19
PARTIE I :
Manipulation d’une base
21
CHAPITRE 1 :
Définition des données
Préambule
Base de données
 Création d’une base (CREATE DATABASE)
 Suppression d’une base (DROP DATABASE)
 Conventions recommandées
Tables relationnelles
 Création d’une table (CREATE TABLE)
23
23
24
24
25
26
26
26



Commentaires
Conventions recommandées
Premier exemple
Types des colonnes
 Chaînes de caractères
 Valeurs numériques exactes
 Valeurs numériques approximatives
 Dates et heures
 Chaînes de caractères Unicode
 Chaînes binaires
 Autres types de données
Identificateurs
Contraintes
 Conventions recommandées
 Structure d’une table
 Suppression des tables
Types personnalisés
 Sous-types
 Types table
 Visualisation des types
 Modification de types
 Suppression de types
Index
 B-tree
 Index cluster
 Création d’un index B-tree
 Visualisation des index
 Suppression d’un index
Tables en mémoire (In-Memory engine)
 Exécution d’une instruction
 Création d’une table en mémoire
 Limitations
Métadonnées de la base
27
27
27
27
28
28
29
29
30
30
31
31
32
33
35
35
37
38
38
39
39
40
40
41
42
43
45
46
46
46
47
48
49
CHAPITRE 2
Manipulation des données
Mise à jour des données
Insertion de lignes (INSERT)
 Syntaxe
 Ligne par ligne
 Marqueurs NULL et DEFAULT
 Plusieurs lignes à la fois
 Collations
 Non-respect des contraintes
 Dates et heures
 Chaînes de caractères Unicode
 Chaînes binaires
53
53
54
54
54
55
56
56
58
59
60
60
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
Auto-incrémentation
 Séquences
 Propriété IDENTITY
 Les GUID (ou UUID)
Modifications de données
 Syntaxe (UPDATE)
 Exemple
 Non-respect des contraintes
Suppressions de ligne
 Instruction DELETE
 Instruction TRUNCATE TABLE
Mises à jour conditionnées (MERGE)
La clause OUTPUT
Intégrité référentielle
 Cohérences assurées
 Contraintes de clés étrangères
Tables en mémoire (In-Memory tables)
61
61
64
67
70
70
71
71
72
72
. 73
74
75
76
77
78
83
CHAPITRE 3
Évolution d’un schéma
Modifier une base
 Changer la connexion à une base
 Lecture seule
 Renommer une base
 Modifier la collation d’une base
 Modifier le paramétrage de la base
Modifier les colonnes d’une table
 Ajout de colonnes
 Modifier le type des colonnes
 Colonnes calculées
 Supprimer des colonnes
 Les tables en mémoire
Renommer des objets
 Renommer une table ou une vue
 Renommer un index
 Renommer une colonne
 Renommer une contrainte
 Renommer un type personnalisé
 Les tables en mémoire
Modifier les contraintes d’une table
 Ajout de contraintes
 Suppression de contraintes
 Désactivation de contraintes
 Réactivation de contraintes
 Les contraintes en ligne
 Contraintes complexes
 Retrouver les caractéristiques
85
86
86
87
87
87
88
88
89
89
90
92
93
93
93
94
94
94
94
95
95
96
101
103
105
107
108
108
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014

Les tables en mémoire
108
CHAPITRE 4
Interrogation des données
Généralités
 Syntaxe (SELECT)
 Pseudo-table
Projection (éléments du SELECT)
 Extraction de toutes les colonnes
 Format des résultats
 Extraction de certaines colonnes
 Alias
 Doublons
 Expressions
 Ordonnancement
 Concaténation
 Insertion multiligne
 Création de tables
 Limitation du nombre de lignes
Restriction (WHERE)
 Opérateurs de comparaison
 Opérateurs logiques
 Opérateurs intégrés
 Alias
 Comparaisons à l’aide d’une collation
Fonctions scalaires
 Caractères
 Numériques
 Fonction pour les bits
 Fonctions diverses
Conversions
 La fonction CAST
 La fonction CONVERT
 Les nouvelles fonctions
 Les conversions implicites
Regroupements
 Fonctions simples d’agrégation
 Regroupements simples
 Regroupements complexes
 Pivots (PIVOT)
 Transpositions (UNPIVOT)
Fonctions de fenêtrage
 La clause OVER
 Les fonctions de rang
 Les fonctions analytiques
Opérateurs ensemblistes
 Intersection
109
109
110
111
111
112
112
113
113
114
115
115
116
116
117
118
120
120
121
121
122
123
124
124
127
128
129
131
131
132
134
134
136
137
138
140
143
144
145
146
146
148
151
152
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014






Opérateurs UNION et UNION ALL
Différence
Opérations ensemblistes et « valeurs » NULL
Ordonner les résultats
Ajouter des expressions
Produit cartésien
Jointures
 Types de jointures
 Les types d’écritures
 Équijointures
 Autojointure
 Inéquijointure
 Semi-jointure
 Jointures externes
 Intra-jointure
Sous-requêtes
 Jointures procédurales
 Sous-interrogation dans la clause FROM
 Sous-interrogations synchronisées (corrélation)
Division
 Classification
 Division inexacte (ou relative)
 Division exacte
153
154
155
155
156
156
157
158
158
159
160
161
162
162
165
166
166
169
169
171
172
173
173
CHAPITRE 5
Gestion des données complexes
Dates, heures et intervalles
 Le moment présent
 La date standard (ISO)
 Le format des dates
 Traiter des dates
 Gestion des heures
 Mises à jour des dates/heures
 Autres fonctions
Expressions communes de tables (CTE avec WITH)
 Utilisations non récursives
 Programmation de la récursivité
 Ordonner les descendants
 Parcours d’un graphe orienté
 Parcours d’un graphe non orienté
Structures arborescentes (type HierachyID)
 Création de la table
 Insertion de nœuds
 Visualisation de la hiérarchie
 Modification de l’arbre
 Parcours de l’arbre
177
177
177
178
179
182
188
189
190
191
192
192
193
194
196
196
197
197
199
200
200
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014


Indexation et contraintes
Bilan
Expressions régulières
 Projet Visual Studio
 Fonctions disponibles
 Contraintes
Les LOB
 Types de données
 Fonction d’accès
 Exemple
FILESTREAM
 Paramétrage
 Création de l’environnement
 Insertion d’un fichier
 Fonctions disponibles pour les applications clientes
FileTable
 Création de l’environnement
 Manipulation de fichiers
XML
 Le type XML
 Insertions de documents
 Mises à jour de contenu
 Les méthodes XQuery
 Extractions avec « query »
 Conversions avec « value »
 Tests avec « exist »
 Constructions avec « nodes »
 Indexation
 Les espaces de noms
 Grammaires XML Schema
 Génération de contenu XML
 Variables XML
 La fonction OPENXML
Indexation textuelle
 Le catalogue
 L’indexation
 Extractions par prédicats
 Extractions par fonctions table
 Création de listes de mots noirs
 Problématique du multilinguisme
 Indexation de documents électroniques et iFilters
 Recherches sur les métadonnées
 Recherches sémantiques
Données spatiales
 Le référentiel
 Données géométriques
 Données géographiques
201
202
202
203
204
205
205
206
206
207
208
208
208
209
209
210
210
210
212
212
213
214
215
215
216
216
217
218
219
221
222
227
229
230
231
231
232
235
236
236
236
237
238
239
239
239
242
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
CHAPITRE 6
Chargement en bloc, export et import de données
247
Intégration de fichiers avec BULK INSERT
247
 Syntaxe de la commande BULK INSERT
248
 Utilisation des fichiers de format pour l’import de données
252
L’utilitaire d’import/export en ligne de commande : bcp.exe
256
 Utilisation
256
 Générer des fichiers de format avec BCP
259
Les fonctions OPEN
260
 Interrogation d’un fichier Excel
261
 Utilisation de OPENROWSET en mode BULK
263
 OPENQUERY
266
Exporter avec l’assistant
268
SQL en ligne de commande avec SQLcmd.exe
272
 Importer des données via un lot de commandes INSERT
272
 Exporter une vue, une table ou les données d’une requête en format « listing »
Exporter des données au format INSERT (SQL)
274
274
PARTIE II
Programmation avancée
281
CHAPITRE 7
Programmation Transact-SQL
Généralités
 Fichiers de commandes
 Programmation modulaire
 Structure d’un bloc
 Commentaires
Variables
 Déclaration
 Initialisations et affectations
 Types des variables
 Variables système
 Paramétrage d’une session
Structures de contrôle
 Structures conditionnelles
 Structures répétitives
 Étiquettes et GOTO
Interactions avec la base
 Extraire des données
283
283
283
285
285
286
286
286
287
288
290
291
293
293
295
296
297
297
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014

Mise à jour des données
Routines
 Procédures stockées
 Appels de procédures
 Appel avec reformatage
 Fonctions utilisateur (UDF)
 Appel de fonction table
 Recompilation et suppression d’une routine
Objets temporaires
Curseurs
 Déclaration
 Parcours d’un curseur (séquentiel)
 Accès direct
 Accès concurrents (FOR UPDATE) et mise à jour (CURRENT OF)
 Comment s’en passer ?
Gestion des erreurs
 Erreurs prédéfinies
 Erreur utilisateur
 Création d’erreurs
 Propagation d’une erreur
Gestion des transactions
 Transaction : implicite ou explicite ?
 Début et fin d’une transaction
 Compteurs des transactions
 État transactionnel et transactions imbriquées
 Contrôle des transactions
 Gestion des anomalies transactionnelles
 Le problème du verrou mortel (deadlock)
 Verrouillage manuel
 Quel mode adopter ?
 Où placer les transactions ?
Les tables en mémoire (In-Memory tables)
 Niveaux d’isolation
 Programmation de transactions
 Ce qu’on ne peut pas faire
 Ce qu’on peut faire
Déclencheurs
 Mécanisme général
 Déclencheurs LMD
 Déclencheurs LDD
 Déclencheurs de connexion (LOGON)
 Gestion des déclencheurs
SQL dynamique
 Utilisation de EXECUTE
 Utilisation de sp_executesql
298
301
301
304
305
305
309
310
311
312
312
313
314
315
316
316
317
319
320
321
322
323
323
324
324
324
325
331
332
333
334
334
335
336
337
337
337
339
339
347
349
349
350
350
352
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
CHAPITRE 8
Les vues
Généralités
 Création d’une vue (CREATE VIEW)
 Classification
 Intérêt des vues
 Modification et suppression d’une vue
Vues modifiables
 Vues simples
 Vues complexes
 Vues paramétrées (fonction table)
 Déclencheurs pour les vues complexes
Vues indexées
 Prérequis
 Définition
 Réécriture de requêtes
 Exemple d’utilisation
Mise en œuvre de vues matérialisées
Vues partitionnées distribuées
353
353
354
355
358
363
363
364
365
365
366
366
367
368
369
370
372
376
CHAPITRE 9
Intégration avec NET et au-delà
379
Introduction à SQL CLR et aux assemblies NET
 Généralités
 Remplacer la procédure stockée étendue système xp_fixeddrives
 Création d’une fonction de table incluse d’assembly
 Création d’une fonction scalaire d’assembly : les nombres premiers
 Création d’un type d’assembly défini par l’utilisateur : les adresses e-mail
 Création d’un agrégat d’assemblies
 Les déclencheurs d’assembly
 Les vues de gestion des assemblies
 Suivi des performances
Connectivité des données
 Les fournisseurs d’accès aux données
 Accès aux bases de données
379
380
382
390
392
394
400
403
. 406
408
410
410
411
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
PARTIE III
Gestion des bases de données
427
CHAPITRE 10
Création des bases et stockage des données
Les bases de données système
 La base master
 La base invisible mssqlsystemresource
 La base model
 La base msdb
 La base tempdb
 Les autres bases système
Création d’une base de données
 Commande CREATE DATABASE
 Modification d’une base
 Détachement et rattachement d’une base
 Rétroscript de création d’une base de données
 Mise à jour et migration des bases de données
Structure physique des tables
Structure du stockage physique des données
 Structure d’une page
 Ligne dans une page
 Extensions
 Pages techniques
 Structuration des données dans les lignes
 Le journal des transactions
 Commandes DBCC
Organisation du stockage
 Le groupe de fichiers (filegroup)
 Les fichiers de stockage de données
 Les fichiers de transactions
 Architecture du stockage, fichiers et performances
 Stockage hors ligne des LOB (FILESTREAM, FILETABLE et RBS)
Bonnes pratiques pour un stockage performant
Migration des données
Partitionnement
 Principe
 Exemple de partitionnement sur hachage
Réduction de la taille des fichiers et vidage
Compression
 Compression décimale
 Compression de colonnes éparses
 Compression par ligne ou par page
Compaction des LOB
Compression des sauvegardes
429
430
431
432
433
433
433
434
435
436
437
441
442
442
446
446
447
448
452
453
455
458
468
471
471
473
479
480
493
504
505
506
507
507
513
514
517
517
518
519
519
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
Créer des clichés de base de données
 Principe
 Mise en œuvre
 Utilisation
519
519
520
521
CHAPITRE 11
Gestion de la sécurité
Correctif SQL Server et Service Pack
Compte de sécurité des services SQL Server
Compte de service de SQL Server
 Compte de service de l’Agent SQL
 Autres comptes de services
Bases de données d’une instance
 Bases de données système
 Bases de production
Schémas SQL
 Création des schémas SQL
 Modification des schémas
 Sécurité au niveau des schémas
 Schémas particuliers
Tour d’horizon de la sécurité des données
 Sécurité à deux niveaux
 Abus du terme utilisateur
 Autorisés et sécurisables
 L’octroi de privilèges et la révocation
 Chaînage des privilèges
 Sécurité des bases système
Comptes de connexion
 L’authentification
 Connexion à l’aide de comptes système
 Connexions SQL
 Propriétaire d’une base de données
Privilèges de niveau serveur
 Octroi de privilège sur les connexions et les points de terminaison
 Octroi de privilèges de serveur
 Arborescence des privilèges
Rôle de serveur
 Rôles de serveur prédéfinis
 Rôles de serveur utilisateur
Utilisateurs SQL
 Création des utilisateurs SQL
 Notion de propriétaire d’objet
Privilèges de niveau base de données
 Privilèges de niveau table ou vue
 Privilèges de niveau routine (procédure et fonction UDF)
 Privilégier les conteneurs
Rôles de base de données
523
523
524
525
525
525
525
526
528
530
531
531
532
532
532
533
535
535
536
537
537
538
539
539
540
541
541
542
543
543
544
544
545
546
546
547
548
548
550
550
554
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014




Rôles de base de données prédéfinis
Rôles utilisateur de base de données
Rôle public
Attribution des rôles de base de données aux utilisateurs SQL
Dépersonnalisation
 Dépersonnalisation d’une session
 Dépersonnalisation d’une routine
Métadonnées de la sécurité
 Fonctions scalaires
 Fonctions table
 Vues de métadonnées
Bonnes pratiques en matière de sécurité
Concepts du chiffrement
 Algorithmes
 Conséquences du chiffrement
 Que faut-il chiffrer ?
 Architecture de chiffrement de SQL Server
Chiffrement en pratique
 Clé d’instance (SERVICE MASTER KEY)
 Clé maîtresse de la base de données
 Crypter à l’aide d’une phrase de passe
 Créer un certificat
 Crypter à l’aide d’une clé
 Crypter à l’aide d’un certificat
 Signer et authentifier un objet
 Crypter avec un HSM
 TDE ou le cryptage du stockage
 Conclusion sur le chiffrement
 Métadonnées du cryptage
Masquer le code d’un module SQL
Utiliser une clé de hachage
554
554
555
555
556
556
558
560
560
561
561
562
563
563
564
566
566
567
568
568
569
571
572
576
576
581
582
584
584
585
585
CHAPITRE 12
Sauvegarde et restauration
Qu’est-ce qu’une sauvegarde ?
 Remarques préliminaires
 Différents types de sauvegardes
 Algorithme de la sauvegarde
 Bases de données multiples et sauvegarde
Journaux de transactions
 Fichiers du journal des transactions
 Journalisation des données
 Purge du journal des transactions
 Utilité du journal des transactions
Mode de sauvegarde
 Sauvegarde à froid par copie de fichiers
 Sauvegarde à froid par extraction des données et métadonnées (dump)
587
587
588
588
588
589
590
590
591
591
593
593
593
595
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014





Inconvénient des sauvegardes à froid
Sauvegarde complète de la base à chaud
Sauvegarde différentielle
Sauvegarde transactionnelle de la base à chaud
Sauvegarde partielle
Techniques avancées de sauvegarde
 Cryptage de la sauvegarde
 Sauvegarde vers un dispositif à bande
 Sauvegarde vers une URL Azure
 Empilement de sauvegardes dans un même fichier
 Répartition de la sauvegarde sur plusieurs fichiers
 Sauvegarde à destination multiple
 Options de performance
 Options de métadonnées
 Options de gestion des erreurs
 Option d’affichage de progression
 Options spécifiques aux sauvegardes du journal des transactions
 Sauvegarde hors plan (« fantôme »)
 Dispositifs de sauvegarde
 Vérification d’une sauvegarde
 Métadonnées des sauvegardes
Stratégie de sauvegarde
 Questions sur la restauration
 Le plan de sauvegarde
La restauration
 Cas pratique de restauration
 Commande RESTORE
Différents scénarios de restauration
 Avant de restaurer
 Emplacement des fichiers
 Comment restaurer ?
Techniques de restauration particulière pour les VLDB
 Restauration fragmentaire avec remontée partielle des données
 Restauration par rapiéçage
Problèmes complémentaires à la restauration
 Comptes de connexion
 Messages d’erreur personnalisés
 Travaux de l’Agent SQL
Sauvegarde et restaurations via l’interface graphique
 Sauvegarde via Management Studio
 Restaurations via Management Studio
596
596
597
597
597
600
600
601
601
602
603
604
604
605
606
606
606
607
607
608
615
616
616
617
617
618
619
621
622
623
624
632
632
632
633
634
634
634
635
635
638
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
PARTIE IV
Maintien des performances
641
CHAPITRE 13
Maintenir les performances
Fonctionnement de SQL Server
 Le cache de SQL Server
 Écritures et lectures physiques, système de stockage
 SQL Operating System (SOS)
Réglages au niveau du système d’exploitation
 Serveur dédié
 Machine virtuelle
 Version et édition de Windows
 Service Pack
 Turbo Boost
 Hyper-threading
 Mode de gestion de l’alimentation
 Instant File Initialization
 Lock Page in Memory
 Pagination de la mémoire virtuelle
 Windows Updates
 Arrêt du serveur
 Plusieurs instances sur un même serveur
Réglages au niveau serveur
 RAM allouée
 Extension de la zone de mémoire tampon (Buffer Pool Extension)
 CPU utilisés et parallélisme
 Autres réglages serveur
 Collation du serveur
Réglages au niveau base
 Une seule base ou plusieurs ?
 Collation de la base
 Gestion des statistiques
 Fermeture et réduction automatique
 Lecture seule
 Optimisation de corrélation des dates
 Persistance retardée
Les outils de gestion de la performance
 Les Data Management Views
 Les rapports
 Le profiler SQL
 Les événements étendus
 Le moniteur d’activité
 L’analyseur de performances
 L’Assistant paramétrage du moteur de base de données
 La collecte continue des données de performances
643
644
645
647
647
648
648
649
650
651
652
652
652
652
654
654
655
655
656
656
656
658
660
666
667
667
667
668
668
670
671
672
672
673
674
679
680
681
682
684
687
689
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014



Le diagnostic de placement "In Memory"
Le gouverneur de ressources
Encore plus d’outils…
697
699
700
CHAPITRE 14
Optimisation et statistiques
Comment fonctionne l’optimiseur ?
 Optimisation sémantique
 Optimisation statistique
Lire un plan de requête
 Plan de requête graphique
 Icônes représentant les opérations du plan d’exécution
 Principales opérations
 Métadonnées des plans de requêtes
Forcer l’optimiseur
 Les tags de plan de requête
 Les repères de plans
705
705
706
711
721
722
724
729
730
731
731
740
CHAPITRE 15
Les index
Principe et définition
Pointeur de renvoi d’index
 Index clustered
 Index non clustered
 Choix de la clé de l’index clustered
 Ce qu’il ne faut pas faire
Prédicat « cherchable » et utilité de l’index
Efficacité d’un index
 Gain d’utilisation
 Sélectivité
 Métriques d’exécution (SET STATISTICS …)
 Limites d’utilisation des index
Structure logique d’un index, ordre CREATE INDEX
 Index filtrés (clause WHERE)
 Index sur expression calculée
 Index couvrants (clause INCLUDE)
Options physiques de création d’un index
Que faut-il indexer ?
 Index des clés étrangères
 Colonnes faisant l’objet de recherches systématiques
 Index inclus et index redondants
 Estimation des index à créer
 Estimation des index à supprimer
Combien d’index ?
 Augmentation de la volumétrie
743
744
746
746
746
747
748
750
751
751
752
753
755
755
759
762
764
767
769
769
770
771
772
775
776
777
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
777
778
778
780
787
792
792
793
793
794
794
794
796
801




Allongement du temps des mises à jour
Diminution du temps des mises à jour et de la contention
Potentiel d’indexation pour une table
Tables obèses vs normalisation
L’index columnstore
Index « In Memory »
 Index non clustered avec hachage
 Index non clustered pour intervalle
 Détermination du nombre d’intervalles (buckets)
 Statistiques
Indexation des objets de type LOB
 Index XML
 Index spatial
 Indexation textuelle
CHAPITRE 16
Transactions et verrouillage
807
Verrous et blocages
 Granularité de l’information
 La notion de verrou
 Transaction
 Acidité des transactions
 Anomalies transactionnelles
Stratégies de verrouillage
 Verrouillage pessimiste
 Verrouillage optimiste
Isolation et évitement des anomalies transactionnelles
Caractéristiques des verrous
 Granularité
 Mode
 État
Cinématique de verrouillage
 Escalade de verrous
 Compatibilité des verrous
 Les attentes de verrou
 Le problème du verrou mortel
Pose manuelle de verrous
808
808
809
809
810
810
811
811
812
. 818
819
820
820
821
821
826
829
829
830
840
PARTIE V
Administration du serveur
843
La partie V, les annexes et l’index sont disponibles en ligne, sur la fiche de l’ouvrage sur
www.editions-eyrolles.com.
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
CHAPITRE 17
Maintenance courante
845
Vérification des données de la base
845
 Vérification physique
846
 Vérification logique de la base
854
 Réparations
855
 Fréquence de vérification des bases de données
859
Maintenance des index
860
 Fragmentation des index
860
 Défragmentation
866
 Facteur de remplissage
873
 Fréquence d’exécution de la maintenance des index
873
Recalcul des statistiques
874
 Commande UPDATE STATISTICS et ses dérivées
. 874
 Décider si le recalcul est nécessaire avec STATS_DATE()
876
 Optimiser le recalcul en estimant le taux de mise à jour
877
 Recalcul automatique et taux de mise à jour
879
 Fréquence de recalcul des statistiques
880
 Échantillon du calcul dans le cas de la mise à jour automatique des statistiques

880
Politiques d’administration
 Imposer une règle de nommage simple
 Interdire certains paramétrages de compte de connexion
 Conditions sur les fichiers
 Condition complexe avec requête SQL
 Stratégies vérifiées à la volée
 Utiliser des stratégies préétablies
Les déclencheurs DDL
 Déclencheurs de niveau base
 Déclencheurs de niveau serveur
 Déclencheur LOGON
Plans de maintenance
881
882
886
888
888
891
896
898
899
908
910
912
CHAPITRE 18
L’Agent SQL
921
Présentation de l’Agent SQL
 Lancement du service Agent SQL
 Composants de l’Agent SQL
Lancement de traitements au démarrage
 Lancement d’une procédure au démarrage de l’instance SQL Server
 Lancement d’une procédure au démarrage de l’Agent SQL Server
Paramétrage de l’Agent SQL
Paramétrage de l’envoi d’e-mails
 Configuration de la messagerie de base de données (database mail)
921
. 922
923
924
925
. 927
927
928
929
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014





Test de la messagerie de base de données
Modification des profils et des comptes SMTP
Suppression d’un profil
Configuration de database mail à l’aide d’un script
Envoi d’un e-mail
Composantes de l’Agent SQL
 Opérateurs de l’Agent SQL
Travaux de l’Agent SQL
 Catégories de travaux
 Création d’un travail
 Autres types de travaux et plans de maintenance
La planification
 Lancer un travail dès que les processeurs sont peu actifs
 Lancer un travail une seule fois
 Lancer un travail périodiquement
 Lancer un travail au démarrage de l’Agent
 Lancer un travail sans planification
Notification
Scripter un travail de l’Agent SQL
Alertes
 Alerte d’événement SQL
 Alerte de condition de performance SQL Server
 Alerte d’événement WMI
Sécurité de l’Agent SQL
 Privilèges pour envoyer des e-mails
 Privilèges pour utiliser l’Agent SQL et manipuler les travaux
 Privilèges pour créer les opérateurs, les alertes et les proxies
 Utilisation d’un proxy pour étendre les droits de l’Agent SQL
Gérer les travaux et l’Agent SQL
 Visualiser les travaux en cours
 Lire l’historique des travaux
 Connaître la santé de l’Agent SQL
933
934
935
935
935
936
937
941
941
942
951
954
954
955
. 955
956
956
956
957
959
959
964
966
966
966
966
968
968
969
969
970
970
CHAPITRE 19
Audit de performance
973
SQL Server Profiler et SQL Trace : les générateurs de profils
973
 Architecture de SQL Trace et SQL Server Profiler
974
 Utilisation de SQL Server Profiler
. 974
 Identifier les requêtes peu performantes
977
 Capture des verrous mortels (deadlocks) et trace côté serveur
982
 Les modèles de trace
989
 Quelques bonnes pratiques
992
 Corréler un fichier de trace SQL Trace avec un fichier de journal du moniteur de
performances
993
Les événements étendus
998
 Architecture logique des événements étendus
999
 Gestion des sessions d’événements étendus avec les vues et fonctions
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014





de gestion dynamique
Les options de session
Quelques exemples guidés
L’interface graphique permettant la gestion de sessions XE
Permissions requises pour la gestion de sessions XE
Le moniteur d’activité
 Démarrage du moniteur d’activité
 L’onglet Processus : les tâches utilisateur actives
 L’onglet Resource Waits
 L’onglet Data File I/O
 L’onglet Recent Expensive Queries
 Permissions requises pour l’utilisation du moniteur d’activité
 Quelques bonnes pratiques et astuces
1004
1008
1011
1023
1030
1030
1031
1031
1033
1033
1033
1034
1034
CHAPITRE 20
Audit des données et du paramétrage
1037
Les déclencheurs LDD
 Caractéristiques des déclencheurs LDD
 Création pas à pas d’un déclencheur LDD sur une base de données
 Création pas à pas d’un déclencheur LDD sur une instance
 Considération pour la mise en production de déclencheurs LDD
Les notifications d’événements
 Création pas à pas d’une notification d’événement
 Création d’une procédure stockée traitant la queue de notifications
 Auditer les changements de mots de passe
L’audit de sécurité
 Structure logique des audits de sécurité
 Octroi des privilèges de stratégie de sécurité
 Créer une spécification d’audit de serveur
 Créer une spécification d’audit de base de données
 Comportement des audit avec les transactions
 Permissions requises pour la gestion des audits de sécurité
 Vues et fonctions de gestion des audits de sécurité
 Exemple d’utilisation
L’audit des changements de données
 Le suivi des modifications
 Le suivi des changements de données
 Comparaison du suivi des modifications et du suivi
 des changements de données
Gestion des bases de données par les stratégies
 Définir des stratégies
 Évaluer une stratégie
 Importer et exporter des stratégies
1037
. 1038
. 1038
1040
1042
1042
1043
. 1045
1048
1050
1050
1055
1056
1058
1061
1061
1061
1062
1067
1068
1073
1083
1084
1084
1088
1097
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014
CHAPITRE 21
SQL Server et haute disponibilité
1099
Haute disponibilité
 RPO, RTO et PRA
 Les cinq neuf (99,999)
Options disponibles avec SQL Server
 Composants hardware et redondance
 Virtualisation : une nouvelle voie à la haute disponibilité
 Solutions natives SQL Server
Choisir une solution adaptée à ses besoins
1099
1100
1100
. 1101
1101
1103
1103
1160
ANNEXE A
Références complémentaires
1163
Sites spécialisés sur SQL Server
 En anglais
 En français
Blogs sur SQL Server
 En anglais
 En français
Sites généralistes avec une rubrique dédiée à SQL Server
 En anglais
 En français
Sites généralistes sur les bases de données
 En anglais
Sources Microsoft
Éditeurs
 Livres
 Presse en ligne
 Logiciels
1163
1163
1164
1164
1164
1164
. 1165
1165
1165
1165
1165
1165
1166
1166
1166
1166
ANNEXE B
Glossaire
1167
Index
1187
Livre SQL Server 2014 - F. Brouard, C. Soutou, N. Souquet, D. Barbarin - Eyrolles 2014