행궁동 데이터 엔지니어

반응형

MariaDB에서 계정을 생성하고 권한 부여하는 방법입니다.

 

계정 생성 방법

  • 계정 생성 : create user '계정명'@'접속 위치(host)' identified by '비밀번호'; 
  • 접속 위치 관련 설명, 특정 IP 지정, 모든 IP 허용('%'), 내부에서만 허용('localhost')
  • 특정 IP 지정 ex) create user 'test'@'8.8.8.8' indetified by '1234'; < test라는 계정으로 8.8.8.8 ip에서만 접근 가능
  • 모든 IP 허용 ex) create user 'test'@'%' identified by '1234'; < test라는 계정으로 모든 ip에서 접근 가능
  • 내부에서만 접근 허용 ex) create user 'test'@'localhost' identified by '1234';

계정 삭제 방법 

  • drop user '계정명'@'접속 위치'; 
  • ex ) drop user 'test@'localhost'

# 계정 생성 및 계정 삭제 테스트

-- 계정 생성 

create user 'test'@'localhost' identified by '1234';
select host, user from mysql.user where user='test';

-- 계정 삭제

drop user 'test'@'localhost'
select host, user from mysql.user where user='test;

 

 

 

권한 부여에 대한 간단한 설명

  • 생성한 계정에는 전체 DB서버, 데이터베이스, 테이블, 컬럼 단위로 여러 가지 권한을 부여할 수 있습니다.
  • 부여할 수 있는 권한에 대한 정리는 아래 링크에 있는 이전 글을 참고해주세요.
  • 이번 포스팅에서는 all privileges를 이용해 모든 권한을 부여하는 것을 보여드리겠습니다.

https://mentha2.tistory.com/71

 

[MariaDB 사용자 권한 설정] 권한 설정 종류 정리

MariaDB의 root계정은 데이터베이스 서버에 대한 모든 권한을 가지고, 데이터베이스가 지원하는 모든 행위를 할 수 있다. 이 행위에는 데이터베이스, 테이블의 삭제, 다른 사용자 계정의 패스워드 변경, 서버의 강..

mentha2.tistory.com

계정에 권한 부여 및 회수

  • 모든 권한 부여 : grant all privileges on 데이터베이스명.테이블명 to '계정명'@'접속위치(host')';
  • ex) grant all privileges on *.* to 'test'@'localhost';
  • 모든 권한 회수(뺏기) : revoke all on *.* from 'test'@'localhost';

# 생성한 test 계정에 권한 부여 및 회수하는 예제

-- 초기 권한 확인

select * from mysql.user where user='test'; 

 

-- 모든 권한 부여하고 확인

grant all privileges on *.* to 'test'@'localhost';
select * from mysql.user where user='test';

 

-- 모든 권한 회수하고 확인

revoke all on *.* from 'test'@'localhost';
select * from mysql.user where user='test';

권한 부여 전/후와 회수 후 확인

궁금하신 사항은 댓글 남겨주세요 ~

 

감사합니다.

반응형

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band