SQL Anywhere 12

2020-09-08 22:36发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我是使用SQLAnywhere 12数据库的.net开发人员,这是我的新手。 尝试连接到远程计算机上的多个数据库时,似乎出现问题。 因此,如果我在远程计算机上启动了多个数据库,则可以连接到我首先启动的数据库。 其他我得到的数据库服务器未找到错误。 如果我以相反的顺序启动它们,则始终可以连接到第一个。 因此,它不是特定于数据库的。 SQL Anywhere .NET数据提供程序在同一台计算机上命中不同的数据库连接时是否存在任何已知问题? 不知道其他哪些数据是相关的。 有问题的服务器是Windows Server 2012 R2。 我在Windows 10上。数据库文件的名称相同,但目录不同。 不确定是否相关。 让我知道其他信息会有所帮助。 谢谢。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我是使用SQLAnywhere 12数据库的.net开发人员,这是我的新手。 尝试连接到远程计算机上的多个数据库时,似乎出现问题。 因此,如果我在远程计算机上启动了多个数据库,则可以连接到我首先启动的数据库。 其他我得到的数据库服务器未找到错误。 如果我以相反的顺序启动它们,则始终可以连接到第一个。 因此,它不是特定于数据库的。 SQL Anywhere .NET数据提供程序在同一台计算机上命中不同的数据库连接时是否存在任何已知问题? 不知道其他哪些数据是相关的。 有问题的服务器是Windows Server 2012 R2。 我在Windows 10上。数据库文件的名称相同,但目录不同。 不确定是否相关。 让我知道其他信息会有所帮助。 谢谢。

付费偷看设置
发送
5条回答
悠然的二货
1楼-- · 2020-09-08 23:18

SQL Anywhere的设计租户之一是易于使用,但有时要付出一定的代价。 您可能会遇到的是默认服务器和/或默认数据库,这意味着在没有提供服务器名和数据库名作为连接的一部分的情况下,第一个服务器和第一个数据库将成为默认连接。

< p> 连接问题排查应该概述如何排查问题。 如果具有相同名称的数据库文件,则需要确保数据库名称是不同的,如下所示:

 dbsrv12 -x tcpip -n ServerName  \ database.db -n db1  \ database.db -n db2 

此服务器名为ServerName,并且有2个名为db1和db2的数据库(文件名相同,但位于不同的目录中)

您的连接字符串 对于dir1

" uid = ; pwd = ; eng = ServerName; dbn = db1; links = ..." 

的数据库, dir2中的数据库

" uid = ; pwd = ; eng = ServerName; dbn = db2; links = ..." 

请注意,关键区别在于DBN (或数据库名称)被提供,并且是服务器起始行中数据库文件之后以-n形式提供的唯一数据库名称。

吹牛啤
2楼-- · 2020-09-08 23:28

在我看来,您正在加载多个 一个数据库服务器实例上的数据库。

为了连接到同一服务器实例上存在的多个数据库中的特定数据库,必须在连接参数中指定数据库服务器名称和数据库名称。
我认为您仅指定服务器名称。

有关详细信息,请参见下文。

" ServerName(服务器)连接参数" http://dcx.sap.com/index.html#1201/zh/dbadmin/servernameparameter.html

"数据库名称(DBN)连接参数" http://dcx.sap.com/index.html#1201/en/dbadmin/databasenameparameter.html

悻福寶寶
3楼-- · 2020-09-08 23:24

嗨,约翰,

我想知道以下信息。
1。 服务器的启动选项。
例如。 dbsrv12 -n testdb" c:\ test.demo.db";

2。 您如何连接到服务器?

3.是否可以通过SQL Anywhere工具(Sybase Central或isql)连接到服务器?


4。 错误消息的详细信息。
什么是正确的消息?
>其他我得到未找到数据库服务器的错误。

5。 dblocate命令
请在连接中执行 dblocate 命令 侧。

谢谢,
Atsushi

95年老男孩
4楼-- · 2020-09-08 23:34

只有在运行多个数据库服务器时,这才是正确的(尽管您可以将单个服务器配置为使用多个端口)。 在我的示例中,我启动了具有2个数据库的单个数据库服务器。 通常,建议这样做-服务器将协同管理数据库服务器可用的资源-多个服务器会导致竞争性的资源使用并且效率较低。 如果要运行单独的服务器,则应使用特定端口启动每个服务器,以确保数据库连接具有确定性;否则,第一个启动的服务器将使用默认端口,第二个服务器将使用备用端口。

小灯塔
5楼-- · 2020-09-08 23:24

感谢您的帮助和快速响应。 因此,我们在连接字符串中指定端口号,并尝试为每个数据库使用相同的端口号。 似乎它们在旋转时各自在不同的端口上运行。 我猜应该很明显,我很糟糕。

一周热门 更多>