Есть старый перловый скрипт, который использует dbi::Oracle для коннекта к БД.
DBI->connect("dbi:Oracle:host=".$cfg->param('host').";sid=".$cfg->param('sid').";port=".$cfg->param('port');
ip hostа в нем задается жестко, из-за чего если мастер база у оракла переезжает, соотв приходится каждый раз этот ip переписывать. Oracle админ дал след строчку для автовыбора мастер базы:
dns_tns = (DESCRIPTION=(CONNECT_TIMEOUT=15)(TRANSPORT_CONNECT_TIMEOUT=1)(RETRY_COUNT=0)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP) (HOST=10.100.1.2)(PORT = 1521))(ADDRESS=(PROTOCOL=TCP)(HOST=10.100.1.3)(PORT = 1521))(ADDRESS=(PROTOCOL=TCP)(HOST=10.100.2.7)(PORT = 1521))(ADDRESS=(PROTOCOL=TCP) (HOST=10.100.2.6)(PORT = 1521)))(LOAD_BALANCE=OFF)(FAILOVER=TRUE)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=mhost_rw)))
Как эту логику засунуть в перловых скрипт ?