镜像 ASPState 数据库的最佳方法是什么?

Pie*_*arg 3 sql-server-2008 mirroring sql-server-2008-r2

我的实际镜像部分没有问题,但由于使用了临时表,如果发生故障转移,IIS 会引发一些不稳定(我仍在测试一些东西,所以是我造成了故障转移) .

是否有可能(甚至是一个好主意)镜像tempdb?或者我应该接受如果主体数据库由于任何原因无法访问,有些人可能会被踢出。

我正在使用 ASPState 以便两个 Web 服务器(在启用粘性会话的负载平衡器后面)都可以获取相同的会话数据。

Mar*_*ith 7

镜像 tempdb,那是不行的。您是否检查了Step-by-step SQL Mirroring the ASPState 数据库

如果未指定 -sstype:p 参数,则默认情况下,ASP.NET 会话将放入 TempDB 数据库而不是 ASPState 数据库。这让我困惑了一段时间。这适用于普通的非镜像环境,因为如果服务器重新启动,ASP 会话将被清除。但是,这不适用于镜像环境,因为我们要镜像 ASP 会话数据本身,而不仅仅是存储过程!此外,无法在 TempDB 数据库上进行镜像。-sstype:p 参数使 ASP.NET 将会话表安装到 ASPState 数据库中,如果服务器重新启动,它们将被持久化。这正是我们想要的镜像环境的行为。

  • 并且此文档告诉您可以使用 aspnet_regsql.exe 更改的所有可能选项(包括更改 sstype)。http://msdn.microsoft.com/en-us/library/ms229862%28v=vs.80%29.aspx 只是想注意,您应该能够在安装后设置此选项,而不仅仅是作为安装的一部分正如从 CodeProject 文章中推断出来的那样。 (3认同)