Fazendo criar usuário de banco de dados e criar instância de banco de dados, executar valores existentes com o mesmo nome

Fazendo criar usuário de banco de dados e criar instância de banco de dados, executar valores existentes com o mesmo nome

Eu tenteirecriarum usuário de banco de dados e uma instância de banco de dados (executando os existentes), então executei os dois comandos a seguir na CLI do Mysql:

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

Eu obtive esta saída:

ERRO 1396 (HY000) na linha 1: Falha na operação CREATE USER para 'test'@'localhost'

O motivo do erro, claro, é porque o usuário já existe).

Minha pergunta

Como posso ter certeza de que os comandos acima serão executados nos dados existentes se já tenho um usuário de banco de dados e uma instância de banco de dados com o mesmo valor ( test)?

Atualizar após resposta

mysql -Vtraz:

mysql Ver 14.14 Distrib 5.7.20, para Linux (x86_64) usando o wrapper EditLine

Responder1

Basta usar if not existsem suas consultas. Por exemplo:

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

Sua versão do mysql pode ser diferente, consulte a versão correta. Mas mais informações podem ser encontradas em:

informação relacionada