← 전체 목록
우분투

mysql에서 사용자, 비번 설정하기 또는 사용자 리스트 보기, 그리고 사용자 비번 변경하기

작성일: 2024-12-01 · 원본 자료

1. MySQL 사용자 계정 생성 및 비밀번호 설정

MySQL에 접속합니다:
bash
sudo mysql -u root -p
새로운 사용자 계정 생성 및 비밀번호 설정:
sql
CREATE USER '사용자명'@'호스트' IDENTIFIED BY '비밀번호';
  • 사용자명: 생성할 사용자 이름.
  • 호스트: 사용자가 접근할 호스트. 일반적으로 localhost를 사용. 외부 접속을 허용하려면 %로 설정.
  • 비밀번호: 사용자 비밀번호.
예:
sql
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'secure_password';
사용자에게 권한 부여:
sql
GRANT ALL PRIVILEGES ON 데이터베이스명.* TO '사용자명'@'호스트'; FLUSH PRIVILEGES;
예:
sql
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost'; FLUSH PRIVILEGES;

2. MySQL 사용자 목록 확인

MySQL 사용자 목록을 확인하려면 다음 명령어를 실행:
sql
SELECT User, Host FROM mysql.user;
이 명령어는 모든 사용자 계정과 해당 호스트를 표시합니다.

3. MySQL 사용자 비밀번호 변경

(1) 비밀번호 변경하기

MySQL 5.7 이상 버전에서는 다음 명령어를 사용하여 비밀번호를 변경합니다:
sql
ALTER USER '사용자명'@'호스트' IDENTIFIED BY '새로운_비밀번호';
예:
sql
ALTER USER 'wp_user'@'localhost' IDENTIFIED BY 'new_secure_password';
변경 후 권한 적용:
sql
FLUSH PRIVILEGES;

4. MySQL 사용자 삭제

사용자를 삭제하려면 다음 명령어를 사용합니다:
sql
DROP USER '사용자명'@'호스트';
예:
sql
DROP USER 'wp_user'@'localhost';

5. MySQL 모든 사용자 비밀번호 재설정 (루트 계정 예외)

비밀번호를 전역적으로 재설정해야 한다면, 사용자별로 수동으로 ALTER USER 명령을 실행해야 합니다. MySQL은 보안 이유로 자동화된 대규모 비밀번호 변경을 지원하지 않습니다.

참고 사항

  • 사용자 생성 및 권한 부여 후에는 항상 FLUSH PRIVILEGES를 실행하여 변경 사항을 적용하세요.
  • 특정 사용자에 대해 읽기 전용 권한 등 제한된 권한을 부여하고 싶다면 다음처럼 설정할 수 있습니다:
    sql
    GRANT SELECT ON 데이터베이스명.* TO '사용자명'@'호스트';