MySQL 8에서 비밀번호를 사용해 새 사용자 만들기
MySQL 8에서는 CREATE USER 명령어를 사용하여 비밀번호가 설정된 새 사용자 계정을 손쉽게 생성할 수 있습니다. 이 글에서는 기본 문법부터 실제 예제까지 단계별로 살펴보겠습니다.
먼저 현재 사용 중인 MySQL 버전을 확인해 보겠습니다.
mysql> select version(); +-----------+ | version() | +-----------+ | 8.0.12 | +-----------+ 1 row in set (0.14 sec)
새 사용자 생성 기본 문법
비밀번호와 함께 새 사용자를 생성하려면 아래와 같은 문법을 사용합니다.
CREATE USER '사용자이름'@'localhost' IDENTIFIED BY '비밀번호';
생성된 사용자에게 권한 부여하기
새로 만든 사용자에게 모든 권한을 부여하려면 다음과 같이 GRANT 구문을 사용합니다.
GRANT ALL ON *.* TO '사용자이름'@'localhost';
권한 변경 사항을 즉시 적용하려면 FLUSH PRIVILEGES 명령으로 권한 테이블을 새로 고쳐야 합니다.
flush privileges;
실전 예제: 'James' 사용자 생성하기
위에서 살펴본 문법을 바탕으로 실제 사용자를 생성해 보겠습니다. 먼저 mysql 데이터베이스를 선택한 후 CREATE USER 쿼리를 실행합니다.
mysql> use MySQL; Database changed mysql> CREATE USER 'James'@'localhost' IDENTIFIED BY 'James123456'; Query OK, 0 rows affected (0.21 sec)
다음으로 새로 생성된 사용자에게 모든 권한을 부여하는 쿼리를 실행합니다.
mysql> GRANT ALL ON *.* TO 'James'@'localhost'; Query OK, 0 rows affected (0.18 sec)
사용자 생성 여부 확인하기
사용자가 정상적으로 생성되었는지 확인하려면 다음 쿼리를 실행합니다.
mysql> select user from MySQL.user;
아래 출력 결과에서 방금 생성한 'James' 사용자를 확인할 수 있습니다.
+------------------+ | user | +------------------+ | Bob | | Manish | | User2 | | mysql.infoschema | | mysql.session | | mysql.sys | | root | | @UserName@ | | Adam Smith | | James | | John | | John Doe | | User1 | | am | | hbstudent | | mysql.infoschema | | mysql.session | +------------------+ 17 rows in set (0.00 sec)
출력 결과를 보면 'James' 사용자가 성공적으로 생성된 것을 알 수 있습니다. 마지막으로 FLUSH PRIVILEGES 명령을 실행하여 권한 정보를 갱신합니다.
mysql> flush privileges; Query OK, 0 rows affected (0.04 sec)
정리
MySQL 8에서 새 사용자를 추가하는 과정은 크게 세 단계로 요약할 수 있습니다. 첫째, CREATE USER ... IDENTIFIED BY ...로 계정과 비밀번호를 생성하고, 둘째, GRANT ALL ON *.* TO ...로 필요한 권한을 부여하며, 셋째, FLUSH PRIVILEGES;로 변경 사항을 즉시 반영하면 됩니다. 이 순서만 기억하면 언제든 안전하게 새 사용자 계정을 관리할 수 있습니다.