DataBase/MySQL
MySQL - 사용법 - user control
Do.K
2022. 7. 24. 16:12
오타나 틀린 부분이 있을수 있습니다.
유저 생성
//로컬에서만 접근가능한 아이디 생성, identified by 뒤에오는 것은 비밀번호입니다
create user test_user@localhost identified by '1234';
// '%'를 붙이면 로컬호스트 포함 어디서든 접근가능하게 합니다
create user test_user@'%' identified by '1234';
유저삭제
//전역유저일때
drop user test_user;
//로컬호스트일때
drop user test_user@localhost;
유저목록 조회
//user 목록만 출력
select user from mysql.user;
//호스트도 알고싶다
select host, user from mysql.user;
유저권한 부여
//testdb에 관한 모든권한을 test_user에게 부여한다
grant all privileges on testdb to test_user;
//testdb의 temptable에 관한 모든권한을 test_user에게 부여한다
grant all privileges on testdb.temptable to test_user;
// *(모든 db와 table)에 대하여 create, drop, alter 권한을 test_user에게 부여한다
grant create, drop, alter on * to test_user;
// testdb에 대하여 select권한을 test_user에게 부여함과 동시에
// 다른 유저에게 해당 권한을 부여할 수 있는 권한까지 부여함
garnt select on testdb to test_user with grant option
//명령문은 차차 다룰것이므로 아래처럼 구성만 알아도 충분합니다
grant / 부여할 권한 / on / db 또는 테이블 / to / 권한을 부여할 유저
유저권한 회수
//testdb의 모든 테이블에대하여 select권한을 localhost인 test_user로부터 취소한다
rovoke select on testdb.* from test_user@'localhost';
유저 권한조회
//file_priv : 권한, authentication_string : 암호화된 비밀번호
select host, user, select_priv, authentication_string from user
//다른 권한의 이름은 아래에 따로 기재해 놓았습니다
//비밀번호는 암호화가 되어있기때문에 잊어먹었다면 변경하세요
//복호화가 가능은 하다고합니다만,,
비밀번호 변경
//alter는 바꾸다라는 명령어 중 하나입니다. id생성할때와 비슷해보입니다. 1111로 변경한다는 뜻
alter user test_user@'%' identified with mysql_native_password by '1111';
사용중인 유저, 데이터베이스 확인
select user();
select database();
기타 권한
Select_priv : select문을 수행할 수 있는 권한
Insert_priv : insert문을 수행할 수 있는 권한
Update_priv : update문을 수행할 수 있는 권한
Delete_priv : delete문을 수행할 수 있는 권한
Create_priv : create문을 수행하거나 테이블을 생성할 수 있는 권한
Drop_priv : drop문을 수행하거나 데이타베이스를 삭제할 수 있는 권한
Reload_priv : mysqladmin reload명령을 이용하여 접근정보를 다시 읽을 수 있는 권한
Shutdown_priv : mysqladmin shutdown명령을 이용하여 서버를 종료시킬 수 있는 권한
Process_priv : 서버 프로세스를 관리할 수 있는 권한
File_priv : select into outfile과 load data infile과 같은 명령을 이용하여 파일에 읽고
쓸 수 있는 권한
Grant_priv : 자신의 권한을 남에게 부여할 수 있는 권한
References_priv : 사용하지 않음
Index_priv : 인덱스를 만들거나 삭제할 수 있는 권한
Alter_priv : alter table문을 수행할 수 있는 권한