Wie aktiviere ich Funktionen, Prozeduren und Trigger für meine Amazon RDS for MySQL-DB-Instance?

Lesedauer: 2 Minute
0

Ich möchte Funktionen, Prozeduren und Trigger für meine Amazon Relational Database Service (Amazon RDS) for MySQL DB-Instance aktivieren.

Behebung

Amazon RDS ist ein verwalteter Service und bietet keinen Systemzugriff (SUPER-Privilegien). Wenn Sie die binäre Protokollierung aktivieren, setzen Sie log_bin_trust_function_creators in der Parametergruppe der benutzerdefinierten Datenbank (DB) für Ihre DB-Instance auf true.

Wenn Sie eine DB-Instance erstellen und keine DB-Parametergruppe angeben, erstellt Amazon RDS eine neue Standard-DB-Parametergruppe. Weitere Informationen finden Sie unter Arbeiten mit Parametergruppen.

Gehen Sie wie folgt vor, um Funktionen, Prozeduren und Trigger für Amazon RDS for MySQL-DB-Instances zu aktivieren:

  1. Erstellen Sie eine DB-Parametergruppe.
  2. Ändern Sie die benutzerdefinierte DB-Parametergruppe und legen Sie dann den Parameter fest: log_bin_trust_function_creators=1
  3. Wählen Sie Änderungen speichern aus.
    **Hinweis:**Warten Sie mindestens 5 Minuten, bevor Sie die DB-Parametergruppe mit einer DB-Instance verwenden.
  4. Wählen Sie im Navigationsbereich Datenbanken aus.
  5. Wählen Sie die DB-Instance aus, die Sie der DB-Parametergruppe zuordnen möchten.
  6. Wählen Sie Ändern.
  7. Wählen Sie die Parametergruppe aus, die Sie der DB-Instance zuordnen möchten.
  8. Starten Sie die DB-Instance neu.

**Hinweis:**Der Name der Parametergruppe ändert sich sofort, aber Änderungen an der Parametergruppe werden erst angewendet, wenn Sie die Instance ohne Failover neu starten.

Wenn Sie bereits eine benutzerdefinierte Parametergruppe verwenden, führen Sie nur die Schritte 2 bis 3 aus. Der Parameter log\ _bin\ _trust\ _function\ _creators ist ein dynamischer Parameter, der keinen DB-Neustart erfordert.

Wenn Sie die automatische Sicherung für eine MySQL-DB-Instance aktivieren, aktivieren Sie auch die binäre Protokollierung. Wenn Sie einen Trigger erstellen, wird möglicherweise die folgende Fehlermeldung angezeigt:
„FEHLER 1419 (HY000): Sie haben nicht das SUPER-Privileg und die Binärprotokollierung ist aktiviert (vielleicht möchten Sie die weniger sichere Variable log\ _bin\ _trust\ _function\ _creators verwenden)“

Wenn Sie diese Fehlermeldung erhalten, ändern Sie den Parameter log_bin_trust_function_creators auf 1. Dies ermöglicht Funktionen, Prozeduren und Trigger auf Ihrer DB-Instance. Wenn Sie immer noch die Fehlermeldung „Zugriff verweigert“ erhalten, nachdem Sie den Parameter auf 1 gesetzt haben, finden Sie weitere Informationen unter Wie kann ich 1227- und Definer-Fehler beim Import von Daten in meine Amazon RDS for MySQL-DB-Instance mithilfe von mysqldump beheben?

**Hinweis:**Wenn Sie log_bin_trust_function_creators=1, werden möglicherweise unsichere Ereignisse in das Binärlog geschrieben. Die binäre Protokollierung basiert auf Anweisungen (binlog_format=STATEMENT).

Weitere Informationen zum Parameter log_bin_trust_function_creators finden Sie unter log_bin_trust_function_creators und Binärprotokollierung für gespeicherte Programme auf der MySQL-Website.

Ähnliche Informationen

Parameter in einer DB-Cluster-Parametergruppe ändern