Beruflich Dokumente
Kultur Dokumente
Editions
Enterprise Edition
Elle supporte un nombre de processeurs et une taille de mémoire vive illimités (limités par le
système d'exploitation). Il existe une version 32 bits (x86) et 2 versions 64 bits (ia64 et x64,
x64 uniquement pour SQL Server 2005) et n'a pas de limite quant à la taille des bases de
données. Elle ne peut s'installer que sur un Windows version serveur. Inclut toutes des
fonctionnalités du moteur, dont les fonctions de haute disponibilité. Les fonctionnalités pour
le décisionnel sont toutes incluses de la génération d'états avec Reporting Services à
l'utilisation de cubes OLAP avec Analysis Services en passant par le transfert de données avec
Integration Services (SQL Server 2005) ou Data Transformation Services (SQL Server 7 &
2000). Elle peut en outre fonctionner en cluster jusqu'à 8 nœuds.
Developer Edition
Il s'agit d'une édition pour les développeurs qui dispose des mêmes fonctionnalités que
l'édition Entreprise. Cependant la licence contient des restrictions quant à son utilisation.
Standard Edition
Elle supporte jusqu'à 4 processeurs et une taille de mémoire vive illimitée (limitée par le
système d'exploitation). Il existe une version 32 bits (x86) et 2 versions 64 bits (ia64 et x64,
les deux uniquement pour SQL Server 2005) et n'a pas de limite quant à la taille des bases de
données. Elle ne peut s'installer que sur un Windows version serveur. Cependant SQL Server
2005 permet son installation sur Windows de bureau. Inclus toutes des fonctionnalités du
moteur, sauf certaines fonctions de haute disponibilité. Les fonctionnalités pour le décisionnel
sont toutes incluses de la génération d'états avec Reporting Services (pour SQL Server 2000,
ce composant est à charger séparément) à l'utilisation de cubes OLAP avec Analysis Services
en passant par le transfert de données avec Integration Services (SQL Server 2005) ou Data
Transformation Services (SQL Server 7 & 2000). Elle peut en outre fonctionner en cluster
jusqu'à 2 nœuds depuis sa version 2005.
Workgroup Edition
Nouvelle édition apparue avec SQL Server 2005. Elle supporte jusqu'à 2 processeurs et 3 Go
de mémoire vive. Pour le moment elle n'existe qu'en version 32 bits et n'a pas de limite quant
à la taille des bases de données. Inclus la majeure partie des fonctionnalités du moteur, dont la
possibilité de participer à une réplication en tant qu'éditeur. Les fonctionnalités pour le
décisionnel incluses se limitent à la génération d'états avec Reporting Services.
L’objet de cette présentation portera essentiellement sur la version Developer
I. Introduction
SQL Server 2005 est un SGBDR (Système de Gestion de Bases de Données Relationnelles)
développé par Microsoft.
Basé sur les points forts de son prédécesseur (SQL Server 2000), elle inclut beaucoup de
nouvelles fonctionnalités, permettant une gestion plus productive pour les Entreprises.
Il comprend certaines fonctionnalités qui permettent entre autres de:
€ Le moteur de base de données est un service central qui permet de stocker, traiter et
sécuriser les données. Il fournit des accès contrôlés et des traitements de transactions
rapides pour répondre aux besoins des applications les plus gourmandes en données
utilisées au sein des entreprises. Il offre également les fonctions nécessaires pour faire
face à des besoins de haute disponibilité.
€ Analysis Services
€ Integration Services
Integration Services est une plateforme permettant de créer des solutions d'intégration
de données à hautes performances, y compris des packages qui autorisent les
processus d'extraction, de transformation et de chargement (ETL) pour le Data
Warehouse.
€ Réplication
€ Reporting Services
€ Notification Services
€ Service Broker
Service Broker permet aux développeurs de créer des applications de base de données
évolutives et sécurisées. Cette nouvelle technologie de moteur de base de données
fournit une plateforme de communication par message qui permet à des composants
d'application indépendants de fonctionner comme un tout. Service Broker inclut une
infrastructure pour la programmation asynchrone qui peut être utilisée pour les
applications dans une seule base de données ou une seule instance et également pour
des applications distribuées.
Une analyse de la configuration de votre système est effectuée et la vérification de toutes les
fonctionnalités requises pour l’installation de SQL Serveur est faite.
Entrez alors votre nom et celui de votre Entreprise dans les cases appropriées. En dessous,
vous avez la possibilité de décocher la case "Hide Advanced configuration options": ne
désactivez cette case que si vous êtes sûr de savoir ce que vous faites.
Pour cet article, je désactiverai la case afin de vous montrer/expliquer les différentes étapes
possibles de l'installation.
Une fois les informations saisies, vous avez la possibilité de choisir les composants que vous
désirez installer: libre à vous de tout choisir ou bien uniquement le strict minimum
(sélectionné par défaut)
Selection des Composants de Programme installer
Pour une premiere installation de SQL Server,il vous sera fortement conseillé d’installer la totalité
des composants surtout la documentation et les bases de donnés de test.
Malgré que certaines de ces composants soient sélectionnés par défaut, ne pas oublier de
sélectionner le composant Documentation,exemple de base de données
L'écran suivant vous demande de saisir le nom de l'instance pour l'installation en cours. La
plupart du temps, laisser les valeurs par défaut et cliquer sur Suivant est suffisant:
Parametres et Considérations de Sécurité
Compte de Domaine :
Une Domaine est un ensemble d’ordinateurs sur un réseau qui partage une base de données et
une stratégie de sécurité communes. Un domaine est géré en tant qu’unité avec des règles et
procédures communes, et chaque domaine comporte un nom unique.
Si vous choisissez le 2ème mode (Mixed Mode), il vous sera demandé de spécifier le mot de
passe de l'utilisateur: il s'agit du super administrateur de SQL Server.
Vous devez savoir que vous aurez la possibilité de changer, plus tard, ce type
d'authentification dans les propriétés de votre serveur SQL, si vous changez d'avis.
Finalement, il ne vous reste plus qu'a définir les collations pour le service SQL Server.
Les collations permettent de choisir si la casse, comme les caractères diacritiques et
l'encodage auront une influence sur les tris et les comparaisons.
A moins d'être sûr de savoir ce que vous faîtes, laissez les valeurs par défaut et cliquez sur
Suivant:
Pour finir, vous pouvez choisir d'envoyer ou non, à Microsoft, les rapports d'erreurs qui
pourraient survenir.
Un dernier clic sur le bouton Install vous permet, pour finir, de lancer l'installation en elle-
même.
Et voila, votre SQL Server 2005 est maintenant installé et configuré avec succès !
Maintenant, voyons un peu plus en détails les outils qui ont été installés avec votre serveur
SQL.
Configuration de la Protection du Serveur SQL
Voici l'écran principal de cet outil destiné, lui aussi, à paramétrer certaines options de votre
serveur SQL:
Configuration de la Surface d’Exposition pour les Services et les
Connexions
Sur cet écran, vous aurez la possibilité de configurer les services et les connexions qui seront
nécessaires pour vos applications.
Voici l'écran que vous utiliserez pour configurer les services:
Et voici la partie que vous utiliserez si vous souhaitez configurer les connexions à utiliser
pour vos applications.
Vous avez la possibilité de choisir deux types de connexions:
Voici une image qui vous permettra de mieux comprendre tout cela:
Surface Area Configuration for Features est l'utilitaire qui vous permettra de configurer les
options de votre Serveur SQL, que vous voulez utiliser.
En effet, c'est ici que vous indiquerez si, pour une certaine instance de SQL Serveur, vous
souhaitez activer l'intégration de la CLR (Common Language RunTime) (qui vous permet
d'écrire du code .NET dans SQL Serveur), Surface Area Configuration for Features ou bien si
vous souhaitez activer Database Mail, le nouveau composant de SQL Server 2005, qui vous
permet d'envoyer des e-mails depuis SQL Server, en utilisant un serveur SMTP.
Bref, vous pourrez, via ce menu, activer ou désactiver beaucoup d'options pour votre instance
SQL Server, selon que vos applications utilisent ou non ces options.
SQL Server Configuration Manager
Cet outil apporte une aide appréciable pour la gestion des comptes de connexion Windows
concernant les différents services de SQL Server 2005 sur votre serveur ainsi que pour la gestion des
services proprement dits. Vous ne pouvez plus démarrer ou arrêter les services directement dans
Management Studio, comme c’était le cas avec SQL Server 2000 Enterprise Manager. Une
connaissance préalable des fonctionnalités du gestionnaire SQL Server Connection Manager est donc
indispensable. Celui-ci est accessible à partir du menu Démarrer (Start) de Windows ou à partir de
l’applet Gestion de l’ordinateur (Computer Management) au niveau des outils d’administration du
système d’exploitation. Si l’outil Management Studio, que vous allez découvrir dans la prochaine
section, est en cours d’exécution, vous pouvez accéder à la fenêtre Registered Servers et lancer le
gestionnaire.
SQL Server Configuration Manager a pour fonction de gérer les services SQL Server, les
bibliothèques réseau ainsi que le client natif SQL Server, comme l’illustre la figure 1. Vous
pouvez, à cet emplacement, définir et modifier les comptes de service ou encore activer et
désactiver des services. Certains aspects de cet outil empiètent sur le domaine d’action des
deux autres outils de configuration de la surface ci-après, lesquels gèrent ces services et
d’autres fonctions sous l’angle de la menace pour la sécurité.
€ Nous serons souvent appeler à faire des requêtes avec transact SQL alors parlons en un
peu
Avec SQL Server Management Studio, SQL Server 2005 propose un outil de gestion consolidé et
complet, qui regroupe les fonctions indispensables tant aux DBA qu’aux développeurs. Il s’agit d’un
outil complexe de fonctionnalités. Les principaux peuvent être structurés selon trois axes : la gestion
du serveur, la modification des requêtes et l’analyse des performances.
Management Studio est le grand « fédérateur d’outils » : Microsoft a délibérément regroupé le des
fonctionnalités d’administration de la console Enterprise Manager et des fonctions de modification
des requêtes et d’analyse de l’Analyseur de requêtes.
Dès lors que vous lancez SQL Server Express Manager, celui-ci vous demande des
informations de connexion, afin de vous logger au serveur SQL.
Vous devez donc indiquer:
1. le nom de l'instance du serveur (Attention, vous devez également préciser le nom
du serveur sur lequel est exécutée cette instance. Par exemple, dans mon cas, il me
faut indiquer DGCPTCI9\DIT1 comme nom d'instance du serveur SQL)
2. le type d'authentification: c'est à ce moment que vous allez spécifier si vous voulez
vous connecter en utilisant un utilisateur Windows ou un utilisateur du serveur
SQL
3. les logins/mot de passe nécessaires à la connexion
La messagerie de base de données est une solution d'entreprise qui permet l'envoi de
messages électroniques à partir de Microsoft SQL Server 2005 Database Engine (Moteur de
base de données de SQL Server 2005). Grâce à la messagerie de base de données, vos
applications de bases de données peuvent envoyer des messages électroniques aux
utilisateurs. Ces messages peuvent contenir les résultats d'une requête, voire des fichiers de
n'importe quelle ressource de votre réseau.
Les informations de compte sont stockées dans la base de données msdb. Chaque compte
comprend les informations suivantes :
€ Nom du compte
€ Description du compte
€ Type du serveur de messagerie. Pour Microsoft SQL Server 2005, il s'agit toujours de
SMTP (Simple Mail Transfer Protocol).
€ Une colonne de bits indiquant si la connexion au serveur SMTP s'effectue au moyen des
informations d'identification configurées pour SQL Server Database Engine (Moteur de
base de données de SQL Server).
Les fichiers de données secondaires sont facultatifs, définis par l'utilisateur, et ils stockent les
données utilisateur. Les fichiers secondaires peuvent être utilisés pour répartir des données
sur plusieurs disques en plaçant chaque fichier sur un lecteur de disque distinct. En outre, si
la taille d'une base de données excède la taille maximale autorisée pour un fichier Windows,
vous pouvez avoir recours aux fichiers secondaires afin que la base de données puisse
continuer à croître.
Les fichiers journaux des transactions contiennent les informations du journal qui sont
utilisées pour la restauration de la base de données. Chaque base de données doit posséder
au moins un fichier journal. L'extension de fichier recommandée pour les journaux des
transactions est .ldf.
€ Cliquez avec le bouton droit sur Bases de données, puis cliquez sur Nouvelle base de
données.
€ Pour créer la base de données en acceptant toutes les valeurs par défaut, cliquez
sur OK,
CREATION BASE DE DONNES AVEC TRANSACT SQL
CREATE DATABASE database_espdb
ON
{Name= _espdb
Filename=’ C:\ mes documents\Contacts\espdb_dat.mdf’
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5,
}
LOG ON
{Name= _espdb_log
Filename=’ :\ mes documents\Contacts\espdb_log.ldf’
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5,
}
Creation d’un schema
Un schéma est espace de nommage pour les objets de base de données
Exemple créons l’objet Mysalesdat dans le schéma Mysales avec des instructions Transact
SQL
le nom_ base_donnees.nom_schéma.nom_objet
GESTION DE LA BASE DE DONNEES
Après qu'une base de données a été créée et que tous les objets et
données y ont été ajoutés et sont exploités, il convient à certains
moments d'accomplir des tâches de maintenance. Par exemple, il est
important que vous sauvegardiez régulièrement la base de données.
Pour modifier, ajouter ou supprimer un groupe de fichier de la base de données on utilise les
commandes ALTER DATABASE
Exemple
Maxsize=100,
File grouwth=10
To filegroup EmpFg)
Création de statistique
SQL Server permet la création de statistique permettant d’avoir des états de synthèses
CREATE STATISTICS
On Person.contact(contactID,EmailAddress
Visualiser les statistiques
Dbcc show_statistics(‘Person.Contact,ContactEmail)
Update statistics(‘Person.Contact,ContactEmail)
Il devient essentielle de verifier la taille de la base de donnée lorsque le volume des données
s’accroit. L’administrateur de la base de données doit contrôler la taille pour améliorer la
performance du moteur de base de données. Pour cela on utilise ces commandes
Il s'agit de l'agent de maintenance de l'instance de SQL Server. À chaque instance de SQL Server
correspond un service Windows Sql Server Agent. Ce service peut être repéré dans les services
Windows sous les noms SQLAgent$Nom_instance pour les instances nommées et SQLAgent pour
l'instance par défaut. Le moteur SQL Server Agent s'appuie sur la base msdb. Ce moteur permet de
gérer les sauvegardes, les plans de maintenance, les travaux planifiés, la surveillance de la base, les
alertes administratives...!
La création d’un travail pour expédier une notification à l’administrateur système quand le
service de texte intégral démarre.
2- création d’un travail
création d’une alerte
III. SAUVEGARDE ET RESTAURATION DE BASE DE
DONNEES
€ Sauvegarde complète,
sauvegardé l’entièreté de la base de données, y compris les fichiers de données et une partie du
journal des transactions.
€ Créer une unité de sauvegarde
EXEC sp_addumpdevice 'disk', 'AdvWorks_TestDev',
€ Sauvegarde complète
backup database AdventureWorksDW to AdventureWorksDWBackup
Utiliser la commande suivante pour créer en même temps le disque de sauvegarde
BACKUP DATABASE [maximusdb] TO DISK = N'C:\Program Files\Microsoft
SQL Server\MSSQL.3\MSSQL\Backup\maximusdb.bak
€ Sauvegarde différentielle
Sauvegarde des parties de la base de données qui ont été modifiées depuis la dernière sauvegarde
complète de la base de données.
RESTAURATION
Identification d’un modèle de récupération
Détermine les stratégies de sauvegarde et de restauration utilisées pour une base de données.
Le modèle de récupération simple
Utilisé pour les petites bases de données ou les bases de données dont les données ne sont pas
fréquemment modifiées.
Le modèle de récupération complet
Utilisé quand la récupération complète au départ du support endommagé est la priorité principale.
Le modèle de récupération journalisé en bloc
Similaire au modèle de récupération complet et utilise les sauvegardes aussi bien de la base de
données que du journal pour recréer une base de données.
Restauration de la sauvegarde complète
RESTORE DATABASE [maximusdb] FROM DISK = N'C:\Program Files\Microsoft SQL
Server\MSSQL.3\MSSQL\Backup\maximusdb.bak' WITH FILE = 1,
Avec Management studio
Restauration de base de données
from _mamandbBackup
with norecovery
go
- mécanismes d’authentification
- mécanismes de validation
- mécanismes d’autorisation
- les sécurisables
- les autorisations
Ce sont des entités logiques qui doivent accéder aux ressources de sql
server
L’OS Windows
Le serveur
La base de données
-> Les utilisateurs de base de données, ce sont des comptes d’accès ayant
l’autorisations d’accéder à une base de donnés
2- les sécurisables
L’OS Windows
Le serveur
*une portée serveur qui inclut des connexions d’accès des bases de
données et des points de terminaisons créent au niveau du serveur
*portée de base de données, qui inclut les objets tels que les
utilisateurs, les rôles, les rôles d’applications, les assemblages, des
catalogues de texte intégral, les schémas et les événements dll crées au
niveau de la base de données.
* portées schémas qui inclut des tables, des vues, des procédures, des
fonctions et des types de contenus dans un schéma
3- les autorisations
L’accès aux sécurisables par des entités de sécurités peut être activées ou
désactivées en configurant les autorisations. Celles-ci conditionnent le
niveau auxquelles les entités de sécurité ont accès aux sécurisables.
CREATE LOGIN
Exemple
Tâche 3: assignation d’autorisations afin de permettre a boubacar de visualiser toutes les tables du
schéma.
Un rôle est un objet de base de données auxquelles un ensemble d’autorisation sont octroyées. Les
types de rôles :
- rôle de base de données fixes : ils sont définis au niveau de la base de donnée et existe
dans chaque base de données
Rôle de base de données fixes : ils sont définis au niveau de la base de donnée et existe dans
chaque base de données
Rôles de base de données fixes Autorisations
Public (quand un utilisateur ne dispose pas Dispose des autorisations par défaut
de groupe par défaut)
Il est possible de créer ses propres rôles de bd pour grouper plusieurs utilisateurs afin de leurs
assigner un ensemble commun d’autorisations.
Ceci permet de configurer un ensemble d’autorisations à assigner à des utilisateurs d’une base de
données.
CREATE ROLE
Rôle de base d’application
Entité de sécurité de base de données qui permet à une application de fonctionner avec ses propres
privilèges. A utiliser avec une application utilisée en interne qui doit utiliser la base de données.
Chaque rôle se voit assigner un ensemble d’autorisations. Pour assigner des autorisations à un
utilisateur, un rôle peut être assigné à un utilisateur ou celui-ci peut être autorisé à devenir un
membre du rôle.
Affectations d’autorisations
Après avoir crées les entités de sécurités, les sécurisables , des entités doivent être assignées aux
entités de sécurités pour définir le niveau d’accès aux éléments sécurisables qu’elles détiennent.
Au niveau du serveur des autorisations peuvent être octroyées au connexion d’accès. Les connexions
d’accès peuvent être autorisées à accéder à certains objets du serveur ou à accomplir des activités au
niveau du serveur. Telles que la modification ou la création de base de données.
.
Les autorisations communément utilisées pouvant être octroyées au niveau du serveur sont :
Au niveau de la bd, les utilisateurs doivent pouvoir exécutés des activités telles que la
création d’un schéma. Les autorisations octroyées aux éléments sécurisables sur les
utilisateurs, service broker, les schémas, et les assemblages.
- CREAT SCHEMA
- CREATE SERVICES
- CREATE ASYMETRIC KEY
- CREATE SYMETRIC KEY
- CREATE CERTIFICATE
- CREATE CONTRACT
- CREATE QUEUE
- CREATE MESSAGE TYPE
- CREATE ROLE
Avec transact SQL
grant select
on schema::production
to boubacar
Ces lignes de commande octroient à Babacar l’autorisation de consulter la table « production »
Au niveau des schémas, des autorisations peuvent être octroyées pour des éléments
sécurisables / les tables, les vues, les procédures stockées et les types.
- CREATE TABLE
- CREATE FUNCTION
- CREATE VIEW
- CREATE PROCEDURE
- DELETE
- EXECUTE or EXEC
- INSERT
- SELECT
- UPDATE
- ALTER ANY USER
- VIEW DATABASE STATE
Exemple:
use adventureworks
To boubacarz
/* autoriser boubacar à créer des procédures sur la base de données adventure works*/
Avec Management
Studio
Révocation d’autorisations
On schema ::sales
From boubacar
7- Chiffrement des données
Si les données sont chiffrées, elles restent sécurisées même si un utilisateur non
autorisé accède à la base. Les données et objets de base, les procédures ou les
fonctions peuvent êtres chiffrés à l’aide clés et de certificats.
a- Création de clés
Une clé est une valeur qui peut être appliquée à une fonction cryptographique pour
chiffrer/déchiffrer une valeur de données sécurisées. Il faut distinguer les clés
symétriques et asymétriques.
Une clé symétrique est une valeur utilisée aussi bien pour le chiffrement que
pour le déchiffrement de données (il faut forcément la partager).
With algorithm=TRIPLE_DES