【发布时间】:2019-07-31 18:41:52
【问题描述】:
我知道使用 Firebird 2.5+ 我可以检查是否有用户使用 SQL 访问我的数据库,但不幸的是,Firebird 2.0 没有此功能。是的,我知道它是一个旧版本,但它是一个遗留软件,我不能在短时间内升级它...... :(
我需要知道是否有人连接到我的 2.0 Firebird 数据库,因为我将运行一个进程:
- 阻止与数据库的连接(但仅如果没有人连接)
- 运行我的进程
- 允许用户重新连接
只有在没有用户连接时,我才能启动我的进程。
我的数据库是客户端/服务器系统(非 Web)的一部分。
有什么提示吗?
【问题讨论】:
-
升级到 FB 2.1,它们在很大程度上兼容并且监控表是从 2.1 开始的
-
升级是件好事,但正如我在我的问题上所说的那样,我目前不允许这样做。我们的软件分发给许多用户并由他们在本地安装。不管怎样,谢谢你的建议。
-
Firebird 2.0 自 2012 年起停产,2.1 自 2014 年起停产,2.5 自 2019 年起停产。您真的需要开始升级了。尤其是在 2.5 以下的版本中没有修复几个与安全相关的错误。从 2.0 到 2.5 的步骤并没有那么大。不过,从 2.5 到 3.0 可能会涉及更多。
-
@MarkRotteveel 我希望我可以升级 FB。如果事实上,我们将重新设计我们的软件,但这将需要大约 2 年的时间才能交付。我现在需要的只是保持我们的软件运行,只进行强制修改。
-
为什么你需要这种独占访问,你不能通过使用具有快照表稳定性的事务来代替表保留来实现这一点吗?
标签: firebird