Upload
blanche-baud
View
108
Download
1
Embed Size (px)
Citation preview
Yonel Grusson 1
SQL SERVER 7
CLIENT/SERVEUR
Yonel Grusson 2
PLAN• Présentation• Installation• Résultat de l'installation• L'administration
– Par le SQL– Par l'interface
• Création d'une base et d'une table• Ajout de données
• La Sécurité
SQL SERVER 7
Yonel Grusson 3
SQL SERVER 7 - Présentation
Client Serveur
Application CLIENTE Application SERVEUR :SQL-SERVER
(SGBD)
Base deDonnées
Requête (Transact-SQL)
Résultats(seulement les donnes)
SQL-Server est un SGBD Client-Serveur (cf le cours) qui utilise TRANSACT-SQL dans ses transactions .
Yonel Grusson 4
• L’application cliente s'occupe du traitement et de la présentation des données (en d’autres termes « ce qu’il faut faire avec les données »).
• SQL-Server :– Gère et répartit éventuellement les bases de
données (gérer les relations entre les données, assurer leur stockage)
– Assure la sécurité (sécurité des accès aux bases et aux objets, récupération des données en cas de panne).
SQL SERVER 7 - Présentation
Yonel Grusson 5
Installation de SQL SERVER
Configuration requise :
• Processeur : Intel (Pentium) ou Alpha.• Mémoire : 64 Mo et plus (fonctionne avec 32 Mo).• Système d'exploitation :
NT 4 (Server et WS) avec SP 4 ou ultérieur,2000 (Server et Professionnel),XP.
• Système de fichiers : NTFS (peut fonctionner avec FAT).• Internet Explorer 4.01 SP1 ou ultérieur (nécessaire pour l'affichage de l'Aide en ligne).
Attention : SP4 et IE 4 doivent être installés avant SQL Server.
Yonel Grusson 6
Installation de SQL SERVER
Yonel Grusson 7
Installation de SQL SERVER
Installation locale
Yonel Grusson 8
Installation de SQL SERVER
Yonel Grusson 9
Installation de SQL SERVER
Variante : Installation à distance (depuis la source)
Non modifiables
Yonel Grusson 10
Installation de SQL SERVER
Yonel Grusson 11
Installation de SQL SERVER
Choix important car irréversible sans une reconstruction complète de TOUTES les bases
Yonel Grusson 12
Installation de SQL SERVER
Yonel Grusson 13
Installation de SQL SERVER
Yonel Grusson 14
Installation de SQL SERVER
Ce compte doit exister dans la base des comptes du domaine.Il doit appartenir au groupe «Administrateurs»Il permet l'exécution des deux services : SQL Server et Agent SQL Server
Yonel Grusson 15
Installation de SQL SERVERVariante : Il est possible de différencier les comptes entre les 2 services.
Yonel Grusson 16
Installation de SQL SERVER
Yonel Grusson 17
Résultat de l’installationLe répertoire système (SQL Server proprement dit)
BINN : Pour les exécutables
BOOKS : Pour l'aide en ligne
DEVTOOLS : Outils d'aide au développemt
HTML : Pour MMC (console) et SQL Server
INSTALL : Scripts générés à l'installation
UPGRADE : Pour la mise à niveau de SQL 6.5 vers SQL 7.0
Yonel Grusson 18
Résultat de l’installationLes bases de données (1) BACKUP : Pour les
fichiers de sauvegarde
DATA : Pour les bases
de données
JOBS : Pour les fichiers
temporaires de sorties
des travaux
LOG : Pour les fichiers
journaux des erreurs
REPLDATA :
Répertoire de travail des
tâches de réplication
BACKUP : Pour les
fichiers de sauvegarde
DATA : Pour les bases
de données
JOBS : Pour les fichiers
temporaires de sorties
des travaux
LOG : Pour les fichiers
journaux des erreurs
REPLDATA :
Répertoire de travail des
tâches de réplication
Yonel Grusson 19
Les bases de données (2)
Résultat de l’installation
Yonel Grusson 20
Résultat de l’installationLes bases de données (stockage physique)
Fichier de données principal (.mdf)Eventt un ou plusieurs fichiers secondaires (.ndf)
Fichier de données principal (.mdf)Eventt un ou plusieurs fichiers secondaires (.ndf)
Un ou plusieurs fichiers journaux des transactions (.ldf)
Un ou plusieurs fichiers journaux des transactions (.ldf)
Les tables et les index sont stockés dans des ETENDUES .Une ETENDUE = 8 PAGES de 8 KoUne ligne ne peut pas s’étendre sur plusieurs pages et sa taille maximum est de 8060 octets.
UNE Page = 8 Ko
Base de donnéesBase de données
UNE ETENDUE = 8 Pages de 8 Ko
Yonel Grusson 21
Résultat de l’installationLa Bases des comptes NT :
Ce compte existait dans la base des comptes du domaine.Il permet l'exécution des deux services : SQL Server et Agent SQL Server
Yonel Grusson 22
Résultat de l’installationLes services NT : 3 services sont installés
Yonel Grusson 23
Résultat de l’installationLes services NT installés sont :
MS SQL Server : Ce service traite les requêtes en provenance des clients. Il assure la gestion des données et garantit l'intégrité de la base.
MS DTC : (Distributed Transaction Coordinator) Ce service permet à une application cliente de faire appel à plusieurs bases avec une seule transaction (Base de données répartie – cf cours).
SQLServerAgent : Ce service gère les tâches planifiées, les alertes et la réplication des bases de données.
Yonel Grusson 24
Résultat de l’installationLes services NT : Démarrage et arrêt
Yonel Grusson 25
Résultat de l’installationLes services NT : Démarrage et arrêt
Yonel Grusson 26
Résultat de l’installationL’accès aux programmes SQL Server ( par l’interface)
Gestion des services
SQL
Administration de SQL Server (Mode Interface)
Yonel Grusson 27
L’administration de SQL ServerL'administrateur doit :
• Installer et configurer les serveurs• Gérer le stockage (espace disque initial, surveillance de cet espace et son agrandissement éventuellement physique).• Coordonner la création des bases de données et des utilisateurs (la création peut être déléguée).• Gérer la sécurité (accès à SQL et permissions des utilisateurs sur les bases et leurs objets).• Maintenir le système (gestion des sauvegardes, planification des tâches, surveillance des serveurs et des bases, prévention et réaction aux pannes…).• Gérer les données distribuées.
Yonel Grusson 28
L’administration peut se faire :• Soit par l’intermédiaire du SQL• Soit par l’intermédiaire d’une interface
(Enterprise Manager)
Attention : La connexion "SA" (System Administrator) est créé sans mot de passe
L’administration de SQL Server
Yonel Grusson 29
Utilisation du SQL
Pour une étude plus approndie, voir cours SQL
Aperçu
Yonel Grusson 30
Utilisation du SQL
Yonel Grusson 31
Utilisation du SQL
Yonel Grusson 32
Utilisation de Enterprise Manager
Yonel Grusson 33
Création d’une base de données
Yonel Grusson 34
Création d’une base de données
Création de la base de données : Le fichier des données (.mdf)
Yonel Grusson 35
Création d’une base de données
Création de la base de données : Création du journal des transactions (.ldf)
Yonel Grusson 36
Création d’une base de données
Résultat dans l’interface
Yonel Grusson 37
Création d’une base de données
Résultatsur le disque
Yonel Grusson 38
Création d’une table
Yonel Grusson 39
Création d’une table
Yonel Grusson 40
Création d’une table
Yonel Grusson 41
Création d’une table
Les types "CARACTERE" reconnus par SQL-Server sont :
CHAR , CHAR(n) : Chaîne de caractères – 1 octet par caractère – n <= 8000 – L'espace de stockage sera toujours de n octets (ajout d'espace éventuellement).
VARCHAR, VARCHAR (n) : L'espace de stockage varie selon la longueur de la chaîne – L'espace sera au plus égal à n octets.
NCHAR, NCHAR(n), NVARCHAR et NVARCHAR(n) : idem avec des caractères UNICODE – 8000 octets maximum donc 4000 caractères maximum.
TEXT et NTEXT : permet de stocker de grande quantité de texte (résumé de livre par exemple). Jusqu'à 2 147 483 647 octets.
Yonel Grusson 42
Création d’une table
Les types "NUMERIQUE ENTIER" reconnus par SQL-Server sont :
INT (ou INTEGER) : Entier compris entre –231 et + 231 soit sur 4 octets.SMALLINT : Entier compris entre –32768 et +32767 soit sur 2 octets.TINYINT : Entier compris entre 0 et 255 soit sur 1 octet.
Les types "BINAIRE" sont :
BINARY(n) et VARBINARY(n) : Ensemble de bits (n<=8000).
Yonel Grusson 43
Création d’une table
Les types "NUMERIQUE APPROCHE" (en Virgule Flottante) reconnus par SQL-Server sont :
REAL : Compris entre 3,4E-38 et 3,4E+38 avec une précision de 7 chiffres (sur 4 octets).
FLOAT : Compris entre 1,7E-308 et 1,7E+308 avec une précision de 15 chiffres (sur 8 octets).
FLOAT(n) : Le nombre d'octets alloué égal n donc augmente ou diminue la précision.
Yonel Grusson 44
Création d’une table
Les types "NUMERIQUE EXACT" reconnus par SQL-Server sont :
DECIMAL(p,s) ou NUMERIC(p,s) : avec "p" représente le nombre de chiffres total et "s" le nombre de chiffres après la virgule.
Les types "DATE" reconnus par SQL-Server sont :
DATETIME : Du 1/1/1753 au 31/12/9999. Sur 8 octets
SMALLDATETIME : Du 1/1/1900 au 6/6/2079. Sur 4 octets
Yonel Grusson 45
Création d’une table
Les types "MONETAIRE" reconnus par SQL-Server sont :
MONEY : Pour les valeurs entre –922337203685477,5808 et +922337203685477,5807.
SMALLMONEY : Pour les valeurs entre –214748,3648 et +214748,36487.
MONEY occupe 2 fois plus d'espace que SMALLMONEY.
Yonel Grusson 46
Création de l’index
Yonel Grusson 47
Création d’une table
Yonel Grusson 48
Ajout de données
Yonel Grusson 49
Ajout de données
Yonel Grusson 50
La SECURITE
1 - La sécurité sous SQL-Server se situe à trois niveaux :
• Le rattachement au domaine dans lequel se situe SQL-Server qui repose sur un ID de connexion (Login ou nom d'accès et un mot de passe),
• La possibilité d’utiliser le SGBD. SQL-Server parlera ici de CONNEXION.
• L'utilisation d'une base de données qui permet de restreindre l'accès ou l'utilisation des objets de la base. SQL-Server parlera ici d’UTILISATEUR.
Yonel Grusson 51
La SECURITE2 - La sécurité peut être implémenté selon 2 modes :
• SQL-Server + Windows NT (mode dit "standard")
SQL-Server est totalement responsable de la gestion et de la maintenance des comptes. C'est la méthode préconisée car elle est compatible avec Sybase, SQL Server 4.2, 6.0 et 6.5
• Windows NT seulement (mode dit "intégré")
SQL-Server s’appuie exclusivement sur le système d’authentification du serveur Windows NT.
Le choix entre ces deux modes se fait a l'installation mais peut être modifié.
Yonel Grusson 52
La SECURITE
Modification de la sécurité à l'aide de :"Propriétés de SQL Server"
Yonel Grusson 53
La SECURITE
SQL-Server
Base1
UtilisateurA
Base2
UtilisateurB
BaseN
UtilisateurX
............
UNE Connexion SQL-Server
UNE Connexion NT
Yonel Grusson 54
La SECURITE
Au niveau d'une base de données :
• Un utilisateur est unique
• Un utilisateur est associé à une et une seule connexion
Une connexion quant à elle :
• Est aussi unique
• Peut être rattachée plusieurs utilisateurs
Yonel Grusson 55
La SECURITENouvelle connexion (état initial):
"DOMSQL\GrussonSQL1" s'appuie sur une authentification NT"Sa" s'appuie sur une authentification SQL Server
Yonel Grusson 56
La SECURITE
Nou
velle con
nexion
:
Yonel Grusson 57
La SECURITE
Nou
velle con
nexion
:
Le compte NT doit déjà existé pour installer uneauthentification NT
Yonel Grusson 58
La SECURITE
Nou
velle con
nexion
:
En précisant une base de connexion, vous créez automatiquement un utilisateur portant le même nom sur cette base.Sinon, laisser la base "Master"
Yonel Grusson 59
La SECURITE
Nouvelle connexion (état final) :
Yonel Grusson 60
La SECURITENouvel Utilisateur: Une fois la connexion créée, il est possible d'y rattacher des utilisateurs.
Etat initial : Vous disposez d’une connexion MADRID
Yonel Grusson 61
La SECURITENouvel Utilisateur: État initial sur la base COMIX
Yonel Grusson 62
La SECURITE
Nouvel Utilisateur:
Liste des connexions n’ayant aucun utilisateur pour cette base
Yonel Grusson 63
La SECURITE
Nouvel Utilisateur: État final
Yonel Grusson 64
La SECURITEPermissions de l ’utilisateur nouvellement créer sur les objets de la base :
Yonel Grusson 65
La SECURITEPermissions de l’utilisateur nouvellement créer sur les objets de la base :
Attention : Par défaut l'utilisateur nouvellement crée n'a AUCUN privilège sur les objets de la base
Yonel Grusson 66
La SECURITE
Il est également possible de rattacherun utilisateur à une ou plusieurs bases de données lors de la création de la connexion correspondante.
Yonel Grusson 67
La SECURITEExemple de l'impact des privilèges au travers d'une requête SQL :
Connexion
Yonel Grusson 68
La SECURITE
qui n ’a aucun privilège
Yonel Grusson 69
La SECURITESans autorisation :
Yonel Grusson 70
La SECURITEAutoriser la commande SELECT :
Attention : Le privilège est ici accordé sur la seule table « Album »
Yonel Grusson 71
La SECURITEAvec autorisation :
Yonel Grusson 72
La SECURITE
Une autre solution consiste à donner le rôledb-datareader mais cette fois sur toute la base
Yonel Grusson 73
La SECURITEConnexion/Groupe NT : La notion de groupe n'existe pas dans SQL Server 7. Par contre, il est possible de rattacher une connexion SQL Server à un groupe NT (authentification NT dans ce cas)
Yonel Grusson 74
La SECURITE
Nou
velle con
nexion
:
Yonel Grusson 75
La SECURITE
Nou
velle con
nexion
:
Yonel Grusson 76
La SECURITE
Nouvel Utilisateur :
Tous les membres du groupe NT "UserSQL" pourront utiliser la base "NorthWind" sous l'utilisateur "Commercial"
Yonel Grusson 77
Les ROLES :
– Au niveau du serveur. Ils permettent à des connexions d'avoir des droits administratifs (en particulier par l'intermédiaire des procédure stockées)
– Au niveau des bases de données qui affectent des droits au utilisateurs d'une base de données
– Il est possible de créer des rôles.
La SECURITE
Yonel Grusson 78
Les ROLES : Sur le serveur SQL
La SECURITE
Yonel Grusson 79
Les ROLES : sur les bases de données
La SECURITE