I am having quite a hard time with this problem. I'm trying to connect to a MS sql server 2000 using FreeTDS and DBI. The trick is that I can only use NT Authentication, and I have to connect to a sql named instance. I can connect from Windows if I create the Windows user on my box, then use SQL Server Management Studio 2005, but not from Perl's DBI. Here is my dsn for reference. I and am not connecting locally.
my $host = '127.0.0.1\InstanceName';
my $usr = 'HostName\UserName';
my $pw = 'Password';
my $dsn = DRIVER=/usr/local/lib/libtdsodbc.so;SERVER=$host;PORT=4433;D
my $dbh = DBI->connect('DBI:ODBC:'.$dsn) || die $DBI::errstr;
I keep getting the error [FreeTDS][SQL Server]Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection.
I'm not sure what is going wrong. I don't know if it is failing because of the NT authentication, or because of the named instance. Something to note, the sql server is not a part of the domain, and its hostname does not currently resolve to the IP. Any clues?