Database
 sql >> Base de données >  >> RDS >> Database

Instructions générales de construction et de déploiement du serveur de base de données

Avoir une liste de contrôle de construction standardisée pour une nouvelle instance de SQL Server peut vous aider à vous assurer que vous n'oubliez pas d'étapes ou de paramètres de configuration importants lorsque vous installez SQL Server, le mettez à jour et le configurez correctement. Ceci est très important pour vous assurer d'obtenir les meilleures performances et évolutivité de votre instance SQL Server.

Mon cours Pluralsight, Installation et configuration de SQL Server 2012, détaille encore plus ce processus. Le cadre général est ci-dessous :

  1. Rack et câbler le serveur
    1. Assurez-vous que chaque bloc d'alimentation est branché sur un circuit d'alimentation différent
    2. Assurez-vous que les câbles réseau sont branchés sur différents commutateurs réseau si possible
  2. Demandez un compte de domaine standard pour le service SQL Server et pour le service SQL Server Agent (ainsi que tous les autres services SQL Server que vous utiliserez, tels que SSIS, SSRS, SSAS)
    1. Vous devrez connaître le nom d'utilisateur et le mot de passe de ces comptes lors de l'installation de SQL Server 2012
    2. Essayez de faire en sorte que ces comptes utilisent des mots de passe qui n'expirent pas
  3. Vérifiez les principaux paramètres du BIOS sur le serveur
    1. Hyper-threading et turbo-boost doivent être activés
    2. La gestion de l'alimentation doit être définie sur le contrôle du système d'exploitation
    3. Les tests de mémoire doivent être désactivés
  4. Installer Windows Server 2012 R2 Standard Edition sur le serveur
    1. Utilisez deux disques internes en RAID 1 avec le contrôleur RAID intégré
      1. Envisagez d'utiliser des disques SSD à cette fin, si possible
      2. Si vous utilisez des disques SSD, vous n'avez pas besoin de les défragmenter
    2. Créez une seule partition, le lecteur C :qui utilise tout l'espace
    3. Modifier la taille du fichier de page Windows à 16 Go, à l'aide du lecteur C :
    4. Modifier le plan d'alimentation de Windows sur "Hautes performances"
      1. Exécutez CPU-Z sur le serveur pour confirmer que les processeurs fonctionnent à pleine vitesse
    5. Remplacez la lettre de lecteur du lecteur optique par Z :
  5. Remplacez le nom NETBIOS sur le serveur par le nom permanent souhaité du serveur
  6. Installer la fonctionnalité .NET 3.51 à partir de Windows Server 2012 R2
  7. Installer Microsoft Update sur le serveur
    1. Ceci est un sur-ensemble de Windows Update
  8. Installer toutes les mises à jour Microsoft et Windows sur le serveur
    1. Cela peut nécessiter plusieurs tours pour obtenir toutes les mises à jour requises
  9. Défragmenter manuellement le lecteur C :
    1. Activer la défragmentation automatique du lecteur C :en utilisant le programme hebdomadaire par défaut
    2. Ne pas autoriser l'ajout automatique de nouveaux lecteurs au programme
  10. Créez une adresse IP statique avec les informations DNS et de passerelle par défaut correctes
  11. Joignez le serveur au domaine Windows approprié
  12. Activer Windows sur le serveur
  13. Installez la dernière version de Dell OMSA sur le serveur
  14. Télécharger la dernière version de Dell Server Update Utility (SUU)
    1. Montez le .iso pour le SUU et exécutez le SUU
    2. Cela garantira que vous disposez des derniers micrologiciels et pilotes pour le serveur
  15. Utiliser Dell OMSA pour créer des baies RAID pour les LUN
    1. Créez un LUN à la fois, puis accédez à Logical Disk Manager pour créer/formater le disque
      1. De cette façon, vous ne serez pas confus quant à savoir lequel est lequel
      2. Créez les baies et les LUN dans l'ordre indiqué ci-dessous
    2. Paramètres PERC généraux dans Dell OMSA
      1. Utiliser la mise en miroir intelligente pour les baies RAID 10
      2. Pas de cache de lecture anticipée
      3. Activer le cache d'écriture différée
      4. La politique de cache doit être activée
      5. Utiliser une unité d'allocation de 64 Ko
  16. Utiliser le gestionnaire de disques logiques de Windows pour créer des disques logiques
    1. Après avoir créé une baie avec OMSA, ouvrez le Gestionnaire de disques
    2. Vous verrez la boîte de dialogue Initialiser le disque
      1. Assurez-vous d'utiliser le style de partition GPT
    3. Après avoir initialisé le disque, faites un clic droit dessus et choisissez Créer un volume simple

    4. Acceptez la valeur par défaut et cliquez sur Suivant

    5. Attribuez la lettre de lecteur appropriée et cliquez sur Suivant

    6. Modifier la taille de l'unité d'allocation à 64 Ko et remplacer le nom du volume par le nom correct
      1. Cliquez sur Suivant
      2. Cliquez sur Terminer

  17. Le nouveau lecteur logique devrait apparaître dans l'Explorateur Windows
  18. Tous les lecteurs logiques nécessaires à l'utilisation de SQL Server doivent être créés avant d'installer SQL Server 2012
  19. Testez les performances de chaque lecteur logique avec CrystalDiskMark
  20. Tester les performances de chaque disque logique avec SQLIO
  21. Créez cette structure de répertoires standard sur chaque lecteur
    1. Lecteurs de données :SQLData
    2. Lecteurs de journaux :SQLLogs
    3. Lecteurs TempDB :TempDB
    4. Lecteurs de sauvegarde :SQLBackups
  22. Utilisez l'éditeur de stratégie de groupe (GPEDIT.MSC) pour accorder ces droits Windows au compte de service SQL Server
    1. Effectuer des tâches de maintenance de volume
      1. VotreDomaine\SQLServerServiceAcct
    2. Verrouiller les pages en mémoire
      1. VotreDomaine\SQLServerServiceAcct
  23. Installer SQL Server 2012 Enterprise Edition
    1. Assurez-vous qu'il n'y a pas de redémarrages en attente, sinon SQL Server 2012 ne s'installera pas
    2. Installez uniquement les composants SQL Server 2012 requis pour cette instance
    3. Utiliser l'authentification en mode mixte
      1. Définir le mot de passe sa sur un mot de passe fort
      2. Ajoutez-vous en tant qu'administrateur SQL
      3. Ajoutez tout autre DBA qui doit être administrateur
    4. Utilisez YourDomain\SQLServerServiceAcct pour le compte de service SQL Server
      1. Le mot de passe est :xxxxxxxxx
    5. Utilisez YourDomain\SQLServerAgentAcct pour le compte SQL Server Agent
      1. Le mot de passe est :xxxxxxxxx
    6. Définir le service SQL Server Agent sur Démarrage automatique
    7. Définir les répertoires par défaut sur les lettres de lecteur et les chemins appropriés
      1. Répertoire de la base de données utilisateur :P:\SQLData
      2. Répertoire des journaux de la base de données utilisateur :L:\SQLLogs
      3. Répertoire de la base de données temporaire :T:\TempDB
      4. Répertoire du journal de la base de données temporaire :T:\TempDB
      5. Répertoire de sauvegarde :N:\SQLBackups
  24. Installer SQL Server 2012 Service Pack 1
    1. Ou le dernier Service Pack publié pour SQL Server 2012
  25. Installer la mise à jour cumulative 6 de SQL Server 2012 Service Pack 1
    1. La mise à jour cumulative est disponible à cet emplacement :
      1. http://support.microsoft.com/kb/2874879/en-us
      2. Assurez-vous d'obtenir la version x64 du package de mise à jour
    2. Défragmenter manuellement le lecteur C :après l'installation
      1. Ceci n'est pas nécessaire si vous utilisez des SSD
  26. Modifier les propriétés au niveau de l'instance de SQL Server 2012
    1. Activer l'optimisation pour les charges de travail ad hoc
      1. Cela permettra à SQL Server d'utiliser moins de mémoire pour stocker les plans de requête ad hoc lors de leur première exécution
    2. Définissez le degré maximal de parallélisme sur le nombre de cœurs physiques dans un nœud NUMA sur votre serveur
    3. Activer la compression de sauvegarde par défaut
      1. Cela utilisera la compression de sauvegarde SQL Server par défaut pour toutes les sauvegardes de base de données
    4. Ajouter l'indicateur de trace 3226 en tant qu'option de démarrage dans SQL Server Configuration Manager
      1. Cela supprimera la journalisation des messages de sauvegarde de base de données réussie dans le journal des erreurs SQL Server
    5. Ajouter l'indicateur de trace 1118 en tant qu'option de démarrage dans SQL Server Configuration Manager
      1. Cela contribuera à réduire les conflits d'allocation dans tempdb
    6. Activer la messagerie de base de données sur l'instance
      1. Cela permettra à SQL Server d'envoyer des notifications par e-mail pour les alertes de l'Agent SQL Server et lorsque les travaux de l'Agent SQL Server échouent
    7. Définir Max Server Memory sur une valeur appropriée, autre que la valeur par défaut
      1. Cette valeur dépend de la quantité de mémoire physique disponible sur le serveur
        1. Cela dépend aussi des composants SQL Server installés
      2. Voici quelques exemples de valeurs :
        1. 96 Go de RAM totale :définissez la mémoire maximale du serveur sur 87 000
        2. 64 Go de RAM totale :définissez la mémoire maximale du serveur sur 56 000
        3. 32 Go de RAM totale :définissez la mémoire maximale du serveur sur 27 000
    8. Créez trois fichiers de données TempDB supplémentaires dans le répertoire T:\TempDB
      1. Tous les fichiers de données TempDB doivent avoir une taille de 4 096 Mo
        1. Définir la croissance automatique sur 1 024 Mo
      2. Le fichier journal TempDB doit faire 1 024 Mo
  27. Confirmez que vous pouvez envoyer un ping à la machine SQL Server à partir d'une autre machine du domaine
  28. À l'aide de SQL Server 2012 Configuration Manager, confirmez que TCP/IP est activé pour l'instance
  29. Confirmez que vous pouvez vous connecter à distance à l'instance SQL Server à l'aide de SSMS sur une autre machine
  30. Créer un opérateur SQL Server sur l'instance
    1. Utilisez DBAdmin avec une adresse e-mail [email protected]
  31. Confirmez que Database Mail fonctionne correctement
    1. Cliquez avec le bouton droit sur Database Mail et envoyez un message de test
  32. Configurer la messagerie de l'agent SQL Server pour utiliser la messagerie de base de données
  33. Créez des alertes de l'Agent SQL Server pour les erreurs suivantes :
    1. Alerte YourServerName – Erreur du 19 septembre :erreur fatale dans la ressource
    2. Alerte YourServerName – Erreur du 20 septembre :erreur fatale dans le processus en cours
    3. Alerte YourServerName – Erreur du 21 septembre :erreur fatale dans le processus de base de données
    4. Alerte YourServerName – Erreur fatale du 22 septembre :intégrité de la table suspecte
    5. Alerte YourServerName – Erreur du 23 sev. :erreur fatale suspecte d'intégrité de la base de données
    6. Alerte YourServerName – Erreur du 24 sév. :Erreur matérielle fatale
    7. Alerte YourServerName – Erreur du 25 septembre :erreur fatale
    8. Alerte YourServerName – Erreur 825 :nouvelle tentative de lecture requise
    9. Alerte YourServerName – Erreur 832 :la page constante a changé
    10. Alerte YourServerName – Erreur 855 :Corruption de mémoire matérielle non corrigible détectée
    11. Alerte YourServerName – Erreur 856 :SQL Server a détecté une corruption de la mémoire matérielle, mais a récupéré la page
  34. Un script générique pour créer ces alertes de l'Agent SQL Server est disponible ici :
    1. Assurez-vous que chaque alerte d'agent a une réponse pour informer l'opérateur DBAdmin
  35. Créez une tâche de l'Agent SQL Server appelée Nightly Free System Cache qui exécute cette commande :
    1. DBCC FREESYSTEMCACHE ('Plans SQL');
    2. Fonctionne tous les soirs à minuit
  36. Téléchargez la dernière version du script de la solution de maintenance SQL Server d'Ola Hallengren :
    1. http://ola.hallengren.com/
    2. Ouvrir le script MaintenanceSolution.sql en étant connecté à l'instance
      1. Modifiez la variable @BackupDirectory en N:\SQLBackups
      2. Exécuter le script pour créer onze nouvelles tâches de l'Agent SQL Server
      3. Pour chaque travail, accédez à la fenêtre de propriété Notifications et demandez au travail d'envoyer un e-mail au groupe DBAdmin si le travail échoue
      4. Pour chaque tâche, créez un calendrier d'exécution.
      5. Voici un calendrier suggéré pour les tâches :
        1. CommandLogCleanup dimanche à minuit
        2. Sauvegarde de la base de données - SYSTEM_DATABASES - FULL Daily à 23h55
        3. Sauvegarde de la base de données – USER_DATABASES – DIFF tous les jours à 12h00
        4. Sauvegarde de la base de données - USER_DATABASES - FULL Daily à 12h00
        5. Sauvegarde de la base de données - USER_DATABASES - LOG toutes les heures
        6. Vérification de l'intégrité de la base de données :SYSTEM_DATABASES samedi à 7h55
        7. Vérification de l'intégrité de la base de données :USER_DATABASES samedi à 8 h 
        8. IndexOptimize – USER_DATABASES dimanche à 20h00
        9. Nettoyage du fichier de sortie dimanche à minuit
        10. sp_delete_backuphistory dimanche à minuit
        11. sp_purge_jobhistory dimanche à 00h00