> For the complete documentation index, see [llms.txt](https://docs.verge.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.verge.io/knowledge-base/fr/system-administration/database-best-practices.md).

# Bonnes pratiques pour les bases de données

L'exécution de bases de données sur VergeOS peut offrir d'excellentes performances lorsqu'il est correctement configuré. Ci-dessous figurent les bonnes pratiques recommandées pour optimiser les performances des bases de données, en particulier pour les bases de données exécutées sur **Microsoft Windows** dans l'environnement VergeOS.

***

## Principaux ajustements pour optimiser les performances

* **Emplacement de sauvegarde**: Stockez toujours les sauvegardes de la base de données directement dans VergeOS. Cela garantit un accès en lecture/écriture plus rapide et de meilleures performances globales pour les opérations de sauvegarde.
* **Déchiffrer les bases de données avant la migration**: Si votre base de données est chiffrée, il est recommandé de **déchiffrer** la base de données avant de la migrer vers VergeOS. Cela évite une éventuelle dégradation des performances pendant le transfert initial et garantit un fonctionnement optimal dans l'environnement.
* **Désactiver la défragmentation automatique**: La tâche de défragmentation automatique intégrée à Windows **tâche de défragmentation automatique** doit être désactivée. La défragmentation sur des disques virtuels peut entraîner des problèmes de performance, en particulier sur les SSD ou dans des environnements virtuels fortement fragmentés comme VergeOS.
* **Désactiver Windows Defender**: Windows Defender, bien qu'utile pour la sécurité, peut affecter considérablement les performances de la base de données en raison de l'analyse en temps réel. Désactivez Defender ou, à tout le moins, **exclure** les éléments suivants de l'analyse :
  * Le chemin ou le lecteur où se trouvent **les fichiers de base de données** sont stockés
  * **Fichiers journaux** et **lecteurs des journaux de transactions**
* **Désactiver les services Windows non essentiels**: De nombreux services Windows sont inutiles pour les performances de la base de données et peuvent consommer des ressources précieuses. Désactivez tous les services non essentiels pour libérer du CPU, de la RAM et des E/S disque pour les opérations de base de données.
* **Surallocation des cœurs**: Évitez de surallouer les cœurs CPU, surtout si plusieurs VM de bases de données partagent les mêmes cœurs CPU physiques. La surallocation peut entraîner une contention des ressources, réduisant les performances de chaque VM.
* **Désactiver Fsync sur les lecteurs de journaux**: Pour les disques virtuels utilisés pour stocker les journaux, envisagez de désactiver **Fsync**. Cela peut améliorer les performances des E/S en réduisant la fréquence des synchronisations forcées des données lors des écritures de journaux. Vous pouvez le faire en modifiant les paramètres du disque virtuel concerné dans VergeOS.

  <div data-gb-custom-block data-tag="hint" data-style="warning" class="hint hint-warning"><p><strong>Important</strong></p><p>La désactivation de Fsync peut entraîner une perte de données en cas de panne. Assurez-vous que cela correspond à la tolérance de votre base de données aux compromis entre performances des E/S et fiabilité.</p></div>
* **Limites d'allocation des cœurs**: Limitez le nombre de cœurs alloués à une VM de base de données afin qu'il ne dépasse pas les **cœurs physiques disponibles sur un seul socket CPU**. Ne comptez pas les cœurs hyperthreadés dans ce calcul.

  **Exemple**: Sur un système à deux sockets avec 8 cœurs physiques par socket (16 cœurs, 32 threads), limitez la VM à utiliser **8 cœurs** (1 socket physique), en évitant la surallocation sur plusieurs sockets.
* **Allocation de mémoire**: Assurez-vous que la mémoire allouée à la VM de base de données ne dépasse pas la mémoire physique disponible sur un seul socket CPU. Cela garantit une localisation des accès mémoire et réduit la latence d'accès à la mémoire.

***

## Optimisations réseau et stockage

* **Utiliser les pilotes VirtIO**: Pour les performances réseau, il est recommandé d'utiliser **les pilotes réseau VirtIO** chaque fois que possible. Ces pilotes sont optimisés pour les performances dans les environnements virtuels et offrent un débit nettement supérieur à celui des pilotes émulés (par ex. e1000).

  Vous pouvez télécharger les derniers pilotes VirtIO stables à partir du lien suivant : [Télécharger les pilotes VirtIO](https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso)
* **Surveiller les E/S disque**: Surveillez régulièrement les performances des E/S disque, en particulier sur les volumes à forte activité d'écriture comme les fichiers journaux ou les fichiers tempdb, et envisagez d'allouer des disques SSD ou NVMe haute performance si nécessaire.

En suivant ces bonnes pratiques, vous pouvez optimiser les performances et la fiabilité de vos systèmes de bases de données exécutés sur VergeOS. Si des ajustements supplémentaires sont nécessaires, VergeOS prend en charge d'autres fonctionnalités qui peuvent aider à surveiller et à améliorer les performances des VM en temps réel.

***

{% hint style="info" %}
**Informations sur le document**

* Dernière mise à jour : 2024-08-29
* Version de vergeOS : 4.12.6
  {% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.verge.io/knowledge-base/fr/system-administration/database-best-practices.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
