站点核心 6.6
我也在与 Sitecore 支持人员讨论这个问题,但我想我也会联系社区。
我们有一个自定义代理,可以将文件系统上的媒体与媒体库同步。这是一个新代理,我们犯了不监控数据库大小的错误。它应该导入大约 8 GB 的数据,但数据库在很短的时间内就膨胀到了 713 GB。事实证明,“master”和“web”数据库中的“Blobs”表几乎占据了所有这些空间。
我尝试使用控制面板中的“清理数据库”工具。我只选择了其中一个数据库。由于消耗了 SQL Server 上的所有可用锁,这运行了 6 个小时才被轰炸:
Exception: System.Data.SqlClient.SqlException
Message: The instance of the SQL Server Database Engine cannot obtain a LOCK
resource at this time. Rerun your statement when there are fewer active users.
Ask the database administrator to check the lock and memory configuration for
this instance, or to check for long-running transactions.
然后它把一切都回滚了。注意:我将 SQL 和 DataProvider 超时增加到无穷大。
还有其他人处理这样的事情吗?如果我能以较小的块“清理”数据库以避免压倒 SQL Server,那就太好了。
谢谢!