Есть ли секретный способ привязать MySQL к нескольким IP-адресам?
Насколько я вижу, параметр bind-address в my.cnf не поддерживает более одного IP, и вы не можете иметь его более одного раза.
linux
mysql
ip
configuration
Бламу
источник
источник
socket
иbind-address
варианты.Привязка к 127.0.0.x не сделает ее доступной для всех устройств, она сделает ее доступной только локально. Если вы хотите сделать его доступным для всех интерфейсов, вам следует использовать 0.0.0.0. Если вы хотите получить доступ к нему из более чем одного, но менее чем из всех интерфейсов, вам следует привязать к 0.0.0.0 и отключить брандмауэр от интерфейсов, через которые вы не хотите получать доступ.
Кроме того, в качестве второго уровня безопасности вы должны убедиться, что для всех ваших пользователей MySQL в поле хоста установлено значение, отличное от% (то есть на любом хосте).
источник
INADDR_ANY (0.0.0.0) means any address for binding;
?/etc/mysql/conf.d/bindaddress.cnf
файл с содержимым[mysqld] \n bind-address = 0.0.0.0
Вы не можете привязать более одного IP-адреса, но вместо этого вы можете связать все доступные IP-адреса. Если да, то просто использовать
0.0.0.0
для связывания адреса в файле конфигурации MySQL (например /etc/mysql/my.cnf) следующим образом :Если адрес 0.0.0.0, сервер принимает соединения TCP / IP на всех интерфейсах IPv4 хост-сервера.
Кроме того, если адрес есть
::
, сервер принимает соединения TCP / IP на всех интерфейсах IPv4 и IPv6 хост-сервера. Используйте этот адрес, чтобы разрешить подключения IPv4 и IPv6 на всех интерфейсах сервера.Или вы можете просто закомментировать
bind-address=
, так что он будет привязан ко всем адресам. Но убедитесь, что вы неskip-networking
включили в my.cnf, если вы хотите разрешить и удаленные подключения (подробнее: MySQL: разрешить как удаленные, так и локальные подключения ).После изменения адреса привязки не забудьте перезапустить сервер MySQL:
В конце концов вы можете запустить несколько экземпляров MySQL на одной машине (разные порты) с репликацией Master / Slave. Репликация позволяет копировать данные с одного сервера баз данных MySQL (главного) на один или несколько серверов баз данных MySQL (ведомых).
Читать далее:
источник
Нет, ты не можешь. На странице, на которую вы ссылаетесь, четко указано:
источник
Как уже отвечали другие, пока нет способа выборочно связать более одного интерфейса.
В Linux есть некоторые инструменты TCP, которые делают это возможным. В этой настройке вы настроите mysql для прослушивания 127.0.0.1, а затем будете использовать redir для выставления его на произвольных интерфейсах.
Я использовал это, чтобы помочь гостю виртуального ящика увидеть mysql, установленный на хост-машине.
источник
Я думаю, что ваш вопрос связан с этой ошибкой http://bugs.mysql.com/bug.php?id=14979 В отчете об ошибке предлагается обходной путь.
источник
Источник: https://dev.mysql.com/doc/refman/8.0/en/server-options.html
источник
В my.cnf изменить (как правило, /etc/mysql/my.cnf в Linux или для Windows, проверьте этот ответ.
в
Затем перезапустите mysql (при перезапуске сервиса Ubuntu mysql ) в Windows обычно перезапускайте сервис через Win + R services.msc
0.0.0.0 говорит, что он привязывается ко всем доступным IP-адресам с портом, также указанным в my.cnf
источник