sql server 2005

publicité
SQL SERVER 2005
I – Installation et configuration de SQL Server 2005
II - Gestion des bases de données et fichiers
III – Gestion de la sécurité
IV – Sauvegarde et restauration
1
I - Préparation à L’installation de SQL Server 2005
Les SQL Server offre plusieurs éditions :
o Edition Enterprise : Cette version ne s’installe que sur des serveurs. Elle donne la
passibilité de faire du business Intelligence.
o Standard : Version souvent installé dans des succursales de sortes à être piloté par
Enterprise 2005 au niveau de la maison mère.
o Work Group 2005 : Cette version est aux groupes de travail.
o Express : Elle remplace MSDE
o Mobile : pour Windows CE…
o Developper : C’est une copie de la version Enterprise.Elle n’est pas destiné à faire de
la production.Cette édition a toutes les fonctionnalité de Enterprise.On peut l’installer
sur XP avec une poste locale. Elle est utilisée pour faire des tests
o Evaluation : Elle ressemble à l’édition developper.Elle ne s’installe pas sur XP
 Configuration matérielle
Il faut disposer d’un processeur compris entre 600Mhz et 1Ghz
2
Une mémoire minimale de 512Mo (Enterprise, Standard, Work Group…)
112Mo pour express.
Il faut aussi disposer d’une espace disk minimale de 1 Go
 Configuration logicielle
Avant l’installation, Il faut avoir :
o OS
o Internet Explorer 6
o IIS 5
o Framework 3.0
o Réseau TCP/IP
 Les instances
Les instances sont l’ensemble des programmes et des données.Elle se définit par :
Nom_ordinateur\Nom_instance ;
SQL Server permet la création de 15 instances.
 Considération de sécurité
Elle est liée aux types de compte :
o Compte utilisateur local
o Compte de données
o Compte de système local
o Moteur de base de données
o Composant (Analysis, broker)
o Outil (Management studio)
3
 Option de licence
Il y a trois types de licences :
o Licences par processeur : Chaque processeur sera taxé. Les clients n’auront pas
besoin de licences
o Licence d’accès client/serveur plus périphérique : taxé par serveur et par
périphérique
o Accès client serveur plus utilisateur : Chaque utilisateur qui se connecte
occasionne une taxation
4
 Paramètre de classement
Ce paramètre permet les opérations de tri.
o Vu d’ensemble du processus d’installation
La première phase consiste à l’installation de mise à jour des composants L.NET,
Framework 2.0 Windows installer 3.1 et du package msi d’installation qui nécessite
Windows installer 3.1
 Les options d’installation des composants
o Moteur de base de données :
Réplication
Recherche de texte intégral
o Analysis Services (OLAP)
o Reportings services
o Intégration Services (Transfert des données)
o Composants station de travail (ensemble d’outils : documentation, base de données
test)
5
 Les opérateurs
o Arithmétiques : +,-,*, /, %
o Logique : AND, NOT, OR, XOR
o Comparaison : >, <, >=, <=, =
 Variables
DECLARE SET
Use Northwind
Declare @Empid int, @Name char (20)
SET @Empid=101
Commentaire
/*
*/
II – Gestion de base de données et des fichiers
6
Une base de données sert à stocker un ensemble de données. Les objets d’une base de
données nous aide à structurer les données d’une base de données et à définir les mécanismes
de sécurité, d’améliorer la performance et le contrôle d’intégrité des données.
Parmi ces objets, nous avons :
o Table : Elles représentent un ensemble de lignes associées à des colonnes
o Contraintes : elles définissent les règles relatives aux autorisées dans les colonnes
et vont constituer les mécanismes standard pour garantir l’intégrité des données.
o Valeurs par défaut : elles définissent les valeurs stockées dans une colonne si
aucune valeur n’est fournie au moment de l’ajout
o Index : Ils constituent des structures de stockage offrant un accès rapide pour
l’extraction des données
o Vue : elles permettent de visualiser les données venant d’une ou de plusieurs tables
d’une même base de données
o Fonctions définies par l’utilisateur : elles vont permettre de renvoyer soit une
valeur scalaire, soit une table
o Procédures stockées : elles constituent un ensemble d’instruction nommées en
TSQL pré compiler devant être exécutées ensemble
o Déclencheur : ils représentent une forme spéciale de procédure stockées et
exécutées automatiquement lorsqu’un utilisateur modifie les données d’une table
ou d’une vue.
 Outils de configuration de la surface d’exploitation
Il permet de démarrer, arrêter, autoriser, activer, désactiver les fonctionnalités, les services et
les connections distantes de votre installation.
On peut utiliser ces fonctionnalités, il y a le CLR (Common Language Runtime), la
messagerie de base de données, SQL Mail et assistant Web qui ont été retiré
Server de base de
données
API
Langage.Net
7
 Gestionnaire de configuration SQL 2005
Il permet de gérer les services associés SQL Server, configurer les protocoles utilisés par SQL
Server et gérer la configuration de connexion à partir des ordinateurs client de Sqls.
 SQL Server Management Studio
SQL Management Server est un outil qui permet d’exécuter la quasi-totalité des taches
d’administration.
 Configuration de la messagerie de base de données
La fonctionnalité de messagerie est utilisée pour expédier des messages de type email à partir
du moteur de base de données.Il est possible d’envoyer des messages pour notifier à
l’administrateur que la mémoire n’est pas suffisant.On a 2 principaux objets dans cette
fonctionnalité.
o Compte de messagerie base de données : contient les informations utilisées par
SQL Server pour envoyer des messages email par SMTP
o Profil de messagerie de la base de données : c’est un ensemble de compte de
messagerie.
Les profils peuvent-etre publique ou privé :
o Publique : lorsqu’il est alloué au groupe (Database Mail User Role).Les profils
publiques sont disponibles pour tous les membres du role contenu dans la base de
données système MSBD.
o Privé : défini pour les responsables de sécurité.
 Création et gestion de base de données
Fichier de la base de donnée
o Fichier de donnée primaire (.mdf) : contient des infos sur les démarrages de la
base de donnée et d’autres informations user
o Fichiers de données secondaires (.ndf) : Ils ne sont pas obligatoire, mais ils
peuvent être créée pour pouvoir stocker les données utilisateur.Ils portent
l’extension .ndf
8
o Fichiers journaux (.ldf) : Ils permettent de récupérer les détails sur toutes les
transactions de la base de données et enregistrer toutes les modifications apportées
à la base de données.
Groupes de fichiers
o Groupe de fichiers primaires : C’est un ensemble de fichiers primaires et au besoin
les fichiers secondaires et autres.
o Groupe de fichiers définis par l’utilisateur : Il est crée dans l’optique de regrouper
les fichiers qui ne font pas parti du groupe de fichier primaire, secondaire ou
autres.
 Création d’une base de données
o Transact_SQL :
Create database _nombd
On
(name=_bambadb,
Filename=’…\Data\_bambadb_dat.mdf’,
Size=
,
Maxsize= ,
Filegrowth= )
Log on
(name=_bambadb_lob,
Filename=’…\Data\_bambadb.ldf’,
Size= ,
Maxsize= ,
Filegrowth= )
9
 Propriétés de la base de données
o Les schémas :Ils représentent un espace de nommage pour les objets de la base de
données.
Nom_base_de_données.nom_schema.nom_objet_bdd
Create schema Myscles
Create table Myscles.salesdat
(SalesId int not null PRIMARY KEY, Sales Amount float not null)
 Gestion des bases de données
La gestion d’une base de données implique des activités comme l’ajout, la suppression de
fichiers et de groupes de fichiers ainsi que la modification de la taille de fichiers et de
groupes.La base de données peut également être supprimée si elle n’est plus utilisée.
10
Les secondes opérations sont relatives au déplacement d’une base de données d’un serveur
vers un autre ou d’une instance à une autre sur le même serveur.En plus des taches de
maintenances.Il arrive parfois que l’administrateur de base de données ait à faire d’autres
taches comme le contrôle de performance d’exécution des requête ou le contrôle de la
quantité d’espace disque libre.Une telle analyse permet d’améliorer les performances de la
base de données.L’administrateur est également responsable pour l’obtention des
informations concernant l’efficacité des index crées.
L’une des taches fondamentales de l’administrateur est de maintenir la taille de la base de
données.Une des méthodes pour y arriver est de réduire la taille de la base de données pour
libérer l’espace non utilisée.
Cet espace libre peut alors être utilisé pour enregistrer d’autres objets de la base de données.Il
faut aussi effectuer des contrôles d’intégrité de la base de données pour vérifier que les
données sont fiables et consistantes.
 Modification d’une base de données
11
Après avoir crée une base de données, il est peut-être nécessaire d’ajouter ou de modifier un
fichier ou un groupe de fichiers ou encore de supprimer après une création de base de
données.Pour effectuer ces opérations,on utilise :
ALTER DATABASE
 Ajout d’un groupe de fichier
Alter database _espdb
Add filegroup EmpFG
Alter database _espdb
Addfile(name=EmpFGfile1,
Filename=’…\Data\EmpFGFile1.ndf’,
Size=10,
Maxsize=100,
Filegrowth=10)
To filegroup.EmpFG
 Suppression
DROP
12
 Migration d’une base de données
o Il y a 15 instances (ensemble de programmes et de données dans une base de
données) dans un serveur de base de données.
Sp_detach_db’_espdb’, true
 Gestion des statistiques
Ils peuvent être créer pour des donnes spécifiques d’une table ou d’une vue
o Create statistics Contact Email : (on person.contact(contactID,EmailAddress)
o Sp_helpstats’Person.contact’,’All’.
o Dbcc show_statistics(‘Person.contact,contactEmail)
13
 Mise à jour de statistiques
On utilise la commande update statistics Person.contact ContactEmail
 Reduction d’une base de données
Il devient essentiel de verifier la taille d’une base de données lorsque le volume de
données s’accroit.L’administrateur de base de données doit controler la taille de la base de
données pour améliorer les performances de la base de données.
Dbcc shrink file
Shrink database
14
 Extension de la base de données
Avec l’accroissement du volume de données dans la base, les fichiers d’enregistrement
peuvent atteindre leur taille maximale, il est necessaire d’augmenter la taille de la base de
données pour admettre plus de données.
 Réalisation
L’instruction dbcc permet en plus de réduire la taille de la base de données, de contrôler
l’intégrité d’une base de données.
La première instruction est : dbcc checkdb
Cet instruction va nous permettre de contrôler la cohérence et l’intégrité de la base de
données.
Dbcc check alloc permet de contrôler la cohérence de l’allocation de l’espace disk d’une base
de données particulière.
Ddbc check table : cette instruction est identique à l’instruction ddbc check db qu’elle
contrôle une seule table ou une vue indexée ou même un index particulier
 Automatisation d’une base de données avec un agent SQL Server
Un administrateur de base de données assure la cohérence, la fiabilité et l’actualisation des
données d’une base de données.Pour ce faire, certaines taches administratives doivent se faire
périodiquement. Dans cette optique, d’automatiser leur exécution à l’aide de SQL Server
Agent.
III - Sécurité de la base de données
SQL Server 2005 fait appel à 3 mécanismes pour la sécurité :
o Authentification
o Autorisation
o Validation
Tois composants interviennent dans la sécurité au sein de SQL Server 2005.Ce sont les entités
de sécurité, les sécurisables et les autorisations
 Les entités de sécurité
Ce sont les entités logiques qui doivent accéder aux ressources de SQL Server
Sur Windows : ce sont les comptes utilisateur locaux, les comptes utilisateur à distances, les
comptes groupe d’utilisateur.
 Niveau SQL Server
On a les identifiants d’accès d’ensemble des utilisateurs enregistrés et authentifiées par SQL
Server
 Entités de sécurité au niveau base de données
15
Nous avons les utilisateurs base de données.Ce sont les comptes d’accès ayant l’autorisation
d’accès base de données.
 Les sécurisables
Ce sont des objets auxquels accèdent les entités de sécurité, et d’une base de données ou
encore un service de base de données.Au niveau des encodeurs, il s’agit de fichiers utilisés
par SQL Server.Ce sont des hiérarchies imbriquées appelées portée.
Une portée serveur : Il inclut une connexion d’accès d’une base de données et des points
de terminaison crées au niveau du serveur.
o La portée base de données : elle inclut des objets tels que utilisateurs, role
d’application, assemblage
o Portée schéma : Elles inclut des objets tels que Tables, vues, fonctions, procédures
et les types contenues dans un schéma.
 Les autorisations
L’accès aux sécurisables par des entités de sécurité peut-être activé ou désactivé en
configurant les autorisations. Celles-ci conditionnent les entités de sécurité qui ont accès aux
sécurisables.
 Création des connexions d’accès et d’utilisateurs
On utilise l’instruction : create login.
 Affectation des rôles
Un rôle est un objet de base de données auquel un ensemble d’autorisation sont octroyés.Les
types de rôle :
 Rôle de base de données fixe
 Rôle de base de données défini par l’utilisateur
 Rôle d’application
 Role de base de données
Elles sont définis au niveau de la base de données et existent dans chaque base de données
Role de la base de données
Db_accessadmin
Db_backupoperator
Db_datareader
Db_datawriter
Db_ddladmin
Autorisations
Sauvegarder les opérations
Ajoute, modifie ou supprime les données
d’une tables quelconque
Ajoute, modifie ou supprime les objets de la
16
Db_denydatareader
Db.datawriter
Db_owner
Db_securityadmin
Public
base de données
Restreint la lecture des données d’une table
quelconque
Restreint la modification des données d’une
table quelconque
Réalise une activité quelconque de base de
données
Il crée des schémas, charge des rôles de base
de données et les rôles d’application
Maintient les autorisations par défaut
 Rôle de base de données
Il est possible de créer ses propres rôles de base de données pour grouper plusieurs utilisateurs
et les assigner un ensemble commun d’autorisations. Ceci permet de configurer un ensemble
commun à assigner à des utilisateurs de base de données.
 La commande : create role
 Rôle d’application
Un role d’application est un ensemble de sécurité qui permet à une application de fonctionner
avec ses propres privilèges.

Create application role
 Assignation de rôle aux utilisateurs base de données
Chaque role se voit assigner un ensemble d’autorisation .Pour assigner une autorisation à
un utilisateur, un role peut-être assigner à un utilisateur ou celui-ci peut être autorisé à
devenir un membre du role.
 Affectation d’autorisation
Après avoir créer les entités de sécurité, les entités doivent être sécurisable
 Octroie d’autorisation au niveau serveur
Create table
Create function
Create view
Create procedure
Delete
Execute
Insert
Select
Update
Alter any user
17
View database state
 Octroie d’autorisation au niveau du serveur
Use Adventureworks
Grant create procedure
To boubacarz
 Révocation d’autorisation
Il est parfois nécessaire de supprimer les autorisations octroyées aux utilisateurs
Revoke alter
On schema ::sales
From boubacarz
En plus restreindre l’accès à la base de données, il est possible d’ajouter une couche de
sécurité supplémentaire.
Si les données sont chiffrées, elles restent sécurisé même si un utilisateur non autorisé accède
à la base de données. Les données et objets de base de données peuvent-etre chiffrer à l’aide
de clé et de certificat.
 Création de clé
Une clé est une valeur qui peut-être appliqué à une première fonction cryptographique pour
déchiffrer une valeur de données sécurisée. On distingue les données symétriques ou
asymétriques
Clé asymétrique
Create symetric Key Symkey
With algorithmTRIPLES_DES
Encryption by password=’mot_de_passe’
 Creation de certificat
Un certificat peut-être utilise dans une base de données SQL Server pour ajouter un objet de
base de données tel qu’une procédure stockée ou une fonction.
Use Adventureworks
Create certificate awCustCert
Encryption by password= ‘Mot_de_passe’
With subject =’Cert for Adventureworks custumers’,
Star_date=’01/04/2008’,
Expiry date=’09/04/2008’
18
Téléchargement