Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 사용자 존재 여부 확인 후 삭제하는 방법

MySQL에는 현재 몇 명의 사용자가 등록되어 있는지 확인하려면 mysql.user 테이블을 조회하면 됩니다. 아래 문법을 사용하면 MySQL에 존재하는 모든 사용자 목록을 확인할 수 있습니다.

mysql> SELECT User FROM mysql.user;

위 쿼리를 실행하면 다음과 같이 사용자 목록이 출력됩니다.

+------------------+
| User             |
+------------------+
| Mac              |
| Manish           |
| mysql.infoschema |
| mysql.session    |
| mysql.sys        |
| root             |
| Smith            |
| am               |
+------------------+
8 rows in set (0.00 sec)

DROP USER IF EXISTS로 사용자 삭제하기

사용자 목록을 확인한 뒤, 해당 사용자가 존재할 경우에만 안전하게 삭제하려면 DROP USER IF EXISTS 구문을 사용합니다. 이 구문은 대상 사용자가 없어도 오류를 발생시키지 않기 때문에 스크립트나 자동화 작업에서 특히 유용합니다.

MySQL에서 사용자를 삭제하는 기본 문법은 다음과 같습니다.

DROP USER IF EXISTS yourUserName;

실제 예제로 사용자 'Mac'을 삭제해 보겠습니다. 아래와 같이 쿼리를 실행하면 됩니다.

mysql> DROP USER IF EXISTS Mac;
Query OK, 0 rows affected (0.11 sec)

삭제 결과 확인하기

사용자 'Mac'이 정상적으로 삭제되었는지 확인하려면 다시 mysql.user 테이블을 조회합니다.

mysql> SELECT User FROM mysql.user;

실행 결과를 보면 사용자 'Mac'이 성공적으로 삭제되었음을 확인할 수 있습니다.

+------------------+
| User             |
+------------------+
| Manish           |
| mysql.infoschema |
| mysql.session    |
| mysql.sys        |
| root             |
| Smith            |
| am               |
+------------------+
7 rows in set (0.00 sec)

이처럼 SELECT User FROM mysql.user;로 사용자 존재 여부를 먼저 파악하고, DROP USER IF EXISTS 구문으로 조건부 삭제를 수행하면 존재하지 않는 사용자를 삭제하려다 발생할 수 있는 오류를 예방할 수 있습니다.