I need to connect to an Oracle database from a perl script, it works in my tests and when using sqlplus, but not in production. This is a summary of the situation:
Oracle 11g XE (11.2.0.2.0) : (Test environment)
sqlplus : OK
perl : OK
Oracle 11g (11.2.0.4.0) : (Production environment)
sqlplus : OK
perl : ERROR
The error reported is: Connect failed because target host or object does not exist
I have triple checked the connection settings and are not mistaken.
Specifics:
- Test Server: Windows Server 2012
- Production Server: Windows Server (Unknown version)
- Client: Ubuntu 18.04 x64
- Perl: 5.26.1
- SQL*Plus: 12.2.0.1.0
SQL*Plus command:
sqlplus64 user/[email protected]/db_sid
Perl script:
#!/usr/bin/perl
use DBI;
$driver = "Oracle";
$sid = "db_sid";
$host = "192.168.0.1";
$dsn = "DBI:$driver:sid=$sid;host=$host";
$dbh = DBI->connect($dsn, "user", "password");
Note: I won't be able to test or execute anything in the production environment until next month.
What could be the issue?
DBI:Oracle:192.168.0.1/db_sid
for $dsn