尝试更改连接到 SQL 服务器数据库的 perl 脚本中的连接主机名
Trying to change connection host name in perl script that connect to SQL Server DB
我们在 Linux 机器上有一个 perl 脚本连接到 SQL 服务器数据库并获取信息,我们正在尝试更新数据库主机详细信息但找不到参数或变量在该脚本中执行此操作。
use strict;
use XML::Simple;
use Data::Dumper;
use DBI;
use DBI qw(:sql_types);
use MIME::lite;
my $SQL_Datasource= 'dbi:ODBC:eventMSSQL';
my $SQL_user= 'user1';
my $SQL_password ='abc@123';
$dbh=DBI->connect($SQL_Datasourse,$SQL_user,$SQL_password)
一些 ODBC 驱动程序将连接信息存储在一些专用文件中。
例如 UnixODBC 存储在 /etc
中名为 odbcinst.ini
的文件中
来源(https://www.easysoft.com/developer/languages/perl/dbd_odbc_tutorial_part_1.html)
您的脚本正在连接到 data ssource n 下定义的数据库名称 (DSN) eventMSSQL
.
要更改您连接的主机,您有三个选择。
首先,您可以修改此 DSN 定义以指向不同的主机。此 eventMSSQL
DSN 在您的 Linux 系统的 ODBC 安装中某处定义,可能在 /etc/odbc.ini
或 ~/.odbc.ini
.
中
或者,您可以使用不同的主机创建新的 DSN 定义,然后连接到该主机。
最后,您还可以更改 DBI->connect
data_source 以包含 ODBC 连接字符串而不是 DSN,它看起来像 dbi:ODBC:Driver=...;Host=...;Port=...
。 (DSN 是该 Driver/Host/Port/etc 规范的 shorthand。)
DBD::ODBC::FAQ 有一个 entry on DSNs and connection strings 在这里很有启发性。
我们在 Linux 机器上有一个 perl 脚本连接到 SQL 服务器数据库并获取信息,我们正在尝试更新数据库主机详细信息但找不到参数或变量在该脚本中执行此操作。
use strict;
use XML::Simple;
use Data::Dumper;
use DBI;
use DBI qw(:sql_types);
use MIME::lite;
my $SQL_Datasource= 'dbi:ODBC:eventMSSQL';
my $SQL_user= 'user1';
my $SQL_password ='abc@123';
$dbh=DBI->connect($SQL_Datasourse,$SQL_user,$SQL_password)
一些 ODBC 驱动程序将连接信息存储在一些专用文件中。
例如 UnixODBC 存储在 /etc
中名为odbcinst.ini
的文件中
来源(https://www.easysoft.com/developer/languages/perl/dbd_odbc_tutorial_part_1.html)
您的脚本正在连接到 data ssource n 下定义的数据库名称 (DSN) eventMSSQL
.
要更改您连接的主机,您有三个选择。
首先,您可以修改此 DSN 定义以指向不同的主机。此 eventMSSQL
DSN 在您的 Linux 系统的 ODBC 安装中某处定义,可能在 /etc/odbc.ini
或 ~/.odbc.ini
.
或者,您可以使用不同的主机创建新的 DSN 定义,然后连接到该主机。
最后,您还可以更改 DBI->connect
data_source 以包含 ODBC 连接字符串而不是 DSN,它看起来像 dbi:ODBC:Driver=...;Host=...;Port=...
。 (DSN 是该 Driver/Host/Port/etc 规范的 shorthand。)
DBD::ODBC::FAQ 有一个 entry on DSNs and connection strings 在这里很有启发性。