Dépannage de MySQL Server

Résolution du problème SUPER_READ_ONLY et OFFLINE_MODE causé par un faible espace de stockage libre

MySQL Server active SUPER_READ_ONLY et OFFLINE_MODE lorsque l'espace disque disponible est inférieur à certaines valeurs de configuration.

Health Monitor active SUPER_READ_ONLY et OFFLINE_MODE dans les scénarios suivants :
  • L'espace disque disponible est inférieur à disk_low_space_level ou à disk_low_space_percent, selon la valeur la plus basse, pendant disk_low_space_duration secondes.
  • L'espace disque disponible est inférieur à disk_low_space_critical_level, quelle que soit la durée.
Remarque

La variable de serveur SUPER_READ_ONLY est également activée lorsque le mode de base de données du système de base de données est défini sur lecture seule et que la variable de serveur OFFLINE_MODE est également activée lorsque le mode d'accès du système de base de données est défini sur Administrateurs uniquement. Vérifiez la variable de statut super_read_only_disk_full. Il est également activé si l'espace de stockage libre est faible.

Utilisation de la console

Utilisez la console pour résoudre le problème SUPER_READ_ONLY ou OFFLINE_MODE de MySQL Server causé par un faible espace de stockage libre.

Pour cette tâche, la ou les conditions suivantes doivent être réunies :
  • L'erreur suivante s'affiche lorsqu'un client tente de se connecter à l'instance MySQL Server :
    MySQL Error 1290 (HY000): The MySQL server is running with the --super-read-only 
    option so it cannot execute this statement @ file bytes range [1400005472, 1500005697).
    MySQL Error 1290 (HY000): The MySQL server is running with the --offline-mode 
    option so it cannot execute this statement @ file bytes range [1400005472, 1500005697).
  • Vérifiez que la variable de statut super_read_only_disk_full est ON pour vérifier qu'elle est due à un espace de stockage libre insuffisant :
    mysql> SHOW STATUS LIKE 'super_read_only_disk_full';
    +---------------------------+-------+
    | Variable_name             | Value |
    +---------------------------+-------+
    | super_read_only_disk_full | ON    |
    +---------------------------+-------+
Effectuez l'une des opérations suivantes pour résoudre le problème :
  • Augmentez la taille du stockage, puis redémarrez le système de base de données. Reportez-vous à Augmentation du stockage d'un système de base de données.
  • Si vous ne pouvez pas augmenter la taille du stockage, procédez comme suit :
    1. Créez une sauvegarde manuelle du système de base de données. Reportez-vous à Création d'une sauvegarde.
    2. Créez un système de base de données à l'aide de la sauvegarde manuelle, avec une taille de stockage plus grande. Reportez-vous à Création d'un système de base de données à partir d'une sauvegarde.
  • Health Monitor réinitialise les variables de serveur SUPER_READ_ONLY et OFFLINE_MODE sur OFF après la récupération de l'espace disque insuffisant. Si le mode de base de données du système de base de données est défini sur Lecture seule, le système de base de données devient accessible en écriture. Si le mode d'accès du système de base de données est défini sur Administrateurs uniquement, le système de base de données autorise tous les utilisateurs à se connecter. Pour maintenir le mode de base de données et le mode d'accès, vous devez redémarrer le système de base de données.
Pour éviter que le problème ne se produise :

Pour éviter que le problème ne se produise, vous pouvez utiliser la mesure DbVolumeUtilization à alerter avant que l'espace disque ne tombe en dessous des niveaux critiques. Pour plus d'informations, reportez-vous à Vérification du stockage d'un système de base de données.

Utilitaire de débogage et de diagnostic

Servez-vous de l'utilitaire de débogage et de diagnostic pour collecter des données de diagnostic sur l'instance MySQL Server.

L'utilitaire de débogage et de diagnostic vous permet de collecter des données de diagnostic brutes à partir de serveurs MySQL et génère un rapport de diagnostic dans le répertoire local ou à l'emplacement indiqué par un chemin.