mysql 계정 추가, 접속 권한 설정(외부접속허용), 권한 부여
Devel/DB_SQL2022. 1. 26. 00:00
반응형
Ubuntu에서 mysql 설치 후 권한 설정하는 방법
mysql의 계정(user) 정보 확인하는 방법
mysql> SELECT User, Host, authentication_string FROM mysql.user;
mysql database에 계정 추가를 한다.
mysql> CREATE DATABASE Test;
Test라는 database를 만들었다.
mysql database 리스트를 확인해 보려면
mysql> SHOW DATABASES;
SHOW DATABASES로 확인해 볼 수 있다.
mysql> CREATE USER 'test'@'localhost' IDENTIFIED BY 'test1234';
test라는 계정을 생성한 후,
계정 명: test, Host는 localhost, 패스워드는 test1234이다.
mysql의 user 테이블에 추가 혹은 변경이 있을 경우, flush privileges 쿼리를 실행해 줘야 한다.
mysql> FLUSH PRIVILEGES;
Test 계정에 Test Database를 사용할 수 있도록 권한을 부여한다.
mysql> GRANT ALL PRIVILEGES ON test.* to Test@localhost;
mysql database의 권한을 변경했으니 flush privileges 쿼리를 다시 한번 더 해준다.
mysql> FLUSH PRIVILEGES;
mysql test계정이 localhost에서 어떤 권한을 가지고 있는 지 확인하고 싶을 때
mysql> SHOW GRANTS FOR 'Test'@'localhost';
+-----------------------------------------------------------------+
| Grants for Test@localhost |
+-----------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'Test'@'localhost' |
| GRANT ALL PRIVILEGES ON `test`.* TO 'Test'@'localhost' |
+-----------------------------------------------------------------+
Grant로 확인해보면 된다.
어디서든 접속가능하도록 설정을 하고 싶다면, %로 설정하면 된다.
CREATE USER 'root'@'%' IDENTIFIED BY 'test1234';
GRANT ALL PRIVILEGES ON * . * TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
만약 특정 IP에서 접속을 허용해주고 싶다면, %대신 IP 주소를 넣어준다.
CREATE USER 'root'@'192.168.0.10' IDENTIFIED BY 'test1234';
GRANT ALL PRIVILEGES ON * . * TO 'root'@'192.168.0.10' WITH GRANT OPTION;
FLUSH PRIVILEGES;
'Devel > DB_SQL' 카테고리의 다른 글
SQL 중복 데이터 제외하고 조회, 삭제하기 (0) | 2022.02.11 |
---|---|
MYSQL 날짜 비교(ex.오늘 이후 날짜) (0) | 2022.02.03 |
Ubuntu Mysql root계정 패스워드 설정, 변경하는 법 (0) | 2022.01.25 |
Ubuntu에 mysql 설치하는 방법 (0) | 2022.01.24 |
SQL INSTR, TRIM(공백제거),CEIL, FLOOR, MOD, ROUND 설명 및 예제 (0) | 2022.01.19 |
댓글()