
나는 노력했다재창조하다DB 사용자와 DB 인스턴스(기존 인스턴스에서 실행)가 있으므로 Mysql CLI에서 다음 두 명령을 실행했습니다.
create user '${test}'@'localhost' identified by '${psw}';
create database ${test};
나는 다음과 같은 결과를 얻었습니다.
라인 1의 오류 1396(HY000): 'test'@'localhost'에 대한 CREATE USER 작업이 실패했습니다.
물론 오류가 발생하는 이유는 사용자가 이미 존재하기 때문입니다.
내 질문
이미 DB 사용자와 동일한 값( test
)을 가진 DB 인스턴스가 있는 경우 위 명령이 기존 데이터에 대해 실행되도록 하려면 어떻게 해야 합니까?
답변 후 업데이트
mysql -V
가져오는 것:
mysql Ver 14.14 Distrib 5.7.20, EditLine 래퍼를 사용하는 Linux(x86_64)용
답변1
if not exists
귀하의 쿼리에 간단히 사용하십시오 . 예를 들어:
create if not exists user '${test}'@'localhost' identified by '${psw}';
또는
create database if not exists ${test};
귀하의 mysql 버전이 다를 수 있습니다. 올바른 버전을 참조하세요. 그러나 더 많은 정보는 다음에서 찾을 수 있습니다: