MySQL 설치하고 기본계정인 root 계정으로 접속했다면, 다음 단계로 사용자 계정을 생성하고 권한을 부여하는 방법에 관해서 설명합니다.
MySQL 사용자 계정 설명
- MySQL root 계정의 경우, 관리자 계정이기 때문에 Database에 대한 모든 권한을 가지고 있습니다.
- 하지만, 실제 서비스에 사용되는 Database는 DBA가 root 권한을 가지고 있습니다.
- Database를 이용하는 개발자 및 응용프로그램은 역할에 맞도록 권한을 부여받아 사용해야 합니다.
- MYSQL Database 접속 및 사용 목적에 따라 관리자에게 사용자 계정을 부여받아야 합니다.
- MYSQL 사용자 계정을 생성할 때는 사용자 계정뿐만 아니라 접속할 수 있는 host 설정해 줘야 합니다.
- MySQL 8.0 버전부터는 계정의 생성은 CREATE USER 명령, 권한 부여는 GRANT 명령으로 구분합니다.
- MySQL 8.0부터는 GRANT 전에 USER가 먼저 생성하고 GRANT 문을 실행해 주세요.
- MySQL 8.0부터는 GRANT 문을 먼저 수행하면 오류가 발생하게 되어 사용자를 생성할 수 없습니다.
MySQL 접속 방법
MySQL 접속 방법은 링크를 참고하세요.
https://aurumguide.tistory.com/82
MySQL 터미널 접속 및 명령어
MySQL은 Workbench 통해서 접속할 수도 있지만 이번에는 터미널로 접속하는 방법에 관해서 설명하겠습니다. MySQL 접속 설명MySQL 서버를 설치했다면 먼저 할 일은 설치된 MySQL 서버 접
aurumguide.tistory.com
https://aurumguide.tistory.com/77
MySQL 연결, 접속 방법
MySQL 서버를 설치했다면 Workbench를 사용하여 MySQL 서버에 접속해 보겠습니다. MySQL 연결 준비MySQL 서버 설치. MySQL 서버 접속할 Workbench를 다운로드하여 설치하세요. Workbench는 보통 MyS
aurumguide.tistory.com
https://aurumguide.tistory.com/79
MySQL 원격 접속 방법(Remote Access)
MySQL 설치했다면 외부에서 접속하는 방법에 관해서 설명하겠습니다. MySQL 설정 파일 수정파일경로를 /etc/mysql/mysql.conf.d 이동합니다. vi, nano을 사용해서 설정 파일을 수정합니다. bind-address 부분을
aurumguide.tistory.com
MySQL 사용자 계정 생성, 권한 부여 방법
MySQL 사용자 계정 생성 방법.
- host를 '%'로 주면 모든 외부 IP에서 접속할 수 있습니다.
- 그러나 서비스할 때는 보안을 위해서 특정 IP 대역에서만 접속할 수 있도록 설정합니다.
-- 전체 IP 접속할 수 있는 사용자 계정 생성.
create user '아이디'@'%' identified by '패스워드';
-- 특정만 IP 접속할 수 있는 사용자 계정 생성.
create user '아이디'@'192.%' identified by '패스워드';
MySQL 사용자 계정 권한 부여 방법.
- MySQL은 grant, privileges on 명령어를 통해서 DB에 권한을 부여할 수 있습니다.
-- MySQL 사용자 계정에 모든 database에 대해서 권한을 부여 합니다.
GRANT ALL PRIVILEGES ON *.* TO 'username'@'192.%';
-- MySQL 사용자 계정에 특정 database에 대해서 권한을 부여 합니다.
GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'192.%';
-- MySQL 사용자 계정에 SELECT, INSERT, UPDATE 부여 합니다.
GRANT SELECT, INSERT, UPDATE ON database_name.* TO 'username'@'192.%';
최종적으로 권한을 적용한다.
- FLUSH PRIVILEGES 명령어는 최종적으로 권한을 적용합니다.
FLUSH PRIVILEGES;
생성된 MySQL 사용자 계정으로 접속합니다.