Bonjour
Lorsque je restaure sur un serveur B une sauvegarde complète réalisée sur un Serveur A est ce que les index et les statistiques doivent être recalculés ?
Merci
Bonjour
Lorsque je restaure sur un serveur B une sauvegarde complète réalisée sur un Serveur A est ce que les index et les statistiques doivent être recalculés ?
Merci
Bonjour,
Les indexes sont conservés dans leur état de fragmentation lors de la restauration, de même pour les statistiques : si elles sont périmées, ce sera pareil à la restauration.
C'est-à-dire que si vous envisagez une défragmentation de vos indexes sur le serveur A, vous devez la réaliser aussi sur le serveur B.
Pareillement, si vous envisagez une mise à jour de vos statistiques sur le serveur A, faites le sur le serveur B.
@++![]()
Bonjour,
Je me rends compte que l'exposé de ma question était un peu succinct. Je vais donc développer un peu :
Serveur A :
Quotidiennement :
- Recalcul des index si nécessaire (d'apres une proc publiée par Frédéric BROUARD).
- Recalcul des stats
- Sauvegardes
A noter que la taille des unités d'allocation des disques est de 4 ko.
Serveur B :
Restauration de la sauvegarde.
Le disque des données est formaté avec des unités de 64 ko.
Dans la mesure ou les unités d'allocation sont différentes entre les 2 serveurs, je m'interroge sur l'apparition ou non d'un phénomène de fragmentation lors de la restauration.... Du coup, je me demande s'il faut ou non recalculer les index de la base après restauration ?
J'ai fait le choix de formater le serveur B avec des unités de 64ko pour optimiser les lectures (1 page par accès disque)...
Effectivement il y a une différence entre la fragmentation des indexes et le fragmentation des pages de votre base de données.
Quand on parle de la fragmentation physique des indexes, on parle aussi de fragmentation externe. Celle-ci se "produit" lorsque l'ordre logique des pages de l'index est incorrect. Les nouvelles valeurs de clé de l'index sont alors insérées dans de nouvelles pages d'index, qui désordonnent l'ordre original de la clé de l'index.
Quand on parle de fragmentation logique de l'index, on parle aussi de fragmentation interne : c'est le cas lorsque la quantité de données stockée dans les pages de l'index est plus petite que la quantité maximale de données que peut stocker une page.
Les pages de données de SQL Server font 8Ko, et chacune d'entre elle est stockée dans une extension, c'est-à-dire un groupe de 8 pages, donc un espace de 64Ko.
Votre serveur B est donc proprement configuré, mais ce n'est pas le cas de votre serveur A.
@++ ;
Oui Elsuket; j'ai pu imposer le formatage du serveur B mais malheureusement je ne peux rien faire pour le Server A...
Du coup lorsque je passe une sauvegarde A vers B dois je recalculer mes index ? Y-a-t-il quelque chose à faire pour les données ?
Merci
Oui, puisque vous n'avez pas la même configuration sur les deux serveurs.
Reconstruisez donc vos indexes avec l'instruction CREATE INDEX et l'option DROP_EXISTING à ON.
@++![]()
Partager