Post on 25-Feb-2018
7/25/2019 Support Cours SQL Server 2012
1/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 1
Administration
SQL Server 2012
7/25/2019 Support Cours SQL Server 2012
2/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 2
Connaissances pralables
Pour comprendre et maitriser les techniques et concepts abords dans ce cours il faut avoir
une base en informatique et certaines connaissances numres ci-dessous :
Connaissances de base du systme dexploitation Windows Exprience pratique de Transact-SQL
Exprience pratique des bases de donnes relationnelles
Exprience en matire de conception de bases de donnes
Connaissance et exprience pratique du langage VB,NET
7/25/2019 Support Cours SQL Server 2012
3/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 3
Objectif :
Installer et configurer SQL Server 2012;
grer des fichiers de base de donnes;
sauvegarder et restaurer des bases de donnes;
grer la scurit; analyser et comprendre SQL Server 2012;
transfrer les donnes dans et partir de SQL Server 2012;
automatiser des tches dadministration;
comprendre et optimiser larchitecture de SQL Server;
rpliquer des donnes entre instances SQL Server 2012.
lecture dune base de donnes SQL server 2012 en VB.NET
7/25/2019 Support Cours SQL Server 2012
4/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 4
Chapitre I : Prsentation de SQL Server 2012
Lobjectif du chapitre est :
Comprendre le fonctionnement de SQL Server ;
Prsenter les diffrents composants de SQL Server ; Prsenter larchitecture globale de SQL Server
Comprendre larchitecture dune base de donnes
1.1 - Fonctionnement de SQL Server
Les types de serveur
OLDP (OnLine Transactional Processing)
Serveur transactionnel : Un serveur sous lequel un certain nombre de
transactions de type LMD (Langage de Manipulation de donnes) vont sexcutes.
Un serveur qui va supporter beaucoup de petites transactions qui manipuleront un
petit volume de donnes.
OLAP (OnLine Analytical Processing)
Serveur dcisionnel ou Data Warehouse : cest un entrept de donnes. Un
serveur qui servira en stocker lensemble des donnes consolides. Les donnes qui
proviennent des diffrentes sources (BD Oracle, SQL Server, MySQL ). Un
serveur OLAP va donc manipuler de gros volumes de donnes en utilisant de
grosses requtes gnrant une charge importante.
Ainsi donc avant toute installation il faut connaitre le rle du serveur pour faire lebon choix du type de serveur installer.
7/25/2019 Support Cours SQL Server 2012
5/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 5
1.2 - Les composants de SQL Server
Le moteur de donnes est compos de plusieurs logiciels.
La plus part sexcutent sous forme de services;
Certains possdent des interfaces graphiques
Dautres sont accessibles via une ligne de commande
Les principaux composants sont :
SQL Server Instance SQL :
Cest le serveur de base de donnes (le moteur). Cest le principal composant
Il est impossible davoir une instance SQL server sans que le moteur de base de donnes ne
soit install.
Sexcute en tant que service Windows ;
Elle est rfrence sous le nom MSSQLSERVERpour une instance par
dfaut (instance dans laquelle on choisit le nom par dfaut).
Elle sera MSSQLSERVER$nomInstance dans le cas dune instance
nomme (une instance pour laquelle on choisit de donner un nom
diffrent du nom par dfaut).
Il faut savoir quil est possible dinstaller plusieurs instances sur un mme serveur.
Cependant il impossible davoir sur un mme serveur deux instances de mme nom.
7/25/2019 Support Cours SQL Server 2012
6/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 6
SQL Agent :
En gnral chaque instance son propre moteur de base de donnes et
possde son propre SQL Agent.
Il gre lexcution de tches planifies, la surveillance de SQL Server et
le suivi des alertes
Il sexcute en tant que service Windows
Il est directement li une instance SQL Server
Il est rfrenc dans le gestionnaire de service sous le nom SQL Server
Agent(MSSQLSERVER)pour une instance par dfaut et SQL Server
Agent(nomInstance) dans le cas dune instance nomme.
Microsoft Full Text Search :
Cest un composant utilis pour effectuer des recherches de documents de
type texte. Gre lindexation des documents de type texte
Gre les recherches par rapport aux mots
SQL Server Intgration Services (SSIS) :
Outil dimportation et dexportation de donnes
Intgre des assistants pour crer un ETL (extraction, transformation et
chargement)
Termes connaitre
Les packages = units de travail
Les conteneurs qui fournissent la structure des packages
SQL Server Analysis Services (SSAS) :
Outil danalyse OLAP et Data mining de Microsoft
Permet de construire des cubes OLAP
Idal pour des projets dcisionnels
SQL Server Reporting Services (SSRS) :
Crer des rapports pour diffrents sources de donnes Crer des rapports de types interactifs, tabulaires, graphiques ou libres
partir de source de donnes XML relationnelles et multidimensionnelles
La replication des donnes :
Permet de positionner les donnes au plus prs des utilisateurs et de
rduire les temps de traitement. (Avoir un serveur central et des serveurs
secondaires)
7/25/2019 Support Cours SQL Server 2012
7/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 7
Service Broker :
Permet un travail en mode asynchrone pour faciliter la gestion des pics
de forte activit en stockant les demandes de travail avant de les traiter
CLR :
Lintgration du CLR dans SQL Server permet de dvelopper des
procdures et fonctions en utilisant les langages VB.Net et C#
1.3 - Larchitecture globale de SQL Server et les outils
Larchitecture de SQL Server :
Une installation de SQL Serveur contient au minimum une instance par dfaut.
Instance par dfautElle est identifie par le nom rseau de lordinateur sur lequel elle sexcute.
Instance nommeElle est identifie par le nom rseau de lordinateur sur lequel elle sexcute
suivi dun nom dinstance.
7/25/2019 Support Cours SQL Server 2012
8/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 8
Les outils de SQL Server :
Les clients de SQL ServerLes composants qui permettent dattaquer un serveur de base de donnes SQL
Server.
SQL Server Management StudioPermet de raliser toutes les oprations au niveau du serveur de base de
donnes.
Gestionnaire de configuration SQL ServerPour grer les services lis SQL Server.
SQL Server ProfilerPour suivre et analyser la charge de travail dune instance SQL Server.
Assistant paramtrage du moteur de base de donnesPermet une optimisation du fonctionnement du serveur de base de donnes.
sqlcmd
Cest un outil quun DBA doit imprativement connaitre.
Outil de ligne de commande
Excuter des requtes approuves
Excuter des scripts de commandes
Etablir une connexion dadministration ddie (DAC)
1.4 - Larchitecture dune base de donnes
Base de donnes SQL Server :
Une base de donnes permet de stocker des objets logiques.
Les donnes : tables, indexes, types de donnes, contraintes dintgrit,
valeurs par dfaut, rgles.
Accs aux donnes : vues, procdures et fonctions
Gestion de lintgrit complexe : dclencheur
7/25/2019 Support Cours SQL Server 2012
9/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 9
Chaque base de donnes systme est
MasterCest la base mtre elle est le dictionnaire des donnes. Elle contient une
rfrence de lensemble des objets cres.
MSDB
Elle va stocker lensemble des tches planifies.
7/25/2019 Support Cours SQL Server 2012
10/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 10
ModelElle va permettre de dfinir le model de cration dune base de donnes.
Chaque base de donnes cre va sappuyer sur la structure de la base model.
La base de donnes cre est une copie de la base model. Une modification
apporte la base Model va impacter lensemble des bases.
TempdbElle va servir pour toutes les oprations de type temporaire.
RessourceElle permet de stocker les volutions apportes aux diffrentes versions de SQL
Server 2012 pour faciliter les migrations.
Les tables systmes:
Les bases de donnes masters contiennent des tables systmes
Utilises directement par le moteur de SQL Serveur.
Dconseill daccder directement ces tables
Quelques tables systmes :
sys.server_principals: Liste des connexions dfinies sur le serveur
sys.sysmessages: Une ligne pour chaque message ou avertissement
sys.sysdatabases: Une ligne pour chaque base de donnes
sys.sysusers: Une ligne pour chaque utilisateur dfini au niveau de la
base de donnes courante
Les procdures stockes systme :
Interroger les tables systme.
Connatre ltat du serveur, de la base
Effectuer des oprations de configuration
Quelques procdures stockes systmes:
sp_helpsp_help[nom_objet]: Information sur lobjet indiqu. sp_helpdbsp_helpdb[nom_base_donnes]: Information sur la base de
donnes indique. sp_whosp_who: Liste des utilisateurs actuellement connects
Le catalogue:
Contient des vues systmes
Toutes ces vues sont prsente dans un schma sys.
Regroupes par thmes
Objets, types et index
Serveurs lies
CLR
Service Broker
7/25/2019 Support Cours SQL Server 2012
11/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 11
Les fonctions systmes:
Utilisable avec des commandes Transact SQL
Quelques procdures stockes systmes:
DB_ID: Retrouve lidentification de la base de donnes.
USER_NAMEUSER_NAME : Retrouve le nom de lutilisateur partir
de son identifiant.
Schma dinformation:
Ensemble de vues
Ne fait pas directement rfrence aux tables systme
7/25/2019 Support Cours SQL Server 2012
12/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 12
Chapitre II : Installation et configuration de SQL Serveur 2012
Lobjectif du chapitre :
Comprendre les tapes du processus dinstallation de SQL Server 2012
Prparer linstallation avec loutil de configuration systme Ralisation dune installation manuelle et dune installation automatise
Vrifier et valider une instance
2.1 - Prparation de linstallation
Les tapes du processus dinstallation de SQL Server 2012
Analyse de la configuration systme
7/25/2019 Support Cours SQL Server 2012
13/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 13
2.2 - Ralisation dune Installation manuelle de SQL Server 2012
TP pratique dune installation manuelle de SQL Server 2012.
Etape 1 : Lancement du programme dinstallation
Etape 2 : Centre dinstallation de SQL Server 2012
7/25/2019 Support Cours SQL Server 2012
14/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 14
Le Menu de gauche du centre dinstallation nous donne les diffrentes actions que nous
pouvons effectues.
La planification :
Qui contient un certain nombre doutils. Celui qui nousintresse ici est loutil danalyse de configuration systme.
Cet outil nous permet de vrifier que notre systme est prs
pour linstallation.
Linstallation :
Le Menu Installation nous prsente quatre outils. Nous allons lancer loutil :
Nouvelle installation autonome de SQL Server ou ajout de fonctionnalits une
installation existante .
7/25/2019 Support Cours SQL Server 2012
15/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 15
Aprs une autre vrification des composants ncessaires pour linstallation, le programme
dinstallation va installer les fichiers dinstallation.
Aprs lajout de la cl dinstallation et lacceptation du contrat de contrat de licence nous
avons une tape importante qui est le Rle de linstallation . Nous avons 3 ou 2 options.
Nous choisissons celle qui nous permet de choisir et installer les fonctionnalits de SQLServer ncessaires pour grer notre serveur.
7/25/2019 Support Cours SQL Server 2012
16/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 16
Ensuite nous devons slectionner les fonctionnalits installer.
7/25/2019 Support Cours SQL Server 2012
17/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 17
Choix du mode dauthentification
7/25/2019 Support Cours SQL Server 2012
18/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 18
Fin de linstallation
7/25/2019 Support Cours SQL Server 2012
19/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 19
2.3 - Ralisation dune Installation automatiquede SQL Server 2012
Mise en uvre.
Cration dun fichier de configuration .ini
Dmarrage de linstallation automatise
setup.exe /CONFIGURATIONFILE=chemin daccs du fichier.ini
2.4 - SQL Server Management Studio (SSMS)
Cest loutil principal de gestion et dadministration. Il utilis par les administrateurs et
les dveloppeurs.
Un requteur avanc
Permet une gestion graphique des instances et des objets
Permet une gestion centralise des instances distantes
Intgre la compltion
2.5 - SQLCMD
Cest un outil incontournable dans ladministration de SQL Server. Un outil de gestion
et dadministration en mode ligne de commande.
Permet lexcution de requtes et des scripts
Etablir une connexion dadministration ddie (DAC)
2.6 - Configuration de SQL Server 2012
Il est question ici de voir les diffrents moyens de configuration de SQL Server 2012.
Les lments de configurations sont les services (Les Moteurs, les composants slectionns
lors de linstallation).
Les tats
Dmarr
Suspendu
Arrt
Via Gestionnaire de configuration SQL Server
Gestionnaire de service Windows
Utilisation de loutil SSMS (SQL Server Management Studio)
Inscrire un serveur
Grer la configuration dun serveur (Mot de passe de ladministrateur,
Gestion des ressources)
7/25/2019 Support Cours SQL Server 2012
20/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 20
Chapitre III : Les bases de donnes SQL Server 2012
3.1 - Architecture globale de SQL Server
Une base de donnes contient deux types de fichiers :
Fichiers de donnes
Fichier primaire de donnes (obligatoire, extension .mdf)
(Contient le catalogue de la base de donnes)
Fichier secondaire de donnes (facultatif, extension .ndf)
(Contient les objets et les donnes utilisateurs)
Fichiers journaux (au moins 1, extension .ldf)
Enregistre toute les modifications de la base de donnes
Fonctionnement des fichiers journaux :
Les fichiers de donnes :
Rattach une seule base de donnes
Structur en pages de 8k Les pages contiennent les enregistrements
Unit dchange entre le cache de donnes et les fichiers de donnes
La taille maximale dune ligne est de 8060 octets (hors type texte et
image)
Chaque page contient un type bien prcis de donnes
7/25/2019 Support Cours SQL Server 2012
21/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 21
3.2 Cration dune base de donnes
Deux mthodes :
En transact-SQL
SQL Server Management Studio (SSMS)
Les informations ncessaires :
Le nom de la base de donnes, la collation
La taille
Lespace de stockage
En Transact SQL :
Cas pratique :
Nom : gecos
Deux fichiers de donnes
gecos_data01.mdf (taille = 10MB, maxsize=100Bet autoextend OFF)
gecos_data02.ndf (taille = 10MB, maxsize=100Bet autoextend 10MB)
Stockage dans C:\MSSQL\DATA
Un fichier journal
gecos_log01.ldf(taille = 15MB, maxsize=200Bet autoextend 10%)
Stockage dans C:\MSSQL\LOGS
Collation : French, Case Sensitive, Accent Insensitive
7/25/2019 Support Cours SQL Server 2012
22/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 22
3.3 - Les groupes de fichiers
Un groupe de fichiers est une :
Structure logique
Permet de regrouper des fichiers de donnes et de les grer comme des
units logiques. (Unit logique auquel vont sattacher des fichiers
physiques de type .mdfou .ldf)
Nous avons :
Deux types de groupe de fichier
Un type primaire. (cre par dfaut par le systme)
Un autre type dfini par lutilisateur
Utilisation :
Rpartition des donnes par type (tables, indexes)
Rpartition des donnes pour la charge
Cration et Ajout de fichiers au groupe :
Syntaxe de cration de groupe de fichiers
ALTER DATABASE
ADD FILEGROUP ;
Syntaxe dajout de fichiers au groupe
ALTER DATABASE ADD FILE
TO FILEGROUP ;
7/25/2019 Support Cours SQL Server 2012
23/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 23
3.4 - Le partitionnement
Objectif
Diviser des tables volumineuses en plusieurs tables
Optimiser le stockage (Stockage sur diffrents groupes de fichiers)
Monte en charge
Un exemple
Implmentation
Dfinir une fonction de partitionnement Dfinir un schma de partitionnement
Crer les tables partitionnes
Possibilit de crer un index sur une table partitionne (lindex cre est
partitionn selon la table)
Fonction de partitionDfinir la cl de partitionnement (champ de rpartition pertinent)
Permet de rpartir les donnes entre les diffrentes partitions
Permet dorienter les donnes sur un groupe de fichierou un autre
Utilise des plages de valeurs bornes Syntaxe
CREATE PARTITION FUNCTION ( parametre_type)
AS RANGE [ LEFT | RIGHT ] FOR VALUES ( [ valeurLimite [ ,... ] ]
Parametre: colonne de tous types sauf timestamp, varchar(max), nvarchar(max) et
varbinary utilis pour calculer la cl de partitionnement.
valeurLimite: valeur marquant la frontire de chaque partition.
7/25/2019 Support Cours SQL Server 2012
24/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 24
Schma de partition Permet daffecter chaque partition un groupe de fichiers
Possibilit de spcifier plus de groupe de fichiers que de partitions
dfinis
Possibilit daffecter toutes les partitions un seul groupe de fichiers
(non recommand)Syntaxe
CREATE PARTITION SCHEME nomSchemaPartition
AS PARTITION nomFonctionPartition
[ ALL ] TO ( { groupeDeFichier | [ PRIMARY ] } [,_])
[ ; ]
nomSchemaPartition: identifiant du schma de partitionnement.
nomFonctionPartition: nom de la fonction de partitionnement associe au schma.
groupeDeFichier: nom du ou des groupes de fichiers utiliss par les diffrentes
partitions.
Cration dune table de partitionne
Syntaxe
CREATE TABLE nomTable(
definitionColonne [,...]
) ON nomSchemaPartition(colonneUtilisePourCalculerLaPartition)[;]
Cration dun index partitionn
Syntaxe
CREATE INDEX nomIndex
ON nom Table(colonne1, )
ON nomSchemaPartition(colonneDepartition);
7/25/2019 Support Cours SQL Server 2012
25/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 25
3.4 - Configuration dune base de donnes
Les bases de donnes par dfaut
masterbase de donnes systme
model base de donnes modle pour les nouvelles bases de donnes
msdb base de stockage des alertes et travaux pour lagent SQL Server tempdbbase de stockage des objets et donnes temporaires
Cette base est recre chaque redmarre du SGBD
Les options de configuration
AUTO_SHRINK {ON|OFF}=> IsAutoShrink
READ_ONLY, READ_WRITE => Updateability
SINGLE_USER, RESTRICTED_ USER, MULTI_USER => UserAccess
AUTO_CREATE_ STATISTICS { ON | OFF } => IsAutoCreateStatistics
AUTO_UPDATE_ STATISTICS { ON | OFF} => IsAutoUpdateStatistics AUTO_CLOSE=> IsAutoClose
RECOVERY=> recovery
AUTRE=> status, collation
Afficcher la valeur des options
Fonction DATABASEPROPERTYEX
Syntaxe
SELECT DATABASEPROPERTYEX(NomBase',NomOption');
Utilisation de sys.databases
SELECT name,collation_name,user_access_desc,state_desc FROM
sys.databases;
Les autres procdures
sp_helpdb, sp_spaceused;
Modification des options de configuration
En TRANSACT-SQL
- Syntaxe
ALTER DATABASE SET option [;]
7/25/2019 Support Cours SQL Server 2012
26/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 26
Chapitre IV : Sauvegarde des bases de donnes SQL Server 2012
4.1 - Introduction la sauvegarde
Pourquoi sauvegarder
Panne matrielle (support) Mauvaise manipulation des utilisateurs
Panne serveur
Dplacement de base de donnes
Caractristiques
Sauvegarde chaud
sauvegarde cohrente des donnes
Aucune opration de cration ou de modification de base de donnes nest
possible pendant une opration de sauvegarde
Impossible de crer des indexes pendant la sauvegarde Excution doprations non journalises et non autorises
Les principales mthodes de sauvegardes
Sauvegarde complte
Sauvegarde diffrentielle
Sauvegarde du journal des transactions
Sauvegarde des groupes de fichiers
Partielle
Sauvegarde complte de base de donnesSauvegarde toutes les donnes de la base de donnes
Sauvegarde les modifications valides pendant la sauvegarde
Point de dpart pour toute stratgie de sauvegarde
Sauvegarde diffrentielle
Sauvegarde les parties de la base de donnes modifies depuis la sauvegarde
complte
Sauvegarde toutes les transactions intervenues pendant la sauvegarde
diffrentielle
7/25/2019 Support Cours SQL Server 2012
27/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 27
Sauvegarde du journal des transactions
Pr-requis : sauvegarde complte indispensable
Ncessite le mode de rcupration COMPLET
Sauvegarde partielle
Contient toutes les donnes du groupe PRIMAIREContient chaque groupe de fichiers en LECTURE/ECRITURE
Ne contient pas les groupes de fichiers en LECTURE seule
4.2 - Sauvegarde complte
Destination des sauvegardes
Disque
Les units physiques = nom complet du fichier physique auniveau de lOS
Les units logiques: sappuient sur des fichiers physiques
Bande
Les privilges ncessaires pour raliser une sauvegarde
Rles de serveur
sysadmin, db_owner, db_backupoperateur
7/25/2019 Support Cours SQL Server 2012
28/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 28
Linstruction BACKUP
Syntaxe
BACKUP DATABASE TO |
DISK= WITH INIT |
NOINIT | FORMAT | CHECKSUM | COMPRESSION
Sauvegarde avec mise en mirroir
Syntaxe
BACKUP DATABASE TO |
DISK= MIRROR TO
| DISK=
Vrifier lintgrit dune sauvegarde Syntaxe
RESTORE VERIFYONLY FROM | DISK=
4.3 - Sauvegarde diffrentielle
Caractristiques
Sauvegarde toutes les extensions modifies depuis la dernire sauvegarde
Complte
Permet de rduire le nombre de sauvegarde du journal des transactions Utilisable quel que soit le mode de rcupration utilis
Commande BACKUP
Syntaxe
BACKUP DATABASE TO DISK = WITH
DIFFERENTIAL
Utilisable quel que soit le mode de rcupration utilis
4.4 - Sauvegarde du journal des transactions
Caractristiques
Utilisable uniquement avec le mode de rcupration COMPLET et
JOURNALISE EN BLOC
Autorise uniquement aprs une sauvegarde complte
Dbute au numro LSN (Log Sequence Number) o a pris fin la
prcdente sauvegarde de journal
Sauvegarde toutes les transactions jusqu la transaction actuelle ouverte
complte
7/25/2019 Support Cours SQL Server 2012
29/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 29
Toutes les transactions sauvegards peuventt alors tre supprims du
journal des transactions
Commande BACKUP
Syntaxe
BACKUP LOG TO DISK = WITH INIT
4.5 - Sauvegarde de groupe de fichiers
Caractristiques
Stratgie de sauvegarde alternative aux sauvegardes compltes
Permet de sauvegarder des groupes de fichiers
Point de dpart: sauvegarde initiale de tous les groupes de fichiers de la
base de donnes
Mode de rcupration: COMPLET ou JOURNALISE EN BLOC
Commande BACKUP
Syntaxe
BACKUP DATABASE FILEGROUPE =
TO DISK =
BACKUP DATABASE FILEGROUPE =
TO DISK = WITH DIFFERENTIAL
4.6 - Sauvegarde partielle
Caractristiques
Utilisable avec tous les modes de rcupration
Permet dexclure des groupes de fichiers en lecture
Identique une sauvegarde complte mais ne contient pas tous les
groupes de fichiers
La sauvegarde partielle d'une base de donnes en lecture seule contient
uniquement le groupe de fichiers primaire
Pour une base de donnes accessible en lecture/criture, une sauvegarde
partielle contient toutes les donnes du groupe de fichiers primaire, de
chaque groupe de fichiers en lecture/criture
Commande BACKUP
Syntaxe
BACKUP DATABASE READ_WRITE_FILEGROUPS
TODISK =
7/25/2019 Support Cours SQL Server 2012
30/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 30
Chapitre V : Restauration des bases de donnes SQL Server 2012
5.1 - Les pr-requis la restauration
La vrification des sauvegardes
RESTORE HEADERONLYRESTORE FILELISTONLY
RESTORE LABELONLY
RESTORE VERIFYONLY
Avant de restaurer
Aucune connexion utilisateur ne doit tre en cours
Interdire toute nouvelle connexion au serveur pendant la restauration
Mode mono-utilisateur
5.2 - Restauration des bases de donnes
Les diffrents types de restauration
Restauration dune sauvegarde complte
Restauration dune sauvegarde diffrentielle
Restauration dune sauvegarde de journal de transactions
Restauration partielle
Restauration dune page corrompue
Les options de la commande RESTORE
RECOVERY
NORECOVERY
FILE
MOVE... TO
REPLACE
STOPAT (PITR: point in time recovery)
STOPATMARK (LSN), STOPBEFOREMARK (LSN)
7/25/2019 Support Cours SQL Server 2012
31/43
7/25/2019 Support Cours SQL Server 2012
32/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 32
Chapitre VI : Importation et exportation des bases de donnes SQLServer 2012
6.1 - Introduction aux outils dimport / export
Les outils de transfert
SSIS (SQL Server Intgration Service)
Extraction, transformation, chargement
BCP
Outil en ligne de commande
Permet dimporter et dexporter entre un fichier et SQL Server
BULK INSERT
Rplication
SELCT INTO et INSERT
6.2 - SSIS (SQL Server Integration Service)
Terminologie
Les packages (units de travail excuter)
Les tches (se chargent du travail dans les packages)
Les conteneurs (fournissent la structure des packages)
7/25/2019 Support Cours SQL Server 2012
33/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 33
Flux de donnes
Utilisation
Assistance
Concepteurs SSIS
Utilitaires de ligne de commande dtexec
6.3 - BCP (BULK Copy Program)
Caractristiques
Outil en ligne de commande
Permet dexporter les donnes dune table ou dune requte SQL
Permet dimporter un fichier texte dans une table SQL Server
Outil BCP
syntaxe
bcp {nom objet | requete} { in | out | queryout | format }
-S -T...
6.4 - BULCK INSERT
Caractristiques
Importer un fichier de donnes dans une table ou vue de base de donnes
dans un format spcifi par lutilisateur
Commande BULK INSERT
syntaxe
[ database_name . [ schema_name ] . | schema_name .] [ table_name | view_name ]
FROM 'data_file'[ WITH
([ [ , ] FIELDTERMINATOR = 'field_terminator' ]
7/25/2019 Support Cours SQL Server 2012
34/43
7/25/2019 Support Cours SQL Server 2012
35/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 35
Les entits de scurits
Windows
Group Windows, Compte dutilisateur de domaine, Compte dutilisateur
local
SQL Server
Connexion SQL Server, Rle de serveur
Base de donnes
Utilisateur, Rle de base de donnes, Rle dapplication
Configuration des identifiants SQL Server
Identifiant = accs des utilisateurs SQL Server
Cration dun identifiant (authentification Windows)
Syntaxe
CREATE LOGIN [\] FROM WINDOWS
[WITH DEFAULT_DATABASE= |
DEFAULT_LANGUAGE=
Cration dun identifiant (authentification SQL Server)
Syntaxe
CREATE LOGIN WITH PASSWORD=
[MUST_CHANGED] |, DEFAULT_DATABASE= |,
DEFAULT_LANGUAGE= | , CHECK_EXPIRATION={ ON | OFF}| CHECK_POLICY={ ON | OFF} | , [CREDENTIAL=
Les vues systmes
sys.server_principals: Entits de scurit dfinis au niveau serveur
sys.sql_logins: Liste des connexions au niveau serveur
Modification
Syntaxe
ALTER LOGIN WITH
Dsactivation
7/25/2019 Support Cours SQL Server 2012
36/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 36
Syntaxe
ALTER LOGIN DISABLE
Suppression
Syntaxe
DROP LOGIN
DROP LOGIN
7.2 - Les credentials
Permettent des connexions en mode scurit SQL Server daccder une
ressources externe au serveur de base de donnes
Un credential = un compte Windows
Un compte SQL Server est rattach un credential
Cration dun credential
Syntaxe
CREATE CREDENTIAL
WITH IDENTITY = [, SECRET = ];
7.3 - Les utilisateurs de la base de donnes
Caractristiques
Cre au niveau base de donnes
Rattach un login de connexion au niveau serveur
- Sauf pour les utilisateurs guest, sys et INFORMATION_SHEMA
Les droit sur les objets (base, schema, objets) sont des donnes aux
utilisateurs de base de donnes
Les utilisateurs particuliers
Utilisateur dbo
-
Prsent dans toutes les bases donnes par dfaut
- Les membres du rle sysadmin et du compte de connexion sa sont
mapps dbo
- Ne peut tre supprim
- Tous les objets crs par un membre de sysadmin appartiennent
automatiquement dbo
7/25/2019 Support Cours SQL Server 2012
37/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 37
Utilisateur guest
- Prsent dans toutes les bases donnes par dfaut
- Autorise les connexions sans compte utilisateur accder la base
- Activation du compte guest
GRANT CONNECT TO guest;
-
Dsactivation du compte guest
REVOKE CONNECT FROM guest;
Cration dun utilisateur dune base donnesSyntaxe
CREATE USER FOR LOGIN WITH
DEFAULT_SCHEMA=
Modification dun utilisateur de base donnesSyntaxe
ALTER USER WITH NAME=,
DEFAULT_SCHEMA=
Suppression dun utilisateur de base donnesSyntaxe
DROP USER
Les vues systmes
Sys.database_principals
Savoir qui est connect
Procedure sp_who
7.4 - Les schmas
Caractristiques
Apparue dans MSSQL en 2005
Objet logique (enveloppe) Permet un regroupement logique des objets
Permet de grer dune manire plus optimale les droits sur les objets
Associ un utilisateur
Schma par dfaut dbo
Pour accder des objets en dehors de son schma, faut faire prcder le
nom de lobjet par le nom du schma.
Cration
SyntaxeCREATE SCHEMA AUTHORIZATION
7/25/2019 Support Cours SQL Server 2012
38/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 38
ModificationSyntaxe
ALTER SCHEMA TRANSFER ;
Suppression (doit tre vide)
SyntaxeDROP SCHEMA ;
7.5 - Gestion des droits sous SQL Server
Caractristiques
Plusieurs niveaux dattribution des privilges
- Au niveau serveur
-
Au niveau base
- Au niveau schma
-
Au niveau objets
Deux types de droits au niveau base
-
Droits dutilisation dinstructions
- Droits sur les objets
Gestion des privilges-
GRANT pour lattribution des privilges
- REVOKEpour retirer des privilges
- DENYpour interdir e lutilisation dun privilge
Les privilges dutilisation des instructions- CREATE DATABASE pour crer une base de donnes
- CREATE PROCEDURE pour crer une procdure stocke
-
CREATE TABLE pour crer une table
- BACKUP DATABASE pour raliser une sauvegarde
-
CREATE DEFAULT- CREATE RULE pour crer un rle
- CREATE VIEW pour crer une vue
- BACKUP LOGpour raliser une sauvegarde du journal des
transactions
La commande GRANT
GRANT [, ...] TO > [,...] [ WITH
GRANT OPTION ]
La commande REVOKE
REVOKE [ GRANT OPTION FOR] [, ...]FROM
[, ...] [CASCADE]
7/25/2019 Support Cours SQL Server 2012
39/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 39
La commande DENY
DENY [, ...] TO [, ...] [CASCADE]
Les privilges sur les objets
TablesSELECT, INSERT, UPDATE, DELETE
Procdures
EXECUTE
La commande GRANT
GRANT { ALL | [ (colonne [, ...] ] [, ...]) } ON
TO [, ...] [ WITH GRANT OPTION ]
La commande REVOKE
REVOKE [ GRANT OPTION FOR ] { ALL | [ (
colonne [, ...] ] [, ...] ) } ON [ ( colonne [, ...] ] [, ...] )FROM [, ...] [ CASCADE ]
La commande DENY
DENY { ALL | [ ( colonne [, ...] ] [, ...] ) } ON
[ ( colonne [, ...] ] [, ...] ) TO [, ...] [
CASCADE ]
7/25/2019 Support Cours SQL Server 2012
40/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 40
Chapitre VIII : Automatisation de la Gestion de SQL Server 2012
8.1 - Agent SQL Server
Caractristiques
Permet dautomatiser certaines tches.
Chaque agent est rattach une seule instance
Log les erreurs SQL Server dans lobservateur dvenement Windows
Stock les informations dans la base de donnes msdb
Terminologie
Tches planifie
Les alertes
Les oprateurs
8.2 - Configuration de la messagerie Caractristiques
Utilise le protocole SMTP pour envoyer des mails
Possde son propre processus de fonctionnement
Non actif par dfaut
8.3 - Les oprateurs
Caractristiques
Correspond une personne physique ou un groupe dans lentreprise
Permet lAgent SQL Server denvoyer des messages dalerte ou de fin
de travaux
- Messagerie
- Net send
- Radiomessagerie
Les informations sur les oprateurs sont stockes dans la base de donnes
msdb
8.4 - Alertes
Caractristiques
Permettent Davertir un oprateur lorsquun vnement survient
De raliser un traitement pour rsoudre un problme
7/25/2019 Support Cours SQL Server 2012
41/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 41
Quand dclencher une alerte
Erreurs SQL Server
En fonction du numro de lerreur
En fonction de la gravit
Crer ses propres messages derreur
sp_addmessage pour crer un message
sp_altermessage pour supprimer un message
sp_dropmessage pour supprimer un message
Cration dune alerte
Via SQL Server Management Studio
Via Transact SQL
sp_add_alert pour crer une alerte
sp_update_alert pour mettre jour une alertesp_delete_alert pour supprimer une alerte
8.5 - Travaux
Caractristiques
Constitu dune ou plusieurs tapes (tches)Deux tats possibles pour une tche
-
Echec
- Succs
Enchainement possible entre les tapes
Plusieurs types dtapes- Transact SQL, Commande systme, Package,
Stocks dans la table sysjobs de la base de donnes msdb
7/25/2019 Support Cours SQL Server 2012
42/43
Support du cours de SQL Server 2012
BOMIEN K. Narcisse Ingnieur informatique,Dveloppeur, Intgrateur de service informatique et DBA (08958820 / 04502337)
Page 42
Chapitre IX : Lecture dune base de donnes SQL Server en
VB.NET
Cas pratique
7/25/2019 Support Cours SQL Server 2012
43/43
Support du cours de SQL Server 2012
Conclusion