MariaDB - ERROR 1396 (HY000) 에러
MariaDB ERROR 1396 (HY000) 에러
ERROR 1396 (HY000) : **Operation CREATE USER failed for ‘userID’@’localhost’**
똑같은 이름으로 계정을 만든적이 있다.
create user 'USERID'@'%' identified by 'cos1234';
@ 뒤에 ‘%’는 사용자 계정이 모든 호스트 위치에서 연결할 수 있도록 하는 와일드 카드이다.
DELETE로 계정을 삭제했다.
delete from user where user = 'USERID';
DELETE와 DROP의 차이
DELETE(DML)
- 데이터는 지워지지않지만 테이블 용량은 줄어 들지 않는다.
- 원하는 데이터만 지울 수 있다.
- 삭제 후 잘못 삭제한 것을 되돌릴 수 있다. (Commit 이전에 Rollback 가능)
DROP
- 데이터 전체를 삭제, 공간, 객체를 삭제한다.
- 삭제 후 절대 되돌릴 수 없다.
번외
TRUNCATE
- 용량이 줄어든다.
- 인덱스 등 모두 삭제
- 테이블은 삭제하지 않고, 데이터만 삭제한다.
- 삭제 후 되돌릴 수 없다.
처음에 이것때문에 계정을 삭제 했을 때 데이터가 남아있는건가 ?? 그래서 ERROR 1396가 뜨는건가 ? 생각했다.
찾아 보다가 이런 문구를 찾았다.
FLUSH PRIVILEGES;
Mysql, mariadb 같은 경우 명령어를 쓰고 FLUSH PRIVILEGES;를 써야한다고 한다.
특히나 grant 테이블을 reload 함으로 변경사항을 바로 적용해주는 명령어라고 한다. 이것을 DROP을 하고 이것을 해주고 하니깐 에러가 안뜬다.
해결완료 … 눈물 왈칵…