Lorsque j'essaie d'importer des données dans une instance Amazon Relational Database Service (Amazon RDS) pour MySQL via mysqldump, je reçois une erreur similaire à celle-ci :

Definer error: example: /*!50003 CREATE*/ /*!50017 DEFINER=`rdsadmin`@`localhost`*/ /*!50003 TRIGGER customer_update AFTER UPDATE ON `customer` FOR EACH ROW

Les erreurs de definer se déclenchent lorsque MySQL tente de créer un objet sous un utilisateur BD qui n'existe pas dans la base de données de destination. Vous pouvez recevoir une erreur semblable lorsque MySQL tente de créer un utilisateur pour localhost, ce qui n'est pas permis pour Amazon RDS qui ne dispose pas de privilèges de superutilisateur.,

Il existe plusieurs façons de corriger les erreurs de definer :

1.    Supprimez la ligne de definer suivante :

/*!50017 DEFINER=`rdsadmin`@`localhost`*/

Cette ligne devrait à présent indiquer :

/*!50003 CREATE*/ /*!50003 TRIGGER customer_update AFTER UPDATE ON `customer` FOR EACH ROW

2. Renommez les utilisateurs « rdsadmin » et « localhost » par « masteruser » et « % », respectivement :

/*!50003 CREATE*/ /*!50017 DEFINER=`masteruser`@`%`*/ /*!50003 TRIGGER customer_update AFTER UPDATE ON `customer` FOR EACH ROW

3.    Créez ou recréez le fichier de vidage sans l'option definer.

L'utilitaire de dump MySQL ne donne pas la possibilité de retirer un DEFINER. Certains clients de MySQL offrent la possibilité d'ignorer le definer lors de la création d'une sauvegarde logique, mais cela ne se produit pas par défaut. Passez en revue la documentation pour votre client MySQL préféré afin de voir si l'option permettant d'ignorer le DEFINER est disponible. Le client de ligne de commande MySQL n'est pas en mesure d'exclure le definer, toutefois, le client peut être utilisé avec des outils tiers pour retirer le DEFINER ou pour chercher et remplacer le nom d'utilisateur et l'hôte.


Cette page vous a-t-elle été utile ? Oui | Non

Retour au Centre de connaissances AWS Support

Vous avez besoin d'aide ? Consultez le site du Centre AWS Support.

Date de publication : 27/06/2016

Date de mise à jour : 02/07/2018