Je souhaite activer les fonctions, les procédures et les déclencheurs pour mon instance de base de données Amazon Relational Database Service (Amazon RDS) for MySQL.
Résolution
Amazon RDS est un service géré qui ne fournit pas d’accès au système (privilèges SUPERUSER). Si vous activez la journalisation binaire, définissez log_bin_trust_function_creators sur true dans le groupe personnalisé de paramètres de base de données pour votre instance de base de données.
Si vous créez une instance de base de données sans spécifier de groupe de paramètres de base de données, Amazon RDS crée un nouveau groupe de paramètres de base de données par défaut. Pour plus d'informations, consultez la section Présentation des groupes de paramètres.
Procédez comme suit pour activer les fonctions, les procédures et les déclencheurs pour les instances de bases de données Amazon RDS for MySQL :
- Créez un groupe de paramètres de base de données.
- Modifiez le groupe personnalisé de paramètres de base de données, puis définissez la valeur de log_bin_trust_function_creators sur 1.
Remarque : Lorsque vous définissez log_bin_trust_function_creators=1, Amazon RDS peut écrire des événements non sécurisés dans le journal binaire. La journalisation binaire est basée sur des instructions et ressemble à l'exemple suivant : (binlog_format=STATEMENT).
- Sélectionnez Enregistrer les modifications.
Remarque : Avant d’utiliser le groupe de paramètres de base de données avec une instance de base de données, attendez au moins 5 minutes.
- Dans le volet de navigation, sélectionnez Bases de données.
- Sélectionnez l’instance de base de données que vous souhaitez associer au groupe de paramètres de base de données.
- Sélectionnez Modifier.
- Sélectionnez le groupe de paramètres que vous souhaitez associer à l’instance de base de données.
- Redémarrez l’instance de base de données.
Remarque : Le nom du groupe de paramètres change immédiatement. Amazon RDS applique les modifications du groupe de paramètres après le redémarrage de l'instance sans basculement.
Si vous utilisez déjà un groupe de paramètres personnalisé, effectuez uniquement les étapes 2 et 3. Le paramètre log_bin_trust_function_creators est un paramètre dynamique qui ne nécessite pas de redémarrage de la base de données.
Si vous activez la sauvegarde automatique pour une instance de base de données MySQL, vous activez également la journalisation binaire. Lorsque vous créez un déclencheur, le message d’erreur suivant peut s’afficher :
« ERROR 1419 (HY000): You don't have the SUPER privilege and binary logging is enabled (you might want to use the less safe log_bin_trust_function_creators variable) »
Si cette erreur s’affiche, examinez le paramètre log_bin_trust_function_creators. Si le paramètre n'est pas défini sur 1, mettez-le à jour sur 1. Si le paramètre est défini sur 1 et que vous recevez toujours des erreurs Accès refusé, consultez la section Comment puis-je résoudre les erreurs 1227 et les erreurs de definer lors de l’importation de données vers mon instance de base de données Amazon RDS for MySQL à l’aide de mysqldump ?
Pour plus de détails sur le paramètre log_bin_trust_function_creators, consultez les pages log_bin_trust_function_creators et Journalisation binaire des programmes stockés sur le site Web MySQL.
Informations connexes
Utilisation de groupes de paramètres de cluster de bases de données pour les clusters de bases de données multi-AZ