Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Navigation

Mein Blog magenbrot.net



Mail-, Web-, Domainhosting und vieles mehr durch OVTEC Völker IT.

datenbanken:mysql:benutzertabelle_als_grant-statements_dumpen

Benutzertabelle als GRANT-Statements dumpen

Bei der Einrichtung einer frischen Replikation kann es wichtig sein, dass vorhandene User nicht überschrieben werden. Mit dem folgenden Snippet lassen sich die Benutzer einer MySQL-DB als einfache GRANT-Statements inkl. gesonderten Rechten auf Datenbanken ausgeben und für den späteren Import passend bearbeiten.

bash-funktion
mygrants()
{
  mysql -B -N $@ -e "SELECT DISTINCT CONCAT(
    'SHOW GRANTS FOR \'', user, '\'@\'', host, '\';'
    ) AS query FROM mysql.user" | \
  mysql $@ | \
  sed 's/\(GRANT .*\)/\1;/;s/^\(Grants for .*\)/## \1 ##/;/##/{x;p;x;}'
}

Ein Aufruf könnte dann so aussehen:

mygrants --host=prod-db1 --user=admin --password=secret

Diskussion

Geben Sie Ihren Kommentar ein. Wiki-Syntax ist zugelassen:
F​ K P᠎ H J
 
datenbanken/mysql/benutzertabelle_als_grant-statements_dumpen.txt · Zuletzt geändert: 16.04.2015 13:05 (Externe Bearbeitung)