MySQL version : 8.0.33

시행착오 겪어서 이 글을 보시는 분들은 겪지 마시라고 글 적습니다. 별거 아닌거 가지고 2시간 잡아먹었네요;;;

(내가 겪은 에러 메세지 : ERROR 1410 (42000): You are not allowed to create a user with GRANT)

 

1 . MySQL 접속 과정

터미널 > mysql -u root -p
## 비밀번호 입력 및 접속
mysql > use mysql

 

2. 계정 생성

## 1. 설정할_아이디@ 뒤에 'localhost'와 '%'는 권한 부여하실 때 맞춰주시지 않으면 오류 발생합니다.
## 2. 두 명령어 모두 실행하는 것이 아니라 목적에 따라 1개만 실행하시면 됩니다.
CREATE USER '생성할_아이디'@'localhost' identified by '설정할_비밀번호';
CREATE USER '생성할_아이디'@'%' identified by '설정할_비밀번호';

 

3. 생성 계정 확인

SELECT user, host FROM user;

 

4. 권한 부여

## 1. 위에 계정 생성시 '아이디'@+뒷 부분인 'localhost' 또는 '%'를 맞추어 주지 않으면
## 하단의 오류 메세지가 발생합니다.
## 오류메세지 : ERROR 1410 (42000): You are not allowed to create a user with GRANT
## 2. 두 명령어 모두 실행하는 것이 아니라 계정에 따라 1개만 실행하시면 됩니다.
GRANT ALL PRIVILEGES ON 디비명.* TO '아이디'@'localhost'
GRANT ALL PRIVILEGES ON 디비명.* TO '아이디'@'%'

 

5. 권한 부여 반영(당시에 굳이 해당 명령어 실행 안 해도 반영은 잘 되었습니다.)

## 두 명령어 같은 내용입니다. 대소문자만 다릅니다.
flush privileges;
FLUSH PRIVILEGES;

 

6. 권한 확인

## 두 명령어 모두 실행하는 것이 아니라 계정에 맞추어 1개만 실행하시면 됩니다.
SHOW GRANTS FOR '아이디'@'localhost';
SHOW GRANTS FOR '아이디'@'%';

 

번외. 계정삭제

## 1. 두 명령어 모두 실행하는 것이 아니라 계정에 맞추어 1개만 실행하시면 됩니다.
## 2. root@'localhost'의 경우 mysql 최고관리자 계정이라 실행하지 않았습니다.
## (실행되어서도 안될 것 같습니다.)
DROP USER '아이디'@'localhost';
DROP USER '아이디'@'%';

 

출처 : 겪고 직접 작성

+ Recent posts