Paramètres de serveur dans Azure Database pour MariaDB

Important

Azure Database for MariaDB est en voie de mise hors service. Nous vous recommandons vivement de migrer vers Azure Database pour MySQL. Pour plus d’informations sur la migration vers Azure Database pour MySQL, consultez Qu’est-ce qui se passe dans Azure Database for MariaDB ?.

Cet article fournit des considérations et des lignes directrices pour la configuration des paramètres de serveur dans Azure Database pour MariaDB.

Que sont les paramètres du serveur ?

Le moteur MariaDB fournit de nombreux paramètres et variables de serveur différents qui peuvent être utilisés pour configurer et régler le comportement du moteur. Certains paramètres peuvent être définis dynamiquement pendant le runtime, tandis que d’autres sont « statiques », ce qui nécessite un redémarrage du serveur pour les appliquer.

Azure Database pour MariaDB expose la possibilité de modifier la valeur des différents paramètres du serveur MariaDB à l’aide du Portail Azure, d’Azure CLI et de PowerShell pour répondre aux besoins de votre charge de travail.

Paramètres de serveur configurables

La liste des paramètres de serveur pris en charge s’allonge en permanence. Utilisez l’onglet Paramètres du serveur du Portail Azure pour afficher la liste complète et configurer les valeurs des paramètres du serveur.

Reportez-vous aux sections suivantes pour en savoir plus sur les limites des différents paramètres de serveur couramment mis à jour. Les limites sont déterminées par le niveau tarifaire et vCores du serveur.

log_bin_trust_function_creators

Dans Azure Database for MariaDB, les journaux binaires sont toujours activés (c.-à-d. que log_bin est défini sur ON). Si vous souhaitez utiliser des déclencheurs, vous obtiendrez une erreur similaire à Vous n’avez pas le SUPER privilège et la journalisation binaire est activée (vous pouvez utiliser la variable log_bin_trust_function_creators moins sécurisée).

Le format de journalisation binaire est toujours ROW et toutes les connexions au serveur utilisent TOUJOURS la journalisation binaire basée sur les lignes. Avec la journalisation binaire basée sur les lignes, les problèmes de sécurité n’existent pas et la journalisation binaire ne peut pas s’arrêter, ce qui vous permet de définir log_bin_trust_function_creators sur TRUE de manière sécurisée.

innodb_buffer_pool_size

Consultez la documentation MariaDB pour en savoir plus sur ce paramètre.

Serveurs prenant en charge jusqu’à 4 To de stockage

Niveau tarifaire vCore(s) Valeur par défaut (octets) Valeur minimale (octets) Valeur maximale (octets)
De base 1 872415232 134217728 872415232
De base 2 2684354560 134217728 2684354560
Usage général 2 3758096384 134217728 3758096384
Usage général 4 8053063680 134217728 8053063680
Usage général 8 16106127360 134217728 16106127360
Usage général 16 32749125632 134217728 32749125632
Usage général 32 66035122176 134217728 66035122176
Usage général 64 132070244352 134217728 132070244352
Mémoire optimisée 2 7516192768 134217728 7516192768
Mémoire optimisée 4 16106127360 134217728 16106127360
Mémoire optimisée 8 32212254720 134217728 32212254720
Mémoire optimisée 16 65498251264 134217728 65498251264
Mémoire optimisée 32 132070244352 134217728 132070244352

Serveurs prenant en charge jusqu’à 16 To de stockage

Niveau tarifaire vCore(s) Valeur par défaut (octets) Valeur minimale (octets) Valeur maximale (octets)
De base 1 872415232 134217728 872415232
De base 2 2684354560 134217728 2684354560
Usage général 2 7516192768 134217728 7516192768
Usage général 4 16106127360 134217728 16106127360
Usage général 8 32212254720 134217728 32212254720
Usage général 16 65498251264 134217728 65498251264
Usage général 32 132070244352 134217728 132070244352
Usage général 64 264140488704 134217728 264140488704
Mémoire optimisée 2 15032385536 134217728 15032385536
Mémoire optimisée 4 32212254720 134217728 32212254720
Mémoire optimisée 8 64424509440 134217728 64424509440
Mémoire optimisée 16 130996502528 134217728 130996502528
Mémoire optimisée 32 264140488704 134217728 264140488704

innodb_file_per_table

Remarque

innodb_file_per_table peut seulement être mise à jour aux niveaux tarifaires Usage général et Mémoire optimisée.

MariaDB stocke la table InnoDB dans différents espaces disque logique en fonction de la configuration que vous avez fournie pendant la création de la table. L’espace disque logique du système est la zone de stockage pour le dictionnaire de données InnoDB. Un espace disque logique de fichier par table contient des données et des index pour une table InnoDB unique, et est stocké dans son propre fichier de données au sein du système de fichiers. Ce comportement est contrôlé par le paramètre de serveur innodb_file_per_table. La définition de innodb_file_per_table sur OFF amène InnoDB à créer des tables dans l’espace disque logique du système. Autrement, InnoDB crée des tables dans des espaces disques logiques de fichier par table.

Azure Database for MariaDB prend en charge jusqu’à 1 To dans un même fichier de données. Si la taille de votre base de données est supérieure à 1 To, vous devez créer la table dans l’espace disque logique innodb_file_per_table. Si vous avez une table d’une taille supérieure à 1 To, vous devez utiliser la table de partition.

join_buffer_size

Consultez la documentation MariaDB pour en savoir plus sur ce paramètre.

Niveau tarifaire vCore(s) Valeur par défaut (octets) Valeur minimale (octets) Valeur maximale (octets)
De base 1 Non configurable dans le niveau de base N/A N/A
De base 2 Non configurable dans le niveau de base N/A N/A
Usage général 2 262 144 128 268435455
Usage général 4 262 144 128 536870912
Usage général 8 262 144 128 1073741824
Usage général 16 262 144 128 2147483648
Usage général 32 262 144 128 4294967295
Usage général 64 262 144 128 4294967295
Mémoire optimisée 2 262 144 128 536870912
Mémoire optimisée 4 262 144 128 1073741824
Mémoire optimisée 8 262 144 128 2147483648
Mémoire optimisée 16 262 144 128 4294967295
Mémoire optimisée 32 262 144 128 4294967295

max_connections

Niveau tarifaire vCore(s) Valeur par défaut Valeur minimale Valeur maximale
De base 1 50 10 50
De base 2 100 10 100
Usage général 2 300 10 600
Usage général 4 625 10 1250
Usage général 8 1250 10 2 500
Usage général 16 2 500 10 5 000
Usage général 32 5 000 10 10000
Usage général 64 10000 10 20000
Mémoire optimisée 2 625 10 1250
Mémoire optimisée 4 1250 10 2 500
Mémoire optimisée 8 2 500 10 5 000
Mémoire optimisée 16 5 000 10 10000
Mémoire optimisée 32 10000 10 20000

Lorsque la limite du nombre de connexions est dépassée, vous pouvez recevoir l’erreur suivante :

ERREUR 1040 (08004) : Trop de connexions

Important

Pour une expérience optimale, nous vous recommandons d’utiliser un regroupement de connexions comme ProxySQL pour gérer efficacement les connexions.

La création de connexions clientes à MariaDB prend du temps et, une fois établies, ces connexions occupent des ressources de base de données, même lorsqu’elles sont inactives. La plupart des applications requièrent de nombreuses connexions à courte durée, ce qui aggrave la situation. Par conséquent, il y a moins de ressources disponibles pour votre charge de travail réelle; ce qui entraîne une diminution des performances. Un regroupement de connexions qui réduit les connexions inactives et réutilise les connexions existantes permet d’éviter cela. Pour en savoir plus sur la configuration de ProxySQL, consultez notre billet de blog.

Notes

ProxySQL est un outil communautaire en open source. Il est pris en charge par Microsoft dans la mesure du possible. Afin d’obtenir un support de production avec une aide faisant autorité, vous pouvez évaluer et contacter le Support produit de ProxySQL.

max_heap_table_size

Consultez la documentation MariaDB pour en savoir plus sur ce paramètre.

Niveau tarifaire vCore(s) Valeur par défaut (octets) Valeur minimale (octets) Valeur maximale (octets)
De base 1 Non configurable dans le niveau de base N/A N/A
De base 2 Non configurable dans le niveau de base N/A N/A
Usage général 2 16 777 216 16384 268435455
Usage général 4 16 777 216 16384 536870912
Usage général 8 16 777 216 16384 1073741824
Usage général 16 16 777 216 16384 2147483648
Usage général 32 16 777 216 16384 4294967295
Usage général 64 16 777 216 16384 4294967295
Mémoire optimisée 2 16 777 216 16384 536870912
Mémoire optimisée 4 16 777 216 16384 1073741824
Mémoire optimisée 8 16 777 216 16384 2147483648
Mémoire optimisée 16 16 777 216 16384 4294967295
Mémoire optimisée 32 16 777 216 16384 4294967295

query_cache_size

Le cache des reqêtes est activé par défaut dans MariaDB avec le paramètre have_query_cache.

Consultez la documentation MariaDB pour en savoir plus sur ce paramètre.

Niveau tarifaire vCore(s) Valeur par défaut (octets) Valeur minimale (octets) Valeur maximale (octets)
De base 1 Non configurable dans le niveau de base N/A N/A
De base 2 Non configurable dans le niveau de base N/A N/A
Usage général 2 0 0 16 777 216
Usage général 4 0 0 33554432
Usage général 8 0 0 67108864
Usage général 16 0 0 134217728
Usage général 32 0 0 134217728
Usage général 64 0 0 134217728
Mémoire optimisée 2 0 0 33554432
Mémoire optimisée 4 0 0 67108864
Mémoire optimisée 8 0 0 134217728
Mémoire optimisée 16 0 0 134217728
Mémoire optimisée 32 0 0 134217728

sort_buffer_size

Consultez la documentation MariaDB pour en savoir plus sur ce paramètre.

Niveau tarifaire vCore(s) Valeur par défaut (octets) Valeur minimale (octets) Valeur maximale (octets)
De base 1 Non configurable dans le niveau de base N/A N/A
De base 2 Non configurable dans le niveau de base N/A N/A
Usage général 2 524 288 32 768 4 194 304
Usage général 4 524 288 32 768 8388608
Usage général 8 524 288 32 768 16 777 216
Usage général 16 524 288 32 768 33554432
Usage général 32 524 288 32 768 33554432
Usage général 64 524 288 32 768 33554432
Mémoire optimisée 2 524 288 32 768 8388608
Mémoire optimisée 4 524 288 32 768 16 777 216
Mémoire optimisée 8 524 288 32 768 33554432
Mémoire optimisée 16 524 288 32 768 33554432
Mémoire optimisée 32 524 288 32 768 33554432

tmp_table_size

Consultez la documentation MariaDB pour en savoir plus sur ce paramètre.

Niveau tarifaire vCore(s) Valeur par défaut (octets) Valeur minimale (octets) Valeur maximale (octets)
De base 1 Non configurable dans le niveau de base N/A N/A
De base 2 Non configurable dans le niveau de base N/A N/A
Usage général 2 16 777 216 1 024 67108864
Usage général 4 16 777 216 1 024 134217728
Usage général 8 16 777 216 1 024 268435456
Usage général 16 16 777 216 1 024 536870912
Usage général 32 16 777 216 1 024 1073741824
Usage général 64 16 777 216 1 024 1073741824
Mémoire optimisée 2 16 777 216 1 024 134217728
Mémoire optimisée 4 16 777 216 1 024 268435456
Mémoire optimisée 8 16 777 216 1 024 536870912
Mémoire optimisée 16 16 777 216 1 024 1073741824
Mémoire optimisée 32 16 777 216 1 024 1073741824

time_zone

Lors du déploiement initial, un serveur Azure pour MariaDB contient des tables système pour les informations de fuseau horaire, mais ces tables ne sont pas remplies. Les tables de fuseaux horaires peuvent être remplies en appelant la procédure stockée mysql.az_load_timezone à partir d’un outil tel que la ligne de commande MySQL ou MySQL Workbench. Pour savoir comment appeler la procédure stockée et définir les fuseaux horaires au niveau global ou au niveau de la session, consultez les articles relatifs au Portail Azure ou à Azure CLI.

Paramètres de serveur non configurables

Les paramètres de serveur ci-dessous ne sont pas configurables dans le service :

Paramètre Valeur fixe
innodb_file_per_table dans le niveau de base OFF
innodb_flush_log_at_trx_commit 1
sync_binlog 1
innodb_log_file_size 256 Mo
innodb_log_files_in_group 2

Tous les autres paramètres de serveur sont définis sur leurs valeurs MariaDB fournies par défaut pour MariaDB.

Étapes suivantes