使用谷歌search这一点没有什么区别,不幸的是,因为大多数结果指定使用gfix -shut -force 30 (或任何其他秒数)作为gfix -online dbname之后gfix -shut -force 30数据库的语法,并且我已经运行gfix -online dbname有和没有login凭证的DB有问题。
我得到的消息是:
database dbname shutdown
这是好的,除了我想现在在线。 closuresfbserver.exe(在Windows上运行,afaik是Classic Server 2.1.1,但可能是Super),因为我们有其他的数据库运行在几乎每天24小时的正常运行时间。 来自另一个gfix -shut -force或gfix -shut -force或-tran的消息是Target shutdown mode is invalid for database dbname这似乎与数据库已经完全closures时会发生什么的文档匹配。 如果我使用-online single或-online multi ,但不是-online / -online normal ,则也会出现Target shutdown mode invalid消息。
想法和投入非常感谢,特别是因为目前是我的一个因素。 谢谢!
编辑:我closures数据库的全部原因是清除链接到特定IP地址的“活动”交易,这台计算机是我的开发terminal(实际上是一个虚拟机,我开发数据库软件的前端),但我当时没有连接到数据库的进程。 他们看起来像我的孤儿交易,他们并没有陷入僵局。 运行一个手动扫描没有清除出来,删除MON $ STATEMENTS行不工作,即使Firebird 2.1据称支持取消这样的查询。 我最后的手段是“重新启动”数据库,因此上述问题。
编辑2:只是在2.1.3发行说明中注意到这一点:
使用-attach或-tran选项调用关机时,会出现回归问题,并执行新的gfixclosures模式。 如果指定的超时到期时连接仍然存在,则引擎将返回一条消息,指示closures不成功。 然而,数据库不应该像在线状态那样离开数据库,而是使数据库进入某种不确定的“离线”状态,而拒绝进一步的连接。
我使用了-shut -force 30所以不应该受到影响。 但是,在30秒后,通话没有正常返回,等待大约3分钟后,我closures了tty到服务器(Windows服务器上的linux虚拟机),这可能会或可能不会中止gfix操作。 运行ps不显示任何gfix进程。 想知道这是否使数据库处于“不确定状态”…
在线使用
gfix -user "SYSDBA" -password "masterkey" -online DATA.FDB
数据库使用后重试
gfix -user "SYSDBA" -password "masterkey" -shut -force 0 DATA.FDB
我也有同样的问题,最近我做了第一次我停止了FB服务,然后我杀死了服务器上的所有fbclient连接。 重新启动fbservice并使用了在线cmd的服务器。 希望这可以帮助