1

Тема: Соединения из PERL с одного IP (как?)

Вот такая проблема.
На интерфейсе около десятка IP
Но нужно чтобы перл коннектился к MySql только с одного, определенного.
Путем DBI это не решается. Перечитано туча манов, и толку пока нет. Пересборка клиента MySql на хосте с указанием --host=..... тоже не дала результатов.

Может кто сталкивася? Как?

Thumbs up Thumbs down

2

Re: Соединения из PERL с одного IP (как?)

Ответ как почти всегд случается, находится если его ищут.

Делаем :
1. создаем файл /etc/my.cnf с контентом

[client]
host={..IP..}

[mysqld]
host={..IP..}
port=3306

Далее в коде скрипта:

my $dsn = "dbi:mysql:$P_BASE;mysql_read_default_file=/etc/my.cnf;host=$MysqlHOST";
my $dbh = DBI->connect($dsn, $MysqlUSER, $MysqlPAWD, {RaiseError => 1}) or error ($DBI::errstr);

ну и все работает.

Удачи!
И читайте внимательно man DBI

PS: Необходимо после всего, перезагрузить машину клиента(там где скрипт) или зайти на следующий день, для продолжения тестов smile PERL каким то образом кеширует таблицы хостов и IP
Поэтому чтобы этот кеш обновился, необходимо одно из двух(см. выше)

Thumbs up Thumbs down