
워크벤치로 손쉽게 수행이 가능하지만
불가피하게 커맨드창으로 Database 를 추가하고 사용자를 생성 및 권한을 줘야 할때
아래 처럼 수행하자.
1.MySQL 워크벤치 프로그램 말고 커맨드라인 창을 띄우자. unicode든 뭐든 가능

2. window + r 키로 cmd 창을 연다
3. MySQL 커맨드창에서
mysql > show databases;
라고 입력하여 현재 Database 들을 확인하자. 그리고 quit; 로 닫는다.

4. cmd 창에서 사용할 데이터베이스를 생성한다. (밑줄 친 데가 직접 타이핑 해야 하는 곳!)
C:\Users\ ..생략.. > cd ..\..
C:\>cd C:\Program Files\MySQL\MySQL Server 8.0\bin
C:\Program Files\MySQL\MySQL Server 8.0\bin> mysqladmin -u root -p 만들데이터베이스이름
Enter password: 비밀번호 입력
DB가 제대로 생성되면 아래처럼 다시 명령어 입력이 뜨게 된다.
C:\Program Files\MySQL\MySQL Server 8.0\bin>
5.다시 MySQL 커맨드창을 실행해 database가 만들어졌는지 확인한다.

6. cmd 창에서 MySQL 루트 계정으로 로그인하고 권한을 설정한다.
C:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -u root -p
Enter password : 비밀번호 입력
성공하면 mysql 커맨드창을 실행했을 때 떴던 문구가 나온다.

7. 이제 사용자 계정을 만들고 권한을 설정하자.
(1) 모든 권한 부여
GRANT ALL PRIVILEGES ON 만든데이터베이스.* TO ‘만들사용자계정’@’localhost’ IDENTIFIED BY ‘사용할비밀번호’;
(2) 부분 권한 부여
GRANT SELECT, UPDATE, DELETE, CREATE, DROP, ALTER ON 만든데이터베이스.* TO ‘만들사용자계정’@’localhost’ IDENTIFIED BY ‘사용할비밀번호’;
(3) 권한 해제
REVOKE ALL ON 만든데이터베이스.* FROM ‘만든사용자계정’@’localhost';
주의!! 그대로 복사해서 입력하면 따옴표 에러가 발생한다. 직접 타이핑하자
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'localhost’ IDENTIFIED BY ‘비밀번호' at line 1
해결방법??
나의 경우 계속 제대로 타이핑했는데 이상하게 그 문구를 복사하니 따옴표가 추가로 더 들어가는 것 같아서
아래와 같은 방법으로 사용자를 생성하고 권한을 설정했다. 이유를 아는 분은 댓글로 말씀해주세요!
1.MySQL 커맨드 창에서
2.만든 디비를 사용할 사용자를 새로 생성한다.
mysql> create user '만들사용자계정'@'localhost' identified by '사용자비번';
3.권한을 설정하고
mysql> grant all privileges on 만든데이터베이스이름.* to '만든사용자계정'@'localhost';
4.권한을 적용시킨다.
mysql> flush privileges;
5.올바르게 권한이 적용되었는지 확인해본다.
mysql> show grants for 사용자계정@localhost;

ERROR 1396 (HY000): Operation CREATE USER failed for 'jack'@'localhost' 에러가 발생한다면?
방법2.
drop user admin@localhost;
flush privileges;
mysql> CREATE USER '계정명'@'localhost' IDENTIFIED WITH mysql_native_password BY '이 계정이 사용할(이 계정의) 패스워드';
mysql> GRANT ALL PRIVILEGES ON dbMember(액세스 권한 부여해줄 DB명).* TO '계정명'@'localhost';
8. 제대로 만들었는지 확인을 위해
루트계정에서 나오고 (quit; 입력)
다시 재접속한다.
C:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -u 만든사용자계정 -p 만든데이터베이스
Enter password : 비번입력
9. show databases; 로 데이터베이스를 확인한다.

'Study > Database' 카테고리의 다른 글
[Database System Concepts] 2.관계형 모델 소개 (2) | 2019.07.24 |
---|---|
[Database System Concepts] 1.소개 - 문제풀이 (0) | 2019.07.24 |
[Database System Concepts] 0. (0) | 2019.06.25 |
[이클립스] JDBC 연결 시 한글 깨짐 오류 해결 방법 (0) | 2019.04.16 |
[MySQL] MySQL download 및 설치 방법 (0) | 2019.04.08 |
댓글