PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: Michael Peppler <mpeppler at MBAY dot NET>
Subject: Re: perl directory tree migration problem
Date: Dec 8 1997 4:17PM

Brian Black wrote:
> 
> hi everyone,
> 
> i installed perl 5004.004 and sybperl 2.08.52 on an nt4 server using visual c++
> without any problems. i had a request to install it on another nt box, but the
> system administrator will not allow me to install the c++ compiler first. he
> requested that i copy the perl directory tree only and did so.
> 
> in running a simple test, i get the following error:
> 
> DB-Library error:
>         Specified server name attribute could not be found
> Operating-system error:
>         There is no OS level error
> Can't call method "dbuse" without a package or object reference at test.pl
> line 7.
> 
> the perl, sybase include and lib paths in the target nt system appear to be set
> correctly.
> 

After some querying on Usenet and SYBASE-L it seems that this error
is printed when CTlib (or DBlib from OpenClient 11.x) tries
to connect to a server that does not exist in the interfaces
file.

I find this error particularily misleading, and I much prefer
the old DBlibrary error: "Server name not found in interfaces file":

kiruna (8:07am):9 > perl -MSybase::DBlib -e '$dbh = new Sybase::DBlib
"sa",undef,"foo";'
DB-Library error:
        Server name not found in interface file.

kiruna (8:08am):10 > perl -MSybase::CTlib -e '$dbh = new Sybase::CTlib
"sa",undef,"foo";'  

Open Client Message:
Message number: LAYER = (5) ORIGIN = (3) SEVERITY = (4) NUMBER = (3)
Message String: ct_connect(): network packet layer: internal net library
error: Specified server name attribute could not be found


So for those of you who are hitting this problem, either with
sybperl or DBI/DBD::Sybase, please make sure that $SYBASE points
to a valid SYBASE install directory, that the interfaces file
is available there (or sql.ini for NT [I think! - I'm not an NT
user!]), and that the server name you try to connect to (either
explicitly in the new/connect/dblogin/ct_connect call or in the
DSQUERY variable) is correct and exists in the interfaces file.

Many thanks to all who answered my question!

Michael
-- 
Michael Peppler       -||-  Data Migrations Inc.
mpeppler@datamig.com  -||-  http://www.mbay.net/~mpeppler