Mysql: Der als Definierer angegebene Benutzer ('xxx@'%') existiert nicht – Lösung

Mysql: Der als Definierer angegebene Benutzer ('xxx@'%') existiert nicht – Lösung

Bei der heutigen Projektoptimierung ist bei MySQL ein Problem aufgetreten: Der als Definierer angegebene Benutzer ('wx_root'@'%') existiert nicht

Ich habe es überprüft und es bedeutet, dass ich keine Berechtigung zum Ausführen sql habe. Ich habe den Datenbankbenutzer geprüft und es war quoters , aber SQL hatte keinen Besitz. Dann finden Sie den Grund. Es wurde festgestellt, dass während des SQL-Ausführungsprozesses eine gespeicherte Prozedur aufgerufen wurde

Der Ersteller dieser gespeicherten Prozedur ist wx_root . Zum Zeitpunkt der Ausführung haben quoters also keine Berechtigung

Lösungen und Maßnahmen:

1. Überprüfen Sie das Objekt, zu dem die gespeicherte Prozedur gehört: Klicken Sie mit der rechten Maustaste auf die Funktion der gespeicherten Prozedur -> Wählen Sie Objekteigenschaften -> Überprüfen Sie, ob die Funktion erstellt wurde und zum aktuell angemeldeten Benutzer gehört

2. Wenn nicht, sichern Sie die ursprüngliche gespeicherte Prozedurfunktion, kopieren Sie den gesamten Inhalt der gespeicherten Prozedurfunktion, erstellen Sie eine neue gespeicherte Prozedur und geben Sie ihr den gleichen Namen wie der ursprünglichen.

3. Auf diese Weise gehört der Ersteller dem aktuell angemeldeten Benutzer. Die ursprüngliche Funktion kann gelöscht oder beibehalten werden (wenn Sie sich nicht sicher sind, behalten Sie sie am besten zunächst bei)

Es gibt andere Gründe, die diesen Fehler verursachen können, z. B. keine Berechtigung zum Ausführen der MySQL-Ansicht

Die Lösung für die Anzeige ohne Berechtigung lautet wie folgt

Der als Definierer angegebene Benutzer ('root'@'%') existiert nicht.

Dies liegt normalerweise daran, dass der Root-Benutzer keinen Zugriff auf den globalen Host hat. Fügen Sie daher einfach dem Root-Benutzer eine Zugriffsberechtigung hinzu.

Lösung:

  • Melden Sie sich bei MySQL an und führen Sie aus
  • mysql -u root -pPasswd
  • mysql >gewähre root@"%", identifiziert durch "Passwd", alle Privilegien für *.*
  • mysql >Flush-Berechtigungen

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • Detaillierte Erklärung der MySQL DEFINER-Verwendung

<<:  CentOS8-Netzwerkkarten-Konfigurationsdatei

>>:  Vue implementiert eine Online-Vorschau von PDF-Dateien (mithilfe von pdf.js/iframe/embed)

Artikel empfehlen

Detaillierte Erläuterung des Beispielcodes für das elastische CSS3 Flex-Layout

1. Grundlegende Konzepte //Jeder Container kann a...

Analyse der gemeinsamen Indexfunktion von MySQL und Anwendungsbeispiele

Dieser Artikel veranschaulicht anhand von Beispie...

Praktische Aufzeichnung der MySQL 5.6 Master-Slave-Fehlerberichterstattung

1. Problemsymptome Version: MySQL 5.6, unter Verw...

Vuex implementiert einen einfachen Einkaufswagen

In diesem Artikelbeispiel wird der spezifische Co...

Docker verwendet ein einzelnes Image zum Zuordnen zu mehreren Ports

brauchen: Der Ressourcenserver der offiziellen We...

HTML-Grundlagen - CSS-Stylesheets, Style-Attribute, Format- und Layoutdetails

1. Position : fest Gesperrte Position (relativ zu...

Methoden zur Verbesserung der Zugriffskontrollsicherheit im Linux-Kernel

Hintergrund Vor einiger Zeit half unser Projektte...

Vue implementiert die Anmeldung per Mobiltelefon-Bestätigungscode

In diesem Artikel wird der spezifische Code von V...

Lösung für den Fall, dass der Tomcat-Server tomcat7w.exe nicht öffnen kann

Beim Konfigurieren des Tomcat-Servers ist mir heu...