Administration de Microsoft SQL Server
Administration de Microsoft SQL Server
Administration
[Link]@[Link]
Administration de SQL Server
Pages
Étendue
• Un ensemble de 8 pages
• 1 Page = 8 Ko | 8 Pages = 64 Ko
• Utilisé pour suivre combien d'espace libre est disponible sur les pages
• Page interne spéciale sur un fichier de données qui suit toutes les allocations d'extent pour les tables, les index,
et partitions
• En gros, faisons savoir à SQL Server quelle étendue appartient à quelle entité spécifique.
• PFS, GAM et SGAM aident SQL Server à déterminer où se trouve l'espace libre et combien il y en a.
qu'il peut l'allouer de manière appropriée sans avoir à scanner toutes les pages
• Les pages et index IAM aident SQL Server à exécuter des requêtes
• L'essentiel est que ces quelques pages aident à maintenir un "répertoire" interne pour SQL Server.
être en mesure de trouver ce dont il a besoin rapidement et de revenir en arrière avec le moins de pages possible
----------------
Fichiers de données
• L'extension de fichier est .Mdf pour le premier fichier et .Ndf pour les fichiers supplémentaires.
• Séparer les fichiers Log et TempDB ; considérez cela comme une exigence
Groupes de fichiers
• (Transaction incomplète)
• Doit mettre le fichier journal sur un disque séparé et avec de bonnes performances comme RAID 10 ou 5
Pourquoi ? Parce que toute transaction entre d'abord dans la RAM, puis dans le fichier journal, et si elle est validée.
la transaction sera écrite dans le fichier de données donc le fichier journal est le traitement le
transactions
2 Types
• Explicite
TempDB
• Ces pages internes aident SQL Server à allouer/suivre l'espace pour des objets tels que
tables. Par conséquent, lorsque la contention est réduite, la performance est augmentée.
• Empêche les fichiers de base de données d'être "réinitialisés" ou "remplis de zéros" lors de leur création et de leur croissance
• Créer des fichiers de base de données plus rapidement signifie que la reconstruction de TempDB est plus rapide.
• augmentation de performance
• N'affecte pas les fichiers journaux, s'applique uniquement aux fichiers de données
• Ne fonctionne pas avec les bases de données qui utilisent le chiffrement des données transparent (TDE) et quelques autres.
autres règles
DML et DDL
• SÉLECTIONNER
• CRÉER
Principes fondamentaux de la sauvegarde et de la restauration
Modèles de récupération
• Complet - permet la récupération à un instant donné pour toutes les transactions et nécessite T-Log
maintenance
• Opérations enregistrées au minimum - simples
• Enregistré en masse - Les opérations en masse ne sont pas enregistrées, mais les autres le sont, récupération à un instant donné
sauf pour les opérations de chargement en bulk, nécessite un entretien du journal de transactions
• La meilleure pratique est de réaliser une sauvegarde du journal des transactions lors du passage entre le chargement en masse et la sauvegarde complète.
modèles de récupération
Types de sauvegarde
• Complet - effectue une sauvegarde de toutes les pages de la base de données et les "marque" comme sauvegardées.
• Différentiel - sauvegarde de toutes les pages de base de données qui ont changé depuis la dernière sauvegarde complète
sauvegarde
• T-Log - effectue une sauvegarde du journal des transactions ; nécessite qu'au moins une sauvegarde complète ait été effectuée.
fait à l'avance
• FileGroup - effectue une sauvegarde de groupes de fichiers spécifiques
Options de sauvegarde
• COMPRESSION
• COPIE_UNIQUE (à utiliser lorsque vous avez besoin d'une sauvegarde pour le développement - pas dans la chaîne-)
• DIFFERENTIEL
• MIROIR À
• X
• NOINIT | INIT (Ajoute aux sauvegardes - Écrase)
• CRYPTAGE (SQL 2014+ et supérieur)
Options de restauration
• AVEC RÉCUPÉRATION
• VÉRIFIER UNIQUEMENT - vérifie que la sauvegarde est correcte
• HEADERONLY - affiche une liste de sauvegardes sur votre fichier de sauvegarde
• FILELISTONLY - affiche la liste des fichiers de base de données et des fichiers journaux sur votre fichier de sauvegarde (Logique &
Nom physique, groupe de fichiers et d'autres choses formidables)
Restauration de Séquence
DR contre HA
-------------------------------
Sauvegarde de la base de données DBTest1
--------------------------------
Sauvegarder la base de données DBTest1
À disque = N'C:\Backups\DBTest1_DIFF01012013.bak'
AVEC DIFFÉRENTIEL
Code de sauvegarde des journaux
À Disk = N'C:\Backups\DBTest1_Log01012013.trn'
• Instance
• Base de données
• Objets sécurisables - objets qui se voient accorder un accès à
• OS - AUCUN
• Instance - DBs
• Base de données - Tables, vues, schémas, procédures, etc.
Ports
Géré avec Configuration Manager
• Moteur de base de données SQL - 1433 TCP
Les instances nommées de SQL Server utilisent par défaut des ports dynamiques, mais cela peut être modifié.
Connexions au serveur
• Connexion Windows
Rôles de serveur
• Rôles de serveur personnalisés - SQL 2012+ (octroi=accès autorisé, refus=aucun accès, avec
peut donner accès à un autre utilisateur
• Les connexions de serveur sont associées aux rôles de serveur pour les autorisations
Déclencheurs de connexion
• Conteneur logique et propriétaire d'objets tels que des tables, des fonctions, des stockés
procédures
• Peut créer des schémas pour regrouper des objets similaires qui appartiennent à différents
départements par exemple RessourcesHumaines, Ventes, etc
• Peut donner des autorisations au niveau du schéma, ce qui aide à séparer les autorisations.
davantage
• Les schémas sont également utiles dans les environnements d'entrepôt de données où vous voulez
garder
Utilisateurs de la base de données
• REFUSER – refuse l'accès à un principal sur un sécurisable ; cela annule tout GRANT
Orphelinat SQL
• Les identifiants SQL Server ont des SIDs (Identifiant de Sécurité)
• Ce SID est créé lorsque le compte est créé et est unique sur chaque serveur
parce qu'il est généré aléatoirement
• Des problèmes surviennent lorsque vous déplacez des bases de données vers d'autres serveurs car elles peuvent
a déjà le même identifiant SQL, ou s'il est créé, il aura un SID différent
• Donc, l'utilisateur de la base de données n'est plus associé à la connexion
• Utiliser sp_change_users_login
• Utilisez sp_help_revlogin - pour de nombreux connexions qui doivent être corrigées, particulièrement utile
pour les migrations
• Lorsqu'un objet est accédé par le biais d'une chaîne, SQL Server compare d'abord le
propriétaire de l'objet au propriétaire de l'objet appelant. C'est le lien précédent dans
la chaîne. Si les deux objets ont le même propriétaire, les autorisations sur l'objet référencé
les objets ne sont pas évalués.
• L'utilisateur de la base de données n'a pas de connexion sur le serveur et ne peut donc pas avoir d'utilisateurs orphelins.
• Une base de données est considérée comme une entité de travail indépendante qui est "contenue" et
séparer du serveur
**Avertissement**
• Les utilisateurs de la DB contenue auront accès aux bases de données avec l'utilisateur invité activé
Types de réplication
• APERÇU : réplique l'ensemble des données
• TRANSACTIONNEL : commence à partir d'une réplication instantanée et au fil du temps
réplique uniquement les données modifiées
• LA FUSION : commence par une réplication instantanée, puis chaque base de données est mise à jour.
séparément jusqu'à ce que les bases de données soient comparées et que les différences entre elles soient
transféré
Article : unité de base de la réplication SQL Server. L'article peut se composer de tables, de procédures stockées.
procédures et vues.
Publications : Une publication est une collection logique d'articles.
L'éditeur : est une instance de base de données qui rend les données disponibles à d'autres emplacements via
Réplication SQL Server à répliquer
Distributeur : transfère une publication.
Agent distributeur :
Abonné : Une instance de base de données qui reçoit des données d'une publication.
Types de publication :
Publication instantanée :
L'éditeur envoie un instantané des données publiées aux abonnés à des intervalles programmés.
Publication transactionnelle :
L'Éditeur diffuse des transactions aux Abonnés après qu'ils ont reçu un instantané initial de
les données publiées.
Publication Pair-à-Pair
La publication Peer-Peer permet une réplication multi-maître. L'éditeur diffuse des transactions à tous
les pairs dans la topologie. Tous les nœuds pairs peuvent lire et écrire des modifications et les modifications sont
propagé à tous les nœuds de la topologie.
Fusionner la publication :
Le Publisher et les Abonnés peuvent mettre à jour les données publiées indépendamment après le
Les abonnés reçoivent un aperçu initial des données publiées. Les modifications sont fusionnées périodiquement.
Microsoft SQL Server Compact Edition ne peut s'abonner qu'aux publications de fusion.
relativement facile à configurer, peut offrir un basculement automatique en mode haute sécurité, etc. Base de données
la mise en miroir peut être combinée avec d'autres options de récupération après sinistre telles que le clustering, le transport de journaux,
et réplication
• Clustering de basculement
• Groupes de disponibilité
• Permet une haute disponibilité / récupération après sinistre d'un groupe de bases de données définies comme
un « Groupe de Disponibilité »
• Les bases de données sont dupliquées, donc l'empreinte de stockage augmente ; mais aussi
fournit une autre copie de la base de données
• Chaque serveur a des bases de données système séparées et une sécurité différente.
• Les répliques peuvent être rendues "Lecture-Seule" pour décharger les demandes de lecture (proche de la charge)
Équilibre
• Réparation automatique de la page
Pré-requis
• Édition Entreprise SQL - cela peut changer avec 2016
• SQL 2012+ et les groupes de disponibilité doivent être activés dans le gestionnaire de configuration SQL
• FCI–Instance de Cluster de Basculement (SQL installé en tant que service dans le cluster)
• Les services sont hébergés dans un WSFC et un noeud particulier du cluster fournit
les ressources matérielles pour ces services
• Peut héberger plusieurs FCI, peut être combiné avec des groupes de disponibilité
• Les bases de données ne sont pas protégées, elles sont sur un stockage partagé et utilisées par le FCI.
• Une instance ne peut être hébergée que sur un seul nœud à la fois ; ce n'est pas du répartition de charge.
• SQL Server