MariaDB에서 사용자를 추가한 뒤 사용자를 삭제하고, 다시 동일한 사용자를 추가하다가 ERROR 1396 (HY000): Operation CREATE USER failed for 메시지를 만나셨나요? MariaDB ERROR 1396 오류 해결 방법을 살펴보겠습니다.
목차
MariaDB ERROR 1396 (HY000) 오류 재현 상황
저는 User 값으로 username, Host 값으로 wordpress.my-net을 지정해서 계정을 만들었습니다.
작업을 하던 중, 작업을 처음부터 다시해야겠다는 생각으로 해당 사용자를 삭제했습니다.
삭제가 잘 되어서, 새로운 사용자를 동일하게 다시 추가하려고 하면 아래와 같이 ERROR 1396 (HY000): Operation CREATE USER failed for 메시지를 발생시키면서 사용자가 추가되지 않습니다.
오류 해결 방법
사용자를 삭제한 뒤 flush privileges를 실행해 줘야 합니다.
flush privileges;
SQL위의 명령어를 입력한 뒤 다시 사용자를 생성하면 정상적으로 수행되는 것을 확인할 수 있습니다.
그리고 사용자를 삭제할 때는 delete 문을 사용해서 사용자를 삭제하지 말고, drop user 문을 이용해서 사용자를 삭제하기를 권장합니다. 위에서 생성한 사용자명과 호스트는 아래와 같이 삭제하면 됩니다.
DROP USER 'username'@'wordpress.my-net';
SQL해결이 되지 않는 경우
위의 방법으로도 해결이 되지 않는 경우에는 db 테이블에 해당 사용자명과 호스트명을 가진 레코드가 있는지 확인하고, 만약 존재한다면, 아래와 같은 Query 문을 사용하여 삭제해 주도록 합니다. 삭제 후에는 flush privileges를 꼭 실행해 주어야 합니다.
delete from db where User = 'username' and Host = 'wordpress.my-net';
flush privileges;
SQL이렇게 한 다음 다시 CREATE USER문을 이용해서 사용자를 생성하면 정상적으로 수행됩니다.
혹시 이렇게 했는데도 사용자가 생성되지 않는 분은 댓글로 상황 공유해 주시면 다른 필요한 분들께도 도움이 될 거예요.
관련 자료
StackOverflow의 ERROR 1396 관련 페이지를 참고했습니다.