3

CentOS ボックスで perl (12.2) と freetds 0.91 を使用して mssql 2008 データベースに接続する必要があり、データベースで定義されたユーザーで正常に接続できます。ただし、ドメイン ユーザーに切り替える必要があり、それを機能させるために何をする必要があるかを理解できませんでした。データベースで正しくセットアップされているように見えます。これが私の接続文字列です。

my $dsn = [
    "DBI:Sybase:database=adx;server<server_name>",
    '<DOMAIN>\\<user>',
    '<password>',
    {
        PrintError  => 0,
        RaiseError  => 0,
        AutoCommit  => 0
    }
];

エラーメッセージは次のとおりです。

database connection failed for DBI:Sybase:database=<db_name>;server=<server_name>
<DOMAIN>\\<user> : OpenClient message: LAYER = (0) ORIGIN = (0) SEVERITY = (78) NUMBER = (34)
Server <server_name>, database
Message String: Adaptive Server connection failed

tds エラー(LAYER = (0) ORIGIN = (0) SEVERITY = (78) NUMBER = (34))はログインが失敗したことを示していると思いますが、パスワードが正しいことは確かで、mssql クライアントで直接試してみました。誰でもこれを機能させますか?

4

1 に答える 1

2

Linux から SQL サーバー (DBD::ODBC) に接続するために私が見つけた唯一の成功した方法は、ODBC を使用することです。SyBase モジュールは、SQL サーバーではなく、Sybase のインスタンスで使用する必要があります ...

ODBC で使用する接続文字列は、次のようになります。

 "DBI:ODBC:driver={SQL Server};Server=192.168.1.1,1433;database=db_name";
于 2012-07-28T08:00:57.600 に答える