【问题标题】:OleDBConnection error Database Server Not Found C#OleDBConnection 错误数据库服务器未找到 C#
【发布时间】:2015-11-24 18:07:28
【问题描述】:

我正在尝试使用以下连接字符串连接到远程 SQL Anywhere 10 数据库服务器,但收到“找不到数据库服务器”错误。

OleDbConnection conn = new OleDbConnection("Provider=SAOLEDB.10;ENG=dental;DBN=dentserv;
LINKS=tcpip(host=192.168.1.100,PORT=2638);
Integrated Security = True; User ID = dba; PWD = sql");

使用相同的代码,我可以连接到本地数据库,该数据库的设置方式与我尝试连接的远程服务器相同,没有任何问题:

OleDbConnection conn = new OleDbConnection("Provider=SAOLEDB.10;Data Source = dental; 
Database=dental;Integrated Security = True; User ID = dba; PWD = sql");

我已经在字符串中添加和删除了多个变量以进行故障排除以查看是否缺少任何内容(ENG 代替数据源,有和没有 DBN、DSN 等),大多数似乎是可互换的,但总是抛出没有服务器的同样错误。

有关其他信息,我可以使用不同的数据库管理工具使用相同的端口 IP 凭据连接到此服务器数据库,而不会出现问题。它的数据库 URL 是:jdbc:sybase:Tds:192.168.1.100:2638?ServiceName=

连接字符串: DBN=DENTSERV;DSN=DENTAL;UID=DBA;PWD=SQL

有什么想法吗?我已经在这方面工作了一段时间,没有进一步的进展。任何见解将不胜感激!

【问题讨论】:

  • 您的防火墙是否阻止了它?服务器上的防病毒程序?
  • 不,网络上的端口都是开放的。

标签: c# sqlanywhere


【解决方案1】:

主机(host=192.168.1.100); 似乎是一个私有 IP(本地网络的 IP),您不能将其用于远程访问,您可以使用公共 IP,并且服务器需要配置为远程访问。

【讨论】:

  • 这只是我的问题的一个示例 IP,这不是我使用的 IP。
  • code var connectionString = @"Driver={SQL Anywhere 10};DatabaseName=my_db_name;EngineName=my_server_name;uid=username;pwd=password;LINKs=tcpip(host=host_ip_address)";使用 (var cn = new OleDbConnection(connectionString)) { cn.Open(); } `
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-20
  • 1970-01-01
  • 2019-11-15
  • 2021-06-10
  • 1970-01-01
相关资源
最近更新 更多