DBユーザーの作成とDBインスタンスの作成を行い、同じ名前の既存の値を実行します。

DBユーザーの作成とDBインスタンスの作成を行い、同じ名前の既存の値を実行します。

やってみました再現するDB ユーザーと DB インスタンス (既存のもの上で実行) が必要なので、Mysql CLI で次の 2 つのコマンドを実行しました。

create user '${test}'@'localhost' identified by '${psw}';
create database ${test};

次のような出力が得られました:

1 行目のエラー 1396 (HY000): 'test'@'localhost' の CREATE USER 操作が失敗しました

もちろん、エラーの原因はユーザーがすでに存在しているためです。

私の質問

すでに同じ値 ( ) を持つ DB ユーザーと DB インスタンスがある場合、上記のコマンドが既存のデータに対して実行されるようにするにはどうすればよいでしょうかtest?

回答後に更新

mysql -Vもたらすもの:

mysql Ver 14.14 Distrib 5.7.20、Linux (x86_64) 用、EditLine ラッパー使用

答え1

if not existsクエリで使用するだけです。例:

create if not exists user '${test}'@'localhost' identified by '${psw}'; または create database if not exists ${test};

MySQL のバージョンは異なる可能性があります。正しいバージョンを参照してください。ただし、詳細情報は次の場所にあります。

関連情報