Découvrez les bonnes pratiques, conseils et astuces concernant le développement, l'administration et l'architecture de Microsoft SQL Server 2008 et des versions antérieures ! Cette présentation est conçue aussi bien pour les administrateurs de base de données ou développeurs de Microsoft SQL Server que pour les DBAs occassionnels.
OLTP : OnLineTransactionProcessing base de données transactionnelles OLAP : OnLineAnalyticalProcessing base de données décisionnellesHA : High AvaibilityDR : Disaster Recovery
Montrer FastTrack
Montrer FastTrack
Montrer FastTrack
\\Paramètres Windows\\Paramètres de sécurité\\Stratégies locales\\Attribution des droits utilisateur\\Dans SQL Server, les fichiers de données peuvent être initialisés instantanément. Cela permet une exécution rapide Créer une base de données. Ajouter des fichiers journaux ou de données à une base de données. Augmenter la taille d'un fichier existant (opérations de croissance automatique incluses). Restaurer une base de données ou un groupe de fichiers.L'initialisation instantanée des fichiers n'est disponible que si l'autorisation SE_MANAGE_VOLUME_NAME a été attribuée au compte de service (MSSQLSERVER) SQL Server. Les membres du groupe Administrateur Windows disposent de ce droit et peuvent l'attribuer aux autres utilisateurs en les ajoutant à la stratégie de sécurité Effectuer des tâches de maintenance des volumeshttp://msdn.microsoft.com/fr-fr/library/ms175935.aspx.
Sysprep : http://technet.microsoft.com/fr-fr/library/cc721940(WS.10).aspxL’outil SysPrep prépare une installation de Windows à la duplication, à l'audit et à la livraison au client
Examples: do not just configure, know what they do and how they affect your setupPagefile http://support.microsoft.com/kb/889654/en-usSharepoint collation http://support.microsoft.com/kb/2008668Hi Perf Workloads: http://support.microsoft.com/kb/920093/en-ushttp://msdn.microsoft.com/en-us/sqlserver/bb671432
Mémoire :min server memory = garantie une quantité minimale de mémoire disponible pour le pool de mémoires tamponsmax server memory = SQL Server ne dépasse pas cette valeur http://msdn.microsoft.com/fr-fr/library/ms178067.aspxVérifier si le privilège «Verrouillage des pages en mémoire» est accordéLaisser au moins 2 Go de mémoire à l'OS: Dimensionner par rapport aux autres instances/applications en cours sur votre système Garder à l'esprit que se connecter via RDP et utiliser le Management Studio a besoin de mémoire!ProcesseurLaisser les valeurs par défautMême lorsque vous exécutez plusieurs instances de SQL ServerMasque d’affinité CPU peut être utilisé que si d'autres applications sont executées sur le système :Assurez-vous que chaque processeur dispose de suffisamment de mémoire locale (NUMA) : http://msdn.microsoft.com/library/ms180954(v=SQL.105).aspxVérifier le « HBA/Network card balance »Référence : http://msdn.microsoft.com/library/ms186255(v=SQL.105).aspxSécuritéUtiliser l'authentification Windows uniquementMais il arrive souvent que le dernier recours soit le compte 'sa'Assurez-vous que 'sa' a un mot de passe qui respecte des exigences de complexité :Comporter au moins six caractèresContenir des caractères provenant de trois des quatre catégories suivantes :Caractères majuscules anglais (A à Z)Caractères minuscules anglais (a à z)Chiffres en base 10 (0 à 9)Caractères non alphabétiques (par exemple, !, $, #, %)Echecs d'audit et réussites de connexionsRend dépannage facileAssurez-vous que le groupe DBA du domaine a accès au serveurComptes intégrés \\ l’administrateur ne devrait pas avoir directement les droits sysadmi:SQL Server 2008 c'est par défautSQL Server 2005 (enlever les comptes intégrés \\ administrateurs manuellement. S’assurer que les droits sysadmin sont accordés aux bons utilisateurs!)Propriété AuditLevel :http://msdn.microsoft.com/fr-fr/library/ms136321(v=sql.90).aspx ConnectionsValeurs par défautConfiguration de la base de donnéesTaux de remplissage par défaut de l’index à 70 :Aide à réduire le fragmentation d’indexRecommandé pour SharePointCompresser la sauvegardeA utiliser tout simplement Vérifier l’emplacement par défaut des sauvegardesOu donc ?AvancéesNe pas activer FILESTREAM pour l'accès Transact-SQL si cela n’est pas nécessaireConfigurer MAXDOP à 1 pour de l’OLTP (ERP/CRM/SharePoint/SAP,...)Pour de l’OLAP, MAXDOP doit au moins être à 2La configuration manuel de MAXDOP nécessite de veiller à ce que chaque thread bénéficie de suffisamment de mémoirePermissions
Mémoire :
Mémoire :
Faire des stratégies (Policies) pour chaque paramètre, ainsi il est possible de vérifier si toutes les instances SQL centralisées répondent aux paramètres par défautGouverneur de ressources :permet de gérer la charge de travail et les ressources SQL Server en spécifiant des limites concernant la consommation de ressources par les requêtes entrantesNe pas changer les paramètres par défaut sauf dans le cas d’une optimisation pour un DWH FastTrackUtilisation de la connexion administrateur dédiée (DAC) pour se connecter : Par défaut, le DAC écoute le port TCP 1434 :sqlcmd –Sadmin:’connectstring’Mgmt Studio Query Editor admin:’connectstring’ Activer les connexions réseaux avec sp_configure :sp_configure 'remoteadmin connections', 1;Référence : http://msdn.microsoft.com/fr-fr/library/ms189595.aspx
DBCC CHECKDB pour les contrôles de cohérenceA effectuer toujours avant une sauvegarde complèteElle demande beaucoup de ressourcesA effectuer pour de grands blocs de donnéesExécution périodique de la commande sans optionDBCC CHECKDB avec l’option WITH PHYSICAL_ONLYTrès utile pour des contrôles réguliers sur la productionRéduit le temps de la commande sur de grosses bases de donnéesReconstruction : ALTER INDEX…REBUILDCréer une copie complète de l’indexA besoin de 1,2x la taille initiale au cours de la recréationVersion entreprise effectue en ligne (online) sans bloquer l’accès à l’indexRecommander pour les taux de fragmentation supérieur à 30%Réorganisation : ALTER INDEX…REORGANIZEDéfragmentation interne de l’index par réorganisation des entréesPas aussi efficace Toujours en ligneRecommander pour les taux de fragmentation entre 10% et 30%
StatistiquesLes statistiques connaissent l'arrangement des données dans les colonnesEssentiel pour l‘optimiseur de requête pour générer des plans d'exécutionLa manière la plus facile est de créer et maintenir automatiquement les statistiques avec AUTO_CREATE_STATISTICS & AUTO_UPDATE_STATISTICSRecommandation : A maintenir avec un job ou un plan de maintenanceHistoriquessp_delete_backuphistory : historique des sauvegarde et restaurationsp_purge_jobhistory : enregistrements des tâches sp_maintplan_delete_log : log pour les plans de maintenancesp_syspolicy_purge_history : historique des évaluations de stratégies
VLF : Each transaction log file is divided logically into smaller segments called virtual log files. Virtual log files are the unit of truncation for the transaction log. When a virtual log file no longer contains log records for active transactions, it can be truncated and the space becomes available to log new transactions.Pré-allocation des fichiers de donnéesEvite la fragmentation des fichiers Pré dimensionner le fichier de transaction logUtilisez un incrément raisonnable pour l’autogrowChoisir les paramètres de correction automatiqueAuto_Close = falseAuto_Shrink = false Auto_Createstatistics = trueAuto_Updatestatistics = true
SQL Server 2005 SP4: Technical support continues till 04/12/2016, yet mainstream (hotfix) support ends as of 04/12/2011; options for hotfix support after 04/12/2011:Continue with self-helpUpgrade to the latest supported service pack for SQL Server 2005 or SQL Server 2008 or SQL Server 2008 R2Extended hotfix support agreement