MySQL의 모든 사용자 플로팅하는 방법
Takashi Yamamoto
Infrastructure Engineer · Leapcell

Key Takeaways
mysql.user
테이블에 대한 쿼리를 사용하여 모든 MySQL 사용자를 나열할 수 있습니다.mysql.user
테이블에 접근하려면 관리자 권한이 필요합니다.- 호스트별로 필터링하거나 고유한 사용자 이름을 선택하여 결과를 좁힐 수 있습니다.
MySQL 데이터베이스 서버를 관리할 때 기존의 모든 사용자 계정 목록을 보는 것이 필요한 경우가 많습니다. 이는 보안 설정을 감사하고, 권한을 관리하고, 인증 문제를 해결하는 데 도움이 될 수 있습니다. 이 글에서는 SQL 쿼리를 사용하여 모든 MySQL 사용자를 나열하는 방법을 안내합니다.
전제 조건
시작하기 전에 다음을 확인하십시오.
- MySQL이 설치되어 실행 중입니다.
- 충분한 권한(예:
root
또는 다른 관리 사용자)을 가진 MySQL 사용자 계정에 액세스할 수 있습니다.
다음을 사용하여 MySQL 셸에 로그인할 수 있습니다.
mysql -u root -p
루트 암호를 입력하라는 메시지가 표시됩니다.
모든 MySQL 사용자 보기
MySQL은 사용자 정보를 mysql.user
시스템 테이블에 저장합니다. 모든 사용자 목록을 보려면 다음 SQL 명령을 실행할 수 있습니다.
SELECT User, Host FROM mysql.user;
그러면 사용자가 연결할 수 있는 호스트와 함께 사용자 목록이 반환됩니다. 예를 들어 다음과 같습니다.
+------------------+-----------+
| User | Host |
+------------------+-----------+
| root | localhost |
| app_user | % |
| reporting_user | 192.168.% |
+------------------+-----------+
User
는 사용자 이름입니다.Host
는 사용자가 연결할 수 있는 위치를 지정합니다.%
는 모든 호스트를 의미합니다.localhost
는 로컬 연결만 허용됨을 의미합니다.
선택 사항: 고유한 사용자 이름 표시
호스트에 관계없이 고유한 사용자 이름에만 관심이 있다면 쿼리를 수정할 수 있습니다.
SELECT DISTINCT User FROM mysql.user;
호스트별로 사용자 필터링
예를 들어 호스트별로 사용자를 필터링할 수도 있습니다.
SELECT User FROM mysql.user WHERE Host = 'localhost';
필요한 권한
이러한 쿼리를 실행하려면 mysql.user
테이블에 대한 SELECT
권한이 있어야 합니다. 일반적으로 root
와 같은 관리 사용자는 이 권한을 가지고 있습니다.
"권한이 거부되었습니다" 오류가 발생하면 DBA에게 액세스를 요청하거나 더 높은 권한을 가진 사용자로 로그인해야 할 수 있습니다.
보안 참고 사항
관리자가 아닌 사용자에게 mysql.user
테이블에 대한 일반적인 액세스 권한을 부여하지 마십시오. 사용자 인증 및 권한에 대한 중요한 정보가 포함되어 있습니다.
결론
간단한 SQL 쿼리를 사용하면 모든 MySQL 사용자를 쉽게 나열할 수 있습니다. 계정을 감사하거나 액세스를 관리하든, mysql.user
테이블을 쿼리하는 방법을 이해하는 것은 모든 데이터베이스 관리자에게 필수적인 기술입니다.
FAQs
SELECT User, Host FROM mysql.user;
를 사용하여 모든 사용자와 허용된 호스트를 나열합니다.
MySQL 계정은 사용자 이름과 호스트로 정의되므로 한 사용자가 여러 호스트 항목을 가질 수 있습니다.
root
와 같이 충분한 권한이 있는 사용자로 로그인했는지 확인하십시오.
우리는 백엔드 프로젝트 호스팅을 위한 최고의 선택인 Leapcell입니다.
Leapcell은 웹 호스팅, 비동기 작업 및 Redis를 위한 차세대 서버리스 플랫폼입니다.
다국어 지원
- Node.js, Python, Go 또는 Rust로 개발하십시오.
무료로 무제한 프로젝트 배포
- 사용량에 대해서만 비용을 지불합니다. 요청이나 요금이 없습니다.
타의 추종을 불허하는 비용 효율성
- 유휴 요금 없이 사용량에 따라 지불합니다.
- 예: $25는 평균 응답 시간 60ms에서 694만 건의 요청을 지원합니다.
간소화된 개발자 경험
- 간편한 설정을 위한 직관적인 UI.
- 완전 자동화된 CI/CD 파이프라인 및 GitOps 통합.
- 실행 가능한 통찰력을 위한 실시간 메트릭 및 로깅.
손쉬운 확장성 및 고성능
- 손쉽게 높은 동시성을 처리하기 위한 자동 확장.
- 운영 오버헤드가 전혀 없으므로 구축에만 집중할 수 있습니다.
설명서에서 자세히 알아보십시오!
X에서 우리를 팔로우하세요: @LeapcellHQ