假设在一个不停止的循环中有一个应用程序试图从数据库中读取数据。我尝试了以下方法,但不起作用:
db2 CONNECT TO SAMPLE
db2 QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS
db2 TERMINATE
db2 DEACTIVATE DB SAMPLE
db2 BACKUP DATABASE SAMPLE似乎(DEACTIVATE DB)什么也不做,因为循环中的应用程序仍然可以从数据库中读取数据。
在尝试备份时,我一直收到错误消息“数据库当前正在使用中”。
发布于 2015-07-11 04:43:20
您必须确保没有应用程序连接到数据库(db2列出应用程序)。此外,您还必须确保数据库处于非活动状态(db2列出活动数据库)。
请记住,静默或强制应用程序是一个异步任务。这意味着您可以执行它们中的任何一个,但当控件返回时,这并不意味着应用程序已断开连接。
典型的情况是批处理过程的回滚,回滚需要几分钟。
发布于 2015-07-14 22:35:41
QUIESCE DATABASE不会阻止新连接进入。我相信你至少有两个选择:
QUIESCE INSTANCE <instance> USER <username> RESTRICTED ACCESS IMMEDIATE FORCE CONNECTIONS。这将强制所有现有连接,并限制对新连接的访问。只有在USER中指定的用户才能连接。这可能是您的管理帐户。USER衍生新连接,您可能需要(临时) UNCATALOG DB和/或禁用DB2COMM注册表变量,以阻止新的andHTH。
https://stackoverflow.com/questions/31349200
复制相似问题