[MariaDB] 계정 및 권한 관리

쏭문·2023년 2월 19일
0

MariaDB

목록 보기
1/2

짜잔 첫 포스팅

MariaDB와 ClickhouseDB를 운영중이며 관련 포스팅을 위주로 할 예정입니다.
첫 글은 제가 이직해서 처음 담당하게 된 계정 관리에 대한 글을 써보려고 합니다.😀🤞



기본 명령어

계정 생성 및 권한 할당

  • M-S 구조로 구성되었기 때문에 계정 생성할 때, CREATE문이 아닌 GRANT 명령을 통한 생성.
  • 개인 계정에는 MAX_STATEMENT_TIME 300초 설정 (서비스 계정에는 부여 X)
  • IDENTIFIED BY 구문으로 하면 패스워드를 문자로 작성하고 IDENTIFIED BY PASSWORD 구문으로 작성하면 뒤에 암호화된 패스워드 값으로 적용
 GRANT SELECT ON DB.TABLE TO 'USER'@'HOST' IDENTIFIED BY 'PASSWORD' WITH MAX_STATEMENT_TIME 300; 

권한 회수

REVOKE SELECT ON *.* FROM 'USER'@'HOST'; 

계정 정보 변경

RENAME USER 'USER_AS_IS'@'HOST_AS_IS' TO 'USER_TO_BE'@'HOST_TO_BE';

계정 삭제

DROP USER 'USER'@'HOST';

그 외

기본적인 명령어 위주로 운영하면서 상황별로 자주 쓰이거나 또는 자주 안쓰이는 것들이 있는데 간간히 안하다보면 까먹게 되가지고...😩

뭐..그냥 도큐 찾아보면 그만이긴 하지만 귀찮으니 정리해두자.

권한 관리하면서 몇 가지 헷갈렸던거랑 자주 찾아보게 됐던 것들✏️✏️
(+ 나중에 더 추가 될 수 있음)

프로시저 관련

  • 특정 프로시저 권한 부여
GRANT EXECUTE ON PROCEDURE `db_name`.`procedure_name` TO 'user_id'@'host' ;
  • 프로시저 권한 부여
GRANT EXECUTE ON 'DB_Name'.'table_name' to 'user_id'@'host';
  • 프로시저 확인 권한
GRANT SELECT ON mysql.proc TO 'user_id'@'host';

프로세스 관련

  • 프로세스리스트 권한 할당하기
    • 프로세스 리스트는 무조건 GLOBAL 권한임
      맨날 헷갈리는게 PROCESS 까지만 치면 되는데 PROCESSLIST라고 씀...🤬
GRANT PROCESS ON *.*  TO 'USER'@'HOST';

TRUNCATE 권한

  • TRUNCAT가 아니라 DROP 권한을 부여해야함.
    • DROP : DROP TABLE 문 을 사용하여 테이블을 삭제 하거나 DROP VIEW 문 을 사용하여 뷰를 삭제 합니다. 또한 TRUNCATE TABLE 문을 실행하는 데 필요
  grant drop on 'DB_Name'.'table_name' TO 'USER'@'HOST';


마무리

나중에 더 생각나면 끄적거리러 오도록 하고 오늘은 이만...🙌

0개의 댓글