您可以同时运行多个嵌入式服务器,并且 您可以拥有多个连接到同一嵌入式服务器的应用程序。 已经运行常规服务器也不是问题。
ever,嵌入式服务器锁定数据库文件 成功连接后独家使用。这意味着你不能 从多个嵌入式服务器进程访问相同的数据库 同时(或来自任何其他服务器,一旦嵌入式服务器具有 锁定文件) 是文档对吗?我的示例应用似乎相反。不久前,我在PC上安装了一只火鸟超级车器,但在测试此之前将其卸载。
:您所指的文档基于Firebird 2.0或2.1。 Firebird 2.5更改了嵌入在窗户上的火鸟的“服务器”架构。在Firebird 2.5之前,嵌入在Windows上的Firebird表现为超级服务器,这意味着它需要对数据库文件的独家访问。 用Firebird 2.5启动嵌入在窗户上的Firebird表现得像超级热门服务器型号,这意味着它可以使用对数据库文件的共享访问权限,并且可以在经典或超级流行器模型(但不是SuperServer)中使用的多个Firebird嵌入式应用程序和Firebird服务器访问相同的数据库。此更改的缺点是,嵌入式应用程序需要能够创建,读取和编写共享数据库lockfiles(在C:\ ProgramData \ Firebird中)。 您不需要担心损坏:如果嵌入式引擎无法访问共享的锁定文件,则该连接将失败。您无法与IB Expert建立联系的原因可能是您尝试通过SuperServer模型通过Firebird Server连接(需要独家访问)。
还请参见火鸟2.5发行说明:firebird Engine中的变化:
现在使用超级学士,而不是超级服务器,因此将其模型与POSIX上的局部连接统一的模型统一。以前限制连接到单个应用程序空间的数据库文件锁定由全局锁定表代替,该表允许从不同的嵌入式服务器模块同时访问同一数据库。这有助于同时进行应用程序的调试和使用本机实用工具,例如
gbak,gstat等。
在Firebird 3.0及更高版本的情况下,这再次发生变化,现在嵌入到
ServerMode
设置firebird.conf
中,该设置默认为
Super
(SuperServer模式)。如果您想能够打开具有多个应用程序的数据库,则需要将其设置为
SuperClassic
(或Classic
,但据我所知,对于嵌入式,它的行为将与超级学士相同)。