MySQL [경고] IP 주소를 확인할 수 없습니다


27

VirtualBox의 Windows XP에서 실행되는 CentOS 6.1 가상 머신에서 MySQL5.6.3을 실행하고 있습니다.

네트워크 카드가 브리지 모드로 구성되어 있으므로 실제 및 가상 머신이 동일한 이더넷 카드를 공유합니다.

가상 머신에서는 인터넷 액세스, DNS 조회 등 모든 것이 잘 작동합니다. 그러나 MySQL 데몬에 연결하는 데 시간이 걸리고 로그에이 경고가 계속 표시됩니다.

[경고] IP 주소 '192.168.1.201'을 (를) 확인할 수 없습니다 : 이름 확인시 일시적인 오류

192.168.1.201 MySQL 클라이언트를 실행하는 호스트 컴퓨터입니다.

DNS 조회는 정상적으로 작동하지만 역방향 DNS 조회는 시간 초과로 종료됩니다.

가상 머신 구성은 다음과 같습니다.

# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
HWADDR="08:00:27:4B:3D:7C"
NM_CONTROLLED="yes"
ONBOOT="yes"
NETMASK=255.255.255.0
IPADDR=192.168.1.200
GATEWAY=192.168.1.1
PEERDNS=yes

# cat /etc/resolv.conf
nameserver 192.168.1.1

네트워크 구성에 문제가 있습니까?


이 질문에 대한 또 다른 대답을 참조하십시오 : serverfault.com/a/778161/96578
Amin Sh

답변:


49

IMHO DNS 사용을 중지하려면 mysqld가 필요한 것 같습니다.

다음을 수행하십시오 : 이것을 /etc/my.cnf에 추가하십시오

[mysqld]
skip-host-cache
skip-name-resolve

그런 다음 mysql을 다시 시작하십시오. 그때부터 mysql은 더 이상 DNS를 통해 주소를 확인하지 않습니다.

시도 해봐 !!!

경고

MySQL 문서에서 다음 옵션을 읽으십시오.

또한이를 사용하는 데 한 가지 제한이 있습니다. 권한 부여 테이블의 호스트 열에서 DNS 이름을 사용할 수 없습니다.

업데이트 2012-12-17 08:37 EDT

나는 경우 최근에 질문을 받았다 skip-host-cacheskip-name-resolveMySQL의 재시작없이 설정 될 수있다. 알아 보자:

mysql> show variables like '%host%';
+---------------+--------------+
| Variable_name | Value        |
+---------------+--------------+
| hostname      | ************ |
| report_host   |              |
+---------------+--------------+
2 rows in set (0.00 sec)

mysql> show variables like 'skip_%';
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| skip_external_locking | ON    |
| skip_name_resolve     | OFF   |
| skip_networking       | OFF   |
| skip_show_database    | OFF   |
+-----------------------+-------+
4 rows in set (0.00 sec)

mysql> set global skip_name_resolve = 1;
ERROR 1238 (HY000): Variable 'skip_name_resolve' is a read only variable
mysql>

표시된대로 skip-host-cache전역 변수 목록에는 표시되지 않습니다. 에 대해 skip_name_resolve볼 수있었습니다. 그러나 읽기 전용 변수이므로 동적으로 변경할 수 없습니다.

따라서, skip-host-cache그리고 skip-name-resolve단지 MySQL의 재시작을 통해 변경 될 수 있습니다.


DNS 조회를 비활성화하면 문제가 있습니까?
Uday

@Uday mysql의 유일한 관심사는 다음과 같습니다 mysql.user. 의 호스트 열에서 DNS 이름을 효과적으로 사용할 수 없습니다 . 있다면 IP 주소를 공개 또는 개인 (바람직한) IP 주소로 바꿔야합니다.
RolandoMySQLDBA 2016 년

@RolandoMySQLDBA는 MySql을 다시 시작하지 않고 추가 skip-host-cache하고 추가하는 방법이 skip-name-resolve있습니까?

@Ran 죄송합니다. 대답은 '아니요'입니다. 이것을 반영하여 답변을 업데이트했습니다.
RolandoMySQLDBA

로컬 호스트의 연결 또는 다른 문제와 같은 가능한 문제가 있습니까? ip에 대한 문제에 직면하고 있습니다243.221.167.124.adsl-pool.sx.cn
Malay M
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.