CLIENTSERVEUR SQL SERVER 7 Yonel Grusson 1 SQL

  • Slides: 79
Download presentation
CLIENT/SERVEUR SQL SERVER 7 Yonel Grusson 1

CLIENT/SERVEUR SQL SERVER 7 Yonel Grusson 1

SQL SERVER 7 PLAN • • Présentation Installation Résultat de l'installation L'administration – Par

SQL SERVER 7 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é Yonel Grusson 2

SQL SERVER 7 - Présentation SQL-Server est un SGBD Client-Serveur (cf le cours) qui

SQL SERVER 7 - Présentation SQL-Server est un SGBD Client-Serveur (cf le cours) qui utilise TRANSACT-SQL dans ses transactions. Client Requête (Transact-SQL) Résultats (seulement les donnes) Application CLIENTE Yonel Grusson Serveur Base de Données Application SERVEUR : SQL-SERVER 3 (SGBD)

SQL SERVER 7 - Présentation • L’application cliente s'occupe du traitement et de la

SQL SERVER 7 - Présentation • 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). Yonel Grusson 4

Installation de SQL SERVER Configuration requise : • Processeur : Intel (Pentium) ou Alpha.

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 SP 1 ou ultérieur (nécessaire pour l'affichage de l'Aide en ligne). Attention : SP 4 et IE 4 doivent être installés avant SQL Server. 5 Yonel Grusson

Installation de SQL SERVER Yonel Grusson 6

Installation de SQL SERVER Yonel Grusson 6

Installation de SQL SERVER Installation locale Yonel Grusson 7

Installation de SQL SERVER Installation locale Yonel Grusson 7

Installation de SQL SERVER Yonel Grusson 8

Installation de SQL SERVER Yonel Grusson 8

Installation de SQL SERVER Variante : Installation à distance (depuis la source) Non modifiables

Installation de SQL SERVER Variante : Installation à distance (depuis la source) Non modifiables Yonel Grusson 9

Installation de SQL SERVER Yonel Grusson 10

Installation de SQL SERVER Yonel Grusson 10

Installation de SQL SERVER Choix important car irréversible sans une reconstruction complète de TOUTES

Installation de SQL SERVER Choix important car irréversible sans une reconstruction complète de TOUTES les bases Yonel Grusson 11

Installation de SQL SERVER Yonel Grusson 12

Installation de SQL SERVER Yonel Grusson 12

Installation de SQL SERVER Yonel Grusson 13

Installation de SQL SERVER Yonel Grusson 13

Installation de SQL SERVER Ce compte doit exister dans la base des comptes du

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 14

Installation de SQL SERVER Variante : Il est possible de différencier les comptes entre

Installation de SQL SERVER Variante : Il est possible de différencier les comptes entre les 2 services. Yonel Grusson 15

Installation de SQL SERVER Yonel Grusson 16

Installation de SQL SERVER Yonel Grusson 16

Résultat de l’installation Le répertoire système (SQL Server proprement dit) BINN : Pour les

Résultat de l’installation Le 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 Yonel Grusson UPGRADE : Pour la mise à niveau de SQL 17 6. 5 vers SQL 7. 0

Résultat de l’installation Les bases de données (1) BACKUP : Pour les fichiers de

Résultat de l’installation Les 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 Yonel Grusson 18

Résultat de l’installation Les bases de données (2) Yonel Grusson 19

Résultat de l’installation Les bases de données (2) Yonel Grusson 19

Résultat de l’installation Les bases de données (stockage physique) Base de données Fichier de

Résultat de l’installation Les bases de données (stockage physique) Base de données Fichier de données principal (. mdf) Eventt un ou plusieurs fichiers secondaires (. ndf) Un ou plusieurs fichiers journaux des transactions (. ldf) UNE ETENDUE = 8 Pages de 8 Ko UNE Page = 8 Ko Yonel Grusson Les tables et les index sont stockés dans des ETENDUES. Une ETENDUE = 8 PAGES de 8 Ko Une ligne ne peut pas s’étendre sur plusieurs pages et sa taille maximum est de 20 8060 octets.

Résultat de l’installation La Bases des comptes NT : Ce compte existait dans la

Résultat de l’installation La 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 21

Résultat de l’installation Les services NT : 3 services sont installés Yonel Grusson 22

Résultat de l’installation Les services NT : 3 services sont installés Yonel Grusson 22

Résultat de l’installation Les services NT installés sont : MS SQL Server : Ce

Résultat de l’installation Les 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). SQLServer. Agent : Ce service gère les tâches planifiées, les alertes et la réplication des bases de données. Yonel Grusson 23

Résultat de l’installation Les services NT : Démarrage et arrêt Yonel Grusson 24

Résultat de l’installation Les services NT : Démarrage et arrêt Yonel Grusson 24

Résultat de l’installation Les services NT : Démarrage et arrêt Yonel Grusson 25

Résultat de l’installation Les services NT : Démarrage et arrêt Yonel Grusson 25

Résultat de l’installation L’accès aux programmes SQL Server ( par l’interface) SQL Gestion des

Résultat de l’installation L’accès aux programmes SQL Server ( par l’interface) SQL Gestion des services Yonel Grusson Administration de SQL Server (Mode Interface) 26

L’administration de SQL Server L'administrateur doit : • Installer et configurer les serveurs •

L’administration de SQL Server L'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 27

L’administration de SQL Server L’administration peut se faire : • Soit par l’intermédiaire du

L’administration de SQL Server 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 Yonel Grusson 28

Utilisation du SQL Aperçu Pour une étude plus approndie, voir cours SQL Yonel Grusson

Utilisation du SQL Aperçu Pour une étude plus approndie, voir cours SQL Yonel Grusson 29

Utilisation du SQL Yonel Grusson 30

Utilisation du SQL Yonel Grusson 30

Utilisation du SQL Yonel Grusson 31

Utilisation du SQL Yonel Grusson 31

Utilisation de Enterprise Manager Yonel Grusson 32

Utilisation de Enterprise Manager Yonel Grusson 32

Création d’une base de données Yonel Grusson 33

Création d’une base de données Yonel Grusson 33

Création d’une base de données Création de la base de données : Le fichier

Création d’une base de données Création de la base de données : Le fichier des données (. mdf) Yonel Grusson 34

Création d’une base de données Création de la base de données : Création du

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 35

Création d’une base de données Résultat dans l’interface Yonel Grusson 36

Création d’une base de données Résultat dans l’interface Yonel Grusson 36

Création d’une base de données Résultat sur le disque Yonel Grusson 37

Création d’une base de données Résultat sur le disque Yonel Grusson 37

Création d’une table Yonel Grusson 38

Création d’une table Yonel Grusson 38

Création d’une table Yonel Grusson 39

Création d’une table Yonel Grusson 39

Création d’une table Yonel Grusson 40

Création d’une table Yonel Grusson 40

Création d’une table Les types "CARACTERE" reconnus par SQL-Server sont : CHAR , CHAR(n)

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 41

Création d’une table Les types "NUMERIQUE ENTIER" reconnus par SQL-Server sont : INT (ou

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 42

Création d’une table Les types "NUMERIQUE APPROCHE" (en Virgule Flottante) reconnus par SQL-Server sont

Création d’une table Les types "NUMERIQUE APPROCHE" (en Virgule Flottante) reconnus par SQL-Server sont : REAL : Compris entre 3, 4 E-38 et 3, 4 E+38 avec une précision de 7 chiffres (sur 4 octets). FLOAT : Compris entre 1, 7 E-308 et 1, 7 E+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 43

Création d’une table Les types "NUMERIQUE EXACT" reconnus par SQL-Server sont : DECIMAL(p, s)

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 44

Création d’une table Les types "MONETAIRE" reconnus par SQL-Server sont : MONEY : Pour

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 45

Création de l’index Yonel Grusson 46

Création de l’index Yonel Grusson 46

Création d’une table Yonel Grusson 47

Création d’une table Yonel Grusson 47

Ajout de données Yonel Grusson 48

Ajout de données Yonel Grusson 48

Ajout de données Yonel Grusson 49

Ajout de données Yonel Grusson 49

La SECURITE 1 - La sécurité sous SQL-Server se situe à trois niveaux :

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 50

La SECURITE 2 - La sécurité peut être implémenté selon 2 modes : •

La SECURITE 2 - 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 Yonel Grusson 51 peut être modifié.

La SECURITE Modification de la sécurité à l'aide de : "Propriétés de SQL Server"

La SECURITE Modification de la sécurité à l'aide de : "Propriétés de SQL Server" Yonel Grusson 52

La SECURITE UNE Connexion NT UNE Connexion SQL-Server . . . Base 1 Base

La SECURITE UNE Connexion NT UNE Connexion SQL-Server . . . Base 1 Base 2 Utilisateur. A Utilisateur. B Yonel Grusson Base. N Utilisateur. X 53

La SECURITE Au niveau d'une base de données : • Un utilisateur est unique

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 54

La SECURITE Nouvelle connexion (état initial): "DOMSQLGrusson. SQL 1" s'appuie sur une authentification NT

La SECURITE Nouvelle connexion (état initial): "DOMSQLGrusson. SQL 1" s'appuie sur une authentification NT "Sa" s'appuie sur une authentification SQL Server Yonel Grusson 55

La SECURITE Nouvelle connexion : Yonel Grusson 56

La SECURITE Nouvelle connexion : Yonel Grusson 56

La SECURITE Nouvelle connexion : Le compte NT doit déjà existé pour installer une

La SECURITE Nouvelle connexion : Le compte NT doit déjà existé pour installer une authentification NT Yonel Grusson 57

La SECURITE Nouvelle connexion : En précisant une base de connexion, vous créez automatiquement

La SECURITE Nouvelle connexion : 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 58

La SECURITE Nouvelle connexion (état final) : Yonel Grusson 59

La SECURITE Nouvelle connexion (état final) : Yonel Grusson 59

La SECURITE Nouvel Utilisateur: Une fois la connexion créée, il est possible d'y rattacher

La SECURITE Nouvel Utilisateur: Une fois la connexion créée, il est possible d'y rattacher des utilisateurs. Yonel Grusson Etat initial : Vous disposez d’une connexion MADRID 60

La SECURITE Nouvel Utilisateur: État initial sur la base COMIX Yonel Grusson 61

La SECURITE Nouvel Utilisateur: État initial sur la base COMIX Yonel Grusson 61

La SECURITE Nouvel Utilisateur: Liste des connexions n’ayant aucun utilisateur pour cette base Yonel

La SECURITE Nouvel Utilisateur: Liste des connexions n’ayant aucun utilisateur pour cette base Yonel Grusson 62

La SECURITE Nouvel Utilisateur: État final Yonel Grusson 63

La SECURITE Nouvel Utilisateur: État final Yonel Grusson 63

La SECURITE Permissions de l ’utilisateur nouvellement créer sur les objets de la base

La SECURITE Permissions de l ’utilisateur nouvellement créer sur les objets de la base : Yonel Grusson 64

La SECURITE Permissions de l’utilisateur nouvellement créer sur les objets de la base :

La SECURITE Permissions 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 65

La SECURITE Il est également possible de rattacher un utilisateur à une ou plusieurs

La SECURITE Il est également possible de rattacher un utilisateur à une ou plusieurs bases de données lors de la création de la connexion correspondante. Yonel Grusson 66

La SECURITE Exemple de l'impact des privilèges au travers d'une requête SQL : Yonel

La SECURITE Exemple de l'impact des privilèges au travers d'une requête SQL : Yonel Grusson Connexion 67

La SECURITE qui n ’a aucun privilège Yonel Grusson 68

La SECURITE qui n ’a aucun privilège Yonel Grusson 68

La SECURITE Sans autorisation : Yonel Grusson 69

La SECURITE Sans autorisation : Yonel Grusson 69

La SECURITE Autoriser la commande SELECT : Yonel Grusson 70 Attention : Le privilège

La SECURITE Autoriser la commande SELECT : Yonel Grusson 70 Attention : Le privilège est ici accordé sur la seule table « Album »

La SECURITE Avec autorisation : Yonel Grusson 71

La SECURITE Avec autorisation : Yonel Grusson 71

La SECURITE Une autre solution consiste à donner le rôle db-datareader mais cette fois

La SECURITE Une autre solution consiste à donner le rôle db-datareader mais cette fois sur toute la base Yonel Grusson 72

La SECURITE Connexion/Groupe NT : La notion de groupe n'existe pas dans SQL Server

La SECURITE Connexion/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 73

La SECURITE Nouvelle connexion : Yonel Grusson 74

La SECURITE Nouvelle connexion : Yonel Grusson 74

La SECURITE Nouvelle connexion : Yonel Grusson 75

La SECURITE Nouvelle connexion : Yonel Grusson 75

La SECURITE Nouvel Utilisateur : Tous les membres du groupe NT "User. SQL" pourront

La SECURITE Nouvel Utilisateur : Tous les membres du groupe NT "User. SQL" pourront utiliser la base "North. Wind" sous l'utilisateur "Commercial" Yonel Grusson 76

La SECURITE Les ROLES : – Au niveau du serveur. Ils permettent à des

La SECURITE 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. Yonel Grusson 77

La SECURITE Les ROLES : Sur le serveur SQL Yonel Grusson 78

La SECURITE Les ROLES : Sur le serveur SQL Yonel Grusson 78

La SECURITE Les ROLES : sur les bases de données Yonel Grusson 79

La SECURITE Les ROLES : sur les bases de données Yonel Grusson 79