Поделиться через


Средство регистрации SQL Server в ASP.NET (Aspnet_regsql.exe)

Обновлен: Ноябрь 2007

Средство регистрации SQL Server в ASP.NET (Aspnet_regsql.exe) предназначено для создания базы данных Microsoft SQL Server, используемой поставщиками SQL Server в ASP.NET. Это средство также позволяет добавлять или удалять элементы существующей базы данных.

Вне зависимости от используемой версии платформы .NET Framework исполняемый файл aspnet_regsql.exe находится в следующей папке на веб-сервере:

[drive:]\%windir%\Microsoft.NET\Framework\v2.0.50727

Программу Aspnet_regsql.exe можно запускать без аргументов командной строки; в этом случае запускается мастер, помогающий задать сведения о подключении к установленной копии SQL Server, а также установить или удалить элементы базы данных, связанные с функциями членства, управления ролями, профиля, персонализации веб-частей и наблюдения за состоянием системы. (Мастер не выполняет установку параметров состояния сеанса и зависимости кэша SQL.) Программу Aspnet_regsql.exe можно также запустить из командной строки, указав элементы базы данных, соответствующие тем или иным функциональным возможностям, которые следует удалить или добавить; для этого используются параметры, перечисленные в следующей таблице.

Aspnet_regsql.exe <options>

Параметры подключения SQL

Параметр

Описание

-?

Выводит текст справки по программе Aspnet_regsql.exe в командном окне.

-W

Запускает средство в режиме мастера. Этот режим используется по умолчанию, если не заданы аргументы командной строки.

-C <строка_подключения>

Задает строку подключения к компьютеру с сервером SQL Server, где будет установлена или уже установлена база данных. Этот параметр необязателен, если указываются только сведения о сервере (-S) и учетные данные для входа (-U и -P, или -E).

-S <сервер>

Задает имя компьютера с сервером SQL Server, где будет установлена или уже установлена база данных.

-U <имя_пользователя>

Имя пользователя SQL Server для входа в систему. Данный параметр также требует наличия параметра пароля (-P). Данный параметр необязателен, если вход выполняется с использованием учетных данных Windows (-E).

-P <пароль>

Пароль SQL Server для входа. При наличии этого параметра требуется также задать имя пользователя (параметр -U). Данный параметр необязателен, если вход выполняется с использованием учетных данных Windows (-E).

-E

Выполняет проверку подлинности с использованием учетных данных Windows пользователя, входящего в систему.

-sqlexportonly <имя_файла>

Создает файл сценария SQL, который можно использовать для добавления или удаления указанных функций. Заданные действия не выполняются.

Параметры служб приложений

Параметр

Описание

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

Включает поддержку одной или нескольких служб приложений ASP.NET. Идентификаторы служб можно задавать все сразу или по отдельности. Для служб приложений ASP.NET используются следующие идентификаторы:

all — все службы, включая общие таблицы и хранимые процедуры, совместно используемые службами

m — членство

r — диспетчер ролей

p — профиль

c — персонализация веб-частей

w — веб-события

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

Отключает поддержку одной или нескольких служб приложений. Идентификаторы служб можно задавать все сразу или по отдельности. Для служб приложений ASP.NET используются следующие идентификаторы:

all — все службы, включая общие таблицы и хранимые процедуры, совместно используемые службами

m — членство

r — диспетчер ролей

p — профиль

c — персонализация веб-частей

w — веб-события

-Q

Запускает программу в "тихом" режиме, в котором не запрашивается подтверждение при удалении службы приложений.

-d <база_данных>

Задает имя базы данных, которую следует создать или изменить для использования вместе со службами приложений. Если база данных не указана, используется имя базы данных по умолчанию "aspnetdlb".

ms229862.alert_note(ru-ru,VS.90).gifПримечание.

Владельцем элементов базы данных, установленных в базе данных служб приложений, всегда будет учетная запись владельца базы данных SQL Server (dbo). Для установки базы данных служб приложений необязательно иметь полномочия системного администратора компьютера, на котором размещен сервер SQL Server. Чтобы установить базу данных служб приложений, необходимо разрешить вход на сервер SQL Server для ролей db_ddladmin и dd_securityadmin в базе данных SQL Server.

Параметры зависимости кэша SQL (для Microsoft SQL Server 7.0, Microsoft SQL Server 2000 и SQL Server 2005)

Параметр

Описание

-d <база_данных>

Задает имя базы данных, для которой будет использоваться функция зависимости кэша SQL. База данных может быть указана с помощью параметра строки подключения -C.

-ed

Включает поддержку зависимости кэша SQL для базы данных.

-dd

Отключает поддержку зависимости кэша SQL для базы данных.

-et

Включает поддержку зависимости кэша SQL для таблицы. Параметр -t может также быть указан в строке параметров.

-dt

Отключает поддержку зависимости кэша SQL для таблицы. Параметр -t может также быть указан в строке параметров.

-t <таблица>

Задает имя таблицы, для которой включается или отключается использование функции зависимости кэша SQL. Этот параметр необходимо указывать вместе с параметром -et или -dt.

-lt

Выводит список всех таблиц, для которых включена поддержка зависимости кэша SQL.

Параметры состояния сеанса

Параметр

Описание

-d <база_данных>

Задает имя базы данных для хранения состояния сеанса. Этот параметр необходимо использовать, если параметр -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.

Заметки

При работе со средством регистрации SQL Server в ASP.NET можно задать параметры нескольких типов. Можно задать подключение SQL, указать службы приложений ASP.NET, которые должны использовать SQL Server для управления информацией, указать базу данных или таблицу, для которой будет использоваться функция зависимости кэша SQL, а также включить или отключить поддержку использования SQL Server для хранения процедур и состояния сеанса.

В некоторых службах приложений ASP.NET для управления сохранением и извлечением данных из источников данных используют поставщики. Каждый поставщик привязан к конкретному источнику данных. В ASP.NET имеется поставщик SQL Server для следующих служб ASP.NET:

При установке ASP.NET файл Machine.config для сервера включает элементы конфигурации, которые определяют поставщиков SQL Server для каждой функции ASP.NET, опирающейся на поставщика. Эти поставщики по умолчанию настроены для подключения к экземпляру SQL Server Express 2005 локального пользователя. Если изменить строку подключения, используемую поставщиками по умолчанию, то для работы с функциями ASP.NET, настроенными в конфигурации компьютера, необходимо с помощью Aspnet_regsql.exe установить базу данных SQL Server и элементы базы данных, соответствующие выбранным функциям. Если база данных, заданная с помощью Aspnet_regsql.exe, еще не существует (при отсутствии имени базы данных в командной строке по умолчанию используется база данных aspnetdb), то текущий пользователь должен обладать правами на создание баз данных в SQL Server и на создание элементов схемы в базе данных.

Все поставщики SQL Server могут использовать одну и ту же базу данных SQL Server для хранения данных, связанных с каждой конкретной функцией. Каждую функциональную возможность можно использовать отдельно, либо в сочетании с другими функциональными возможностями. Например, службу управления ролями можно использовать саму по себе или в сочетании с информацией о пользователях, контролируемой службой членства.

Дополнительные сведения о поставщиках SQL Server и об ASP.NET см. в разделах Реализация поставщика членства, Реализация поставщика профилей и Реализация поставщика ролей.

Зависимость кэша SQL

Дополнительной возможностью кэширования выходных данных ASP.NET является зависимость кэша SQL. Функция зависимости кэша SQL поддерживает два режима работы: в одном из них используется реализация механизма опроса таблиц для ASP.NET, а в другом — средства уведомления о запросах SQL Server 2005. Программа Aspnet_regsql.exe может использоваться для настройки работы в режиме опроса таблиц. Зависимость кэша 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, где они могут использоваться совместно несколькими веб-серверами. Дополнительные сведения о состоянии сеанса см. в разделах Реализация поставщика хранилища состояний сеансов и Режимы состояний сеанса.

Если база данных, указанная в программе Aspnet_regsql.exe для хранения состояния сеанса, еще не существует, то текущий пользователь должен обладать правами на создание баз данных в SQL Server и на создание элементов схемы в базе данных. Если база данных существует, текущий пользователь должен иметь право на создание элементов схемы в существующей базе данных.

Чтобы установить базу данных о состоянии сеансов на сервере SQL Server, запустите программу Aspnet_regsql.exe, задав следующие аргументы:

  • Имя экземпляра SQL Server с помощью параметра -S.

  • Учетные данные входа для учетной записи, которой предоставлено разрешение на создание базы данных на компьютере с сервером SQL Server. Можно с помощью параметра -E воспользоваться данными уже вошедшего пользователя, или с помощью параметра -U указать идентификатор пользователя, а с помощью параметра -P — пароль этого пользователя.

  • Параметр -ssadd для добавления базы данных состояния сеанса.

По умолчанию нельзя использовать средство Aspnet_regsql.exe для установки базы данных состояния сеанса на компьютере, на котором запущен сервер SQL Server 2005, экспресс-выпуск. Дополнительные сведения об использовании экспресс-выпуска SQL Server 2005 для хранения состояния сеанса см. в разделе Режимы состояний сеанса.

Примеры

Программу Aspnet_regsql.exe можно запускать без аргументов командной строки; в этом случае запускается мастер, помогающий задать сведения о подключении к базе данных SQL Server, а также установить или удалить элементы базы данных, связанные с поддерживаемыми функциями. Можно также запустить Aspnet_regsql.exe из командной строки для указания элементов базы данных для отдельных добавляемых или удаляемых функциональных возможностей. Чтобы задать параметры зависимости кэша SQL или настроить состояние сеанса, программу необходимо запускать из командной строки с соответствующими аргументами.

Для доступа к мастеру запустите Aspnet_regsql.exe без аргументов командной строки, как показано в следующем примере.

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

Средство регистрации SQL в ASP.NET обычно запускается с параметром -A или -R, определяющим функции, для которых используется поставщик SQL Server. Параметр -A позволяет включить поддержку одной или нескольких функций, а параметр -R отключает поддержку функций. Следующая команда устанавливает элементы базы данных для служб членства и управления ролями на локальном сервере SQL Server с использованием проверки подлинности Windows.

aspnet_regsql.exe -E -S localhost -A mr

Для настройки функции зависимости кэша SQL необходимо иметь полномочия администратора или учетную запись и пароль администратора. Следующая функция включает поддержку зависимости кэша SQL для таблицы "Сотрудники" в базе данных Northwind".

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

Следующая команда создает базу данных с именем ASPState в экземпляре SQL Server с именем "SampleSqlServer » и указывает, что данные сеанса также хранятся в базе данных ASPState.

aspnet_regsql.exe -S SampleSqlServer -E -ssadd -sstype p

См. также

Основные понятия

Реализация поставщика членства

Реализация поставщика профилей

Реализация поставщика ролей