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

MySQL 호스트 열의 % 기호 의미와 사용자 비밀번호 변경 방법

MySQL 호스트 열에서 %는 무엇을 의미할까요?

MySQL에서 localhost는 같은 머신(로컬 서버)에서만 접속이 가능하다는 것을 의미합니다. 반면 %는 와일드카드 문자로, 원격 호스트(remote host)를 포함한 모든 곳에서 접속이 가능함을 나타냅니다.

사용자 비밀번호 변경 문법

사용자 비밀번호를 변경하는 기본 문법은 다음과 같습니다.

SET PASSWORD FOR '사용자이름'@'localhost' = '새비밀번호';

1단계: 현재 사용자와 호스트 확인

비밀번호를 변경하기 전에 먼저 MySQL.user 테이블에서 사용자와 호스트 정보를 확인해야 합니다. 다음 쿼리를 실행하세요.

mysql> select user,host from MySQL.user;

실행 결과 예시는 다음과 같습니다.

+------------------+-----------+
| user             | host      |
+------------------+-----------+
| Bob              | %         |
| Manish           | %         |
| User2            | %         |
| mysql.infoschema | %         |
| mysql.session    | %         |
| mysql.sys        | %         |
| root             | %         |
| @UserName@       | localhost |
| Adam Smith       | localhost |
| James            | localhost |
| John             | localhost |
| John Doe         | localhost |
| User1            | localhost |
| am               | localhost |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
+------------------+-----------+
16 rows in set (0.01 sec)

위 결과에서 host 열이 %인 사용자는 어디서든 접속 가능하고, localhost로 지정된 사용자는 로컬 머신에서만 접속할 수 있습니다.

2단계: 비밀번호 변경하기

이제 'John'이라는 사용자의 비밀번호를 변경해 보겠습니다. 다음 쿼리를 실행하세요.

mysql> SET PASSWORD FOR 'John'@'localhost' ='John123456';
Query OK, 0 rows affected (0.35 sec)

3단계: 권한 새로고침(flush privileges)

비밀번호 변경 후에는 권한 정보를 갱신해야 변경 사항이 즉시 적용됩니다. 다음 명령어를 실행하세요.

flush privileges;

이렇게 하면 MySQL에서 호스트 열의 % 의미를 이해하고, 사용자 비밀번호를 안전하게 변경할 수 있습니다.