
Ich versuchte zuneu erstellenein DB-Benutzer und eine DB-Instanz (die über die vorhandenen ausgeführt werden), also habe ich die folgenden beiden Befehle in der Mysql-CLI ausgeführt:
create user '${test}'@'localhost' identified by '${psw}';
create database ${test};
Ich habe diese Ausgabe erhalten:
FEHLER 1396 (HY000) in Zeile 1: Vorgang CREATE USER für „test“@„localhost“ fehlgeschlagen
Der Grund für den Fehler ist natürlich, dass der Benutzer bereits existiert.
Meine Frage
Wie kann ich sicherstellen, dass die obigen Befehle über die vorhandenen Daten ausgeführt werden, wenn ich bereits einen DB-Benutzer und eine DB-Instanz mit demselben Wert ( test
) habe?
Nach Antwort aktualisieren
mysql -V
bringt:
mysql Ver 14.14 Distrib 5.7.20, für Linux (x86_64) mit EditLine-Wrapper
Antwort1
Verwenden Sie es einfach if not exists
in Ihren Abfragen. Zum Beispiel:
create if not exists user '${test}'@'localhost' identified by '${psw}';
oder
create database if not exists ${test};
Ihre MySQL-Version ist möglicherweise anders. Informieren Sie sich über die richtige Version. Weitere Informationen finden Sie unter: