discoverx

博客园 首页 新随笔 联系 订阅 管理
  36 Posts :: 96 Stories :: 1 Comments :: 0 Trackbacks
ASP.NET SQL Server 注册工具 (Aspnet_regsql.exe)
.NET Framework 工具
ASP.NET SQL Server 注册工具 (Aspnet_regsql.exe)

ASP.NET SQL Server 注册工具用于创建供 ASP.NET 中的 SQL Server 提供程序使用的 Microsoft SQL Server 数据库,或者用于在现有数据库中添加或移除选项。Aspnet_regsql.exe 文件位于 Web 服务器上的 [drive:]\WINDOWS\Microsoft.NET\Framework\versionNumber 文件夹中。

可以不带任何命令行参数运行 Aspnet_regsql.exe,以运行一个引导您完成如下过程的向导:为 SQL Server 安装指定连接信息,并为成员资格、角色管理器、配置文件、Web 部件个性化设置及运行状况监视等功能安装或移除数据库元素。(该向导不涉及设置会话状态和 SQL 缓存依赖项。)使用下表所列的选项,还可以将 Aspnet_regsql.exe 作为命令行工具来运行,以便为各个功能指定要添加或移除的数据库元素。

语法

Aspnet_regsql.exe <options>

SQL 连接选项

选项 说明

-?

在命令窗口中显示 Aspnet_regsql.exe 帮助文本。

-W

在向导模式下运行该工具。如果未指定任何命令行参数,那么这是默认设置。

-C <connection string>

指定要连接到正在运行 SQL Server 并且将安装或者已经安装数据库的计算机的连接字符串。如果您仅指定服务器 (-S) 和登录(-U-P-E)信息,则此选项不是必需的。

-S <server>

指定正在运行 SQL Server 并且将安装或者已安装数据库的计算机的名称。

-U <login ID>

要用来登录的 SQL Server 用户 ID。此选项还要求使用密码 (-P) 选项。如果要使用 Windows 凭据 (-E) 进行身份验证,则此选项不是必需的。

-P <password>

要用来登录的 SQL Server 密码。此选项还要求使用用户 ID (-U) 选项。如果要使用 Windows 凭据 (-E) 进行身份验证,则此选项不是必需的。

-E

使用当前登录用户的 Windows 凭据进行身份验证。

-sqlexportlonly <filename>

生成可用于添加或移除指定功能的 SQL 脚本文件。不执行指定的操作。

应用程序服务选项

选项 说明

-A all|m|r|p|c|w

添加对一项或多项 ASP.NET 应用程序服务的支持。可以同时或单独指定服务标识符。下列标识符用于 ASP.NET 应用程序服务。

all -- 所有的服务,包括由服务共享的通用表和存储过程。

m -- 成员资格

r -- 角色管理器

p -- 配置文件

c -- Web 部件个性化设置

w -- Web 事件

-R all|m|r|p|c|w

移除对一项或多项应用程序服务的支持。可以同时或单独指定服务标识符。下列标识符用于 ASP.NET 应用程序服务。

all -- 所有的服务,包括由服务共享的通用表和存储过程。

m -- 成员资格

r -- 角色管理器

p -- 配置文件

c -- Web 部件个性化设置

w -- Web 事件

-Q

在安静模式下运行该工具,并且在移除应用程序服务之前不进行确认。

-d <database>

指定要创建或修改以便与应用程序服务一起使用的数据库的名称。如果未指定数据库,则使用默认数据库名称“aspnetdb”。

SQL 缓存依赖项选项(用于 Microsoft SQL Server 7.0、Microsoft SQL Server 2000 和 SQL Server 2005)

选项 说明

-d <database>

指定要与 SQL 缓存依赖项一起使用的数据库的名称。还可以选择使用连接字符串选项 -C 指定该数据库。

-ed

为 SQL 缓存依赖项启用数据库。

-dd

为 SQL 缓存依赖项禁用数据库。

-et

为 SQL 缓存依赖项启用表。在参数字符串中还必须包括 -t 选项。

-dt

为 SQL 缓存依赖项禁用表。在参数字符串中必须包括 -t 选项。

-t <table>

指定要启用或禁用以便与 SQL 缓存依赖项一起使用的表名。此选项必须与 -et-dt 选项一起使用。

-lt

列出所有为 SQL 缓存依赖项启用的表。

会话状态选项

选项 说明

-d <database>

指定要存储会话状态的数据库的名称。如果将 -sstype 设置为“c”,则必须使用此选项。

-ssadd

添加对 SQL Server 模式会话状态的支持。

-ssremove

移除对 SQL Server 模式会话状态的支持。

-sstype t|p|c

指定要使用的会话状态的类型:

t -- 临时。会话状态数据存储在 SQL Server 的 tempdb 数据库中。用于管理会话状态的存储过程安装在 SQL Server 的 ASPState 数据库中。如果重启 SQL,数据不会保持。这是默认设置。

p -- 持久。会话状态数据和存储过程均存储在 SQL Server 的 ASPState 数据库中。

c -- 自定义。会话状态数据和存储过程均存储在自定义数据库中。必须使用 -d 选项指定数据库名。

备注

使用 ASP.NET SQL Server 注册工具,您可以设置几种类型的选项。您可以指定 SQL 连接,指定使用 SQL Server 来管理信息的 ASP.NET 应用程序服务,指示将哪个数据库或表用于 SQL 缓存依赖项,以及添加或移除对使用 SQL Server 来存储过程和会话状态的支持。

几项 ASP.NET 应用程序服务依赖于提供程序来管理数据源中数据的存储和检索。每个提供程序都特定于数据源。ASP.NET 包括一个用于下列 ASP.NET 功能的 SQL Server 提供程序:

安装 ASP.NET 时,服务器的 Machine.config 文件包括一些配置元素,这些元素为依赖于提供程序的每个 ASP.NET 功能指定 SQL Server 提供程序。默认情况下,这些提供程序被配置为连接到 SQL Server Express 2005 的本地用户实例。如果更改提供程序使用的默认连接字符串,则必须先使用 Aspnet_regsql.exe 安装 SQL Server 数据库和用于所选功能的数据库元素,然后才能使用在计算机配置中配置的任何 ASP.NET 功能。如果使用 SQL 注册工具指定的数据库还不存在(如果未在命令行指定一个数据库,aspnetdb 将是默认数据库),则当前用户必须具有在 SQL Server 中创建数据库的权限,以及在数据库中创建架构元素的权限。

每个 SQL Server 提供程序都可以使用相同的 SQL Server 数据库来存储用于该特定功能的数据。每个功能都可以单独使用,也可以与其他功能结合使用。例如,可以单独使用角色管理,也可以将它与成员资格所管理的用户信息结合使用。

有关 SQL Server 提供程序和 ASP.NET 的更多信息,请参见实现成员资格提供程序实现配置文件提供程序实现角色提供程序

SQL 缓存依赖项

ASP.NET 输出缓存的一项高级功能是 SQL 缓存依赖项。SQL 缓存依赖项支持两种不同模式的操作:第一种模式使用表轮询的 ASP.NET 实现,第二种模式使用 SQL Server 2005 的查询通知功能。SQL 注册工具可用于配置表轮询模式的操作。SQL 缓存依赖项使您可以缓存依赖于 SQL Server 表中数据的页。您可以配置 SQL Server 和 ASP.NET 以缓存页请求,降低服务器工作负荷,直到页所依赖的数据已在 SQL Server 中更新为止。对于相对保持静态的产品目录或客户注册信息等数据而言,SQL 缓存依赖项很有用。注意,当使用 SQL 缓存依赖项的 ASP.NET 表轮询模式时,您必须配置 SQL Server 以向 ASP.NET 提供关于依赖数据中的更改的适当通知,因此您需要具有配置服务器的管理特权。有关 SQL 缓存依赖项的更多信息,请参见演练:将 ASP.NET 输出缓存与 SQL Server 结合使用和演练:使用输出缓存增强网站性能。

会话状态

ASP.NET 会话状态是为了使您能在不同的源中方便地存储 ASP.NET 应用程序的用户会话数据而设计的。默认情况下,会话状态值和信息都存储在 ASP.NET 进程的内存中。另外,可以将会话数据存储在 SQL Server 数据库中,这种情况下会话数据可由多个 Web 服务器共享。有关会话状态的更多信息,请参见实现会话状态存储提供程序会话状态模式

如果使用 SQL 注册工具为会话状态指定的数据库还不存在,则当前用户必须具有在 SQL Server 中创建数据库的权限,以及在数据库中创建架构元素的权限。如果数据库不存在,则当前用户必须具有在现有数据库中创建架构元素的权限。

若要在 SQL Server 上安装会话状态数据库,请运行 Aspnet_regsql.exe 工具,并为命令提供下面的信息:

  • 使用 -S 选项指定 SQL Server 实例的名称。

  • 有权在运行 SQL Server 的计算机上创建数据库的帐户的登录凭据。使用 -E 选项,以使用当前登录的用户,或者使用 -U 选项指定用户 ID,并使用 -P 选项指定密码。

  • 用于添加会话状态数据库的 -ssadd 命令行选项。

默认情况下,不能使用 Aspnet_regsql.exe 工具在运行 SQL Server 2005 Express Edition 的计算机上安装会话状态数据库。有关使用 SQL Server 2005 Express Edition 存储会话状态的更多信息,请参见会话状态模式

示例

可以在不使用任何命令行参数的情况下运行 Aspnet_regsql.exe,以运行一个引导您完成如下过程的向导:为 SQL Server 数据库指定连接信息,并为受支持的功能安装或移除数据库元素。还可以将 Aspnet_regsql.exe 作为命令行工具来运行,以便为各个功能指定要添加或移除的数据库元素。要指定 SQL 缓存依赖项的设置或对会话状态进行设置,必须使用命令行工具。

若要运行向导,请不带任何命令行参数运行 Aspnet_regsql.exe,如下面的示例所示。

C:\WINDOWS\Microsoft.NET\Framework\<versionNumber>\aspnet_regsql.exe

ASP.NET SQL 注册工具通常使用 -A-R 选项来指定哪些功能使用 SQL Server 提供程序。-A 选项允许添加对一项或多项功能的支持,而 -R 选项允许移除一项功能。下面的命令使用 Windows 身份验证,在运行 SQL Server 的本地计算机上安装成员资格和角色管理器的数据库元素。

aspnet_regsql.exe -E -S localhost -A mr

若要设置 SQL 缓存依赖项,您需要具有管理特权,或管理帐户和密码。下面的命令为 Northwind 数据库中的 Employees 表启用 SQL 缓存依赖项。

aspnet_regsql.exe -S <Server> -U <Username> -P <Password> -ed -d Northwind -et -t Employees

下面的命令将在名为“SampleSqlServer”的 SQL Server 实例上创建一个名为 ASPState 的数据库,并指定会话数据也存储在 ASPState 数据库中。

aspnet_regsql.exe -S SampleSqlServer -E -ssadd -sstype p
posted on 2010-07-06 14:15  discoverx  阅读(...)  评论(... 编辑 收藏