본문 바로가기

Database/MySQL

[MySQL] 리눅스로 DB생성하기 & 계정 추가 & 권한추가

0. Mysql이 설치된 리눅스로 이동

 

1. mysql 에 로그인한다. 

# root로 로그인
$ sudo /usr/bin/mysql -u root -p

 

2. 데이터베이스 생성

mysql> create database {데이터베이스이름};
mysql> show databases;

 

3.  sample_db를 사용할 계정 생성 및 확인

- localhost로 쓰여있으면 설치된 로컬 서버에서만 접근이 가능
- %로 설정 시 어디에서나 접근이 가능.

mysql> create user '유저아이디'@'localhost' identified by '비밀번호';
mysql> create user '유저아이디'@'%' identified by '비밀번호';
mysql> flush privileges;
mysql> select User, Host, authentication_string from mysql.user;

 

4. 계정에 권한부여

# 생성한 계정이 모든 데이터베이스에 접근가능하도록 설정
mysql> grant all privileges on *.* for'생성한계정'@'호스트'with grant option; 

# 생성한 계정이 '데이터베이스이름'에만 접근가능하도록 설정
mysql> grant all privileges on 데이터베이스이름.* to '생성한계정'@'호스트';

# 생성한 계정이 '데이터베이스이름'에서 select, insert, update 중 허용하는 권한만 부여
mysql> grant select,insert,update on 데이터베이스이름.* to 생성한계정@호스트;



# 변경사항 적용 , 반드시 해야함
mysql> flush privileges;

#생성한 계정 의 권한 확인
mysql> show grants for '생성한계정'@'호스트';
mysql> select User, Host, authentication_string from mysql.user;

 

5. 생성한 계정으로 로그인

# userID로 로그인
$ mysql -u {유저아이디} -p

6. 내 데이터베이스 접근 권한 확인 

mysql> show grants for current_user;