Я запускаю MySQL5.6.3 на виртуальной машине CentOS 6.1 под управлением Windows XP в VirtualBox.
Сетевая карта настроена в режиме моста, поэтому физическая и виртуальная машины используют одну и ту же карту ethernet.
На виртуальной машине все работает нормально: доступ в интернет, поиск 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
Что-то не так в моей сетевой конфигурации?
IMHO Похоже, вам нужен mysqld, чтобы прекратить использование DNS.
Пожалуйста, сделайте следующее: Добавьте это в /etc/my.cnf[1239 impressionThem restart mysql. С этого момента mysql больше не будет разрешать адреса через DNS.
Попробуйте !!!
CAVEAT
Прочтите эти параметры в документации MySQL:
Также есть один ограничение на использование этого: вы не можете использовать DNS-имена в столбце хоста любой из таблиц предоставления.
Меня недавно спросили, skip-host-cache
и skip-name-resolve
могут быть установлены без перезапуска mysql. Давайте выясним:
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 в столбце хоста любого таблиц предоставления.
Меня недавно спросили, могут ли skip-host-cache
и skip-name-resolve
быть установлен без перезапуска mysql. Давайте выясним:
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 в столбце хоста любого таблиц предоставления.
Меня недавно спросили, могут ли skip-host-cache
и skip-name-resolve
быть установлен без перезапуска mysql. Давайте выясним:
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 перезапустите.
Меня недавно спросили, skip-host-cache
и skip-name-resolve
можно установить без перезапуска mysql. Давайте выясним:
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 перезапустите.
Меня недавно спросили, skip-host-cache
и skip-name-resolve
можно установить без перезапуска mysql. Давайте выясним:
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 перезапустите.
Меня недавно спросили, можно ли установить skip-host-cache
и skip-name-resolve
без перезапуска mysql. Давайте выясним:
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 перезапустите.
Меня недавно спросили, можно ли установить skip-host-cache
и skip-name-resolve
без перезапуска mysql. Давайте выясним:
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 перезапустите.