Entfernen von DEFINER-Klauseln aus MySQL-Dumps
MySQL-Dumps können DEFINER-Klauseln enthalten, die den Benutzer und Host angeben, der die zu sichernden Datenbankobjekte erstellt hat . Diese Klauseln können Sicherheitsbedenken aufwerfen oder Konflikte beim Importieren des Dumps in eine andere Umgebung verursachen.
Um diese Probleme zu entschärfen, ist es oft wünschenswert, DEFINER-Klauseln aus der Dump-Datei zu entfernen. Während es nicht möglich ist, zu verhindern, dass DEFINER während des Exportvorgangs zum Dump hinzugefügt werden, ist es möglich, sie anschließend zu entfernen.
Entfernungstechniken
Nach dem Generieren der Dump-Datei können mehrere Methoden zum Entfernen von DEFINER-Klauseln verwendet werden:
perl -p -i.bak -e "s/DEFINER=\`\w.*\`@\`\d[0-3].*[0-3]\`//g" mydatabase.sql
mysqldump ... | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > triggers_backup.sql
Durch die Anwendung einer dieser Methoden können Sie DEFINER-Klauseln effektiv aus Ihren MySQL-Dumps entfernen und die Sicherheit und Portabilität Ihrer Datenbanksicherungen verbessern.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3