mariadb set user privileges (mariadb 유저 권한 핸들링)
root계정초기생성
생성전 비번은 [blank]임
1 set password for 'root'@'localhost'=password('newpassword');
버전확인
1 select VERSION();
유저들 보기
1 2 use mysql; select * from USER;
유저생성
1 CREATE USER username@'%' IDENTIFIED BY 'password';
유저 에게 모든 권한 주기
```sql GRANT ALL PRIVILEGES ON dbname.* to username@’%’;
username@’%’에서 ‘%’는 localhost 이외 ip 에서 접근 시
‘localhost’는 localhost에서 접근 시
1
2
3
4
5
>**유저 에게 특정 권한 주기**
```sql
GRANT SELECT, INSERT ON dbname.* to username@'%';
특정 테이블 권한
1 GRANT UPDATE(col1,col2) ON dbname.tablename to username@'%';
(mysql한정)
nodejs, java등 was app의 db driver plugin caching_sha2_password 문제 시
유저 테이블 plugincaching_sha2_password
을mysql_native_password
로 바꿔줌.
1 ALTER USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
유저 권한 보기
1 SHOW GRANTS FOR username;
권한 변경사항 적용
1 FLUSH PRIVILEGES;
유저삭제
1 2 DROP USER aidaboat@'%'; DROP USER aidaboat@'localhost';
transaction_isolation 확인
mariadb
:transaction_isolation
,tx_isolation
두개 있음.
mysql
:transaction_isolation
만 있음.
그래서? jdbc driver 연결 시 구분됨.
1 2 show global variables like 't%isolation'; show global variables like 'tx%';
This post is licensed under CC BY 4.0 by the author.