원격 클라이언트가 MySQL 서버에 연결하도록 허용하는 방법

원격 클라이언트가 MySQL 서버에 연결하도록 허용하는 방법

2022-10-18 last update

4 minutes reading mysql client MySQL
클라이언트 시스템에서 원격 MySQL 서버에 연결하려고 할 때 원격 클라이언트가 이 MySQL 서버에 액세스할 수 없는 경우 아래와 같은 문제에 여러 번 직면했습니다.
# mysql -h 192.168.1.10 -u root -p
Enter password:
[Output]

ERROR 1130 (HY000): Host '192.168.1.12' is not allowed to connect to this MySQL server
이 문제는 클라이언트 시스템이 MySQL 서버에 연결할 수 있는 권한이 없는 경우 때문입니다. 기본적으로 MySQL 서버는 원격 클라이언트의 연결을 허용하지 않습니다.

MySQL 클라이언트 연결 허용:

클라이언트 시스템이 mysql 서버에 연결할 수 있도록 합니다. ssh를 사용하여 원격 mysql 서버에 로그인한 다음 로컬에서 MySQL 서버에 로그인합니다. 이제 다음 명령을 사용하여 원격 클라이언트를 허용합니다. 예를 들어 원격 클라이언트의 IP가 192.168.1.12이고 mysql 루트 계정을 통해 연결을 시도하는 경우.[ 아래 명령은 MySQL 서버에서 실행해야 합니다.]
# mysql -u root -p
Enter password:

mysql> GRANT ALL ON *.* to [email protected]'192.168.1.12' IDENTIFIED BY 'new-password';
mysql> FLUSH PRIVILEGES;
mysql> quit
지정된 클라이언트 시스템에서 연결하기 위해 MySQL 서버에 새 계정을 성공적으로 생성했습니다. 클라이언트 시스템에서 연결을 시도하겠습니다.
# mysql -h 192.168.1.10 -u root -p

[Sample Output] 
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 27
Server version: 5.1.69 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql>