Freigeben über


ASP.NET SQL Server-Registrierungstool (Aspnet_regsql.exe)

Aktualisiert: November 2007

Mit dem ASP.NET SQL Server-Registrierungstool (Aspnet_regsql.exe) wird eine Microsoft SQL Server-Datenbank für die Verwendung durch SQL Server-Anbieter in ASP.NET erstellt. Mit dem Tool können auch einer vorhandenen Datenbank Optionen hinzugefügt oder aus ihr entfernt werden.

Die Datei Aspnet_regsql.exe befindet sich unabhängig von der verwendeten .NET Framework-Version in folgendem Ordner auf dem Webservercomputer:

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

Sie können aspnet_regsql.exe ohne Befehlszeilenargumente ausführen und stattdessen einen Assistenten nutzen, der Sie durch die Festlegung von Verbindungsinformationen für den SQL Server und die Installation oder Entfernung der Datenbankelemente für die Features Mitgliedschaft, Rollenverwaltung, Profil, Webparts-Personalisierung und Systemüberwachung führt. (Das Festlegen von Sitzungszustand und SQL-Cacheabhängigkeit kann nicht mit dem Assistenten erfolgen.) Mit den Optionen in der folgenden Tabelle können Sie Aspnet_regsql.exe auch als Befehlszeilentool ausführen, um Datenbankelemente für einzelne hinzuzufügende oder zu entfernende Features festzulegen.

Aspnet_regsql.exe <options>

SQL-Verbindungsoptionen

Option

Beschreibung

-?

Gibt den Hilfetext zu Aspnet_regsql.exe im Befehlsfenster aus.

-W

Führt das Tool im Assistentenmodus aus. Dies ist der Standardwert, wenn keine Befehlszeilenargumente festgelegt sind.

-C <Verbindungszeichenfolge>

Gibt die Verbindungszeichenfolge für den Computer an, auf dem SQL Server ausgeführt wird und auf dem die Datenbank installiert wird oder bereits installiert ist. Diese Option ist nicht erforderlich, wenn Sie nur den Server (-S) und die Anmeldeinformationen (-U und -P oder -E) festlegen.

-S <Server>

Gibt den Namen des Computers an, auf dem SQL Server ausgeführt wird und auf dem die Datenbank installiert wird oder bereits installiert ist.

-U <Benutzername>

Die SQL Server-Benutzer-ID für die Anmeldung. Diese Option erfordert außerdem die Kennwortoption (-P). Diese Option ist nicht erforderlich, wenn die Authentifizierung mit Windows-Anmeldeinformationen erfolgt (-E).

-P <Kennwort>

Das SQL Server-Kennwort für die Anmeldung. Diese Option erfordert außerdem die Benutzer-ID-Option (-U). Diese Option ist nicht erforderlich, wenn die Authentifizierung mit Windows-Anmeldeinformationen erfolgt (-E).

-E

Authentifizierung mit den Windows-Anmeldeinformationen des gegenwärtig angemeldeten Benutzers.

-sqlexportonly <Dateiname>

Generiert eine SQL-Skriptdatei, die zum Hinzufügen oder Entfernen der festgelegten Features verwendet werden kann. Die festgelegten Aktionen werden nicht ausgeführt.

Anwendungsdienstoptionen

Option

Beschreibung

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

Fügt Unterstützung für einen oder mehrere ASP.NET-Anwendungsdienste hinzu. Dienstbezeichner können zusammen oder einzeln angegeben werden. Die folgenden Bezeichner werden für ASP.NET-Anwendungsdienste verwendet:

all – Alle Dienste, einschließlich allgemeiner Tabellen und gespeicherter Prozeduren, die von den Diensten gemeinsam verwendet werden.

m – Mitgliedschaft

r – Rollen-Manager

p – Profil

c – Webparts-Personalisierung

w – Webereignisse

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

Entfernt die Unterstützung für einen oder mehrere Anwendungsdienste. Dienstbezeichner können zusammen oder einzeln angegeben werden. Die folgenden Bezeichner werden für ASP.NET-Anwendungsdienste verwendet:

all – Alle Dienste, einschließlich allgemeiner Tabellen und gespeicherter Prozeduren, die von den Diensten gemeinsam verwendet werden.

m – Mitgliedschaft

r – Rollen-Manager

p – Profil

c – Webparts-Personalisierung

w – Webereignisse

-Q

Führt das Tool im unbeaufsichtigten Modus aus, und es erfolgt keine Bestätigungsabfrage vor dem Entfernen eines Anwendungsdiensts.

-d <Datenbank>

Gibt den Namen der Datenbank an, die für die Verwendung mit Anwendungsdiensten erstellt oder geändert werden soll. Wenn die Datenbank nicht festgelegt ist, wird der Standarddatenbankname "aspnetdb" verwendet.

Tipp

Besitzer der in der Datenbank für die Anwendungsdienste installierten Datenbankelemente ist immer das Konto des SQL Server-Datenbankbesitzers (DBO). Sie müssen kein Systemadministrator für den Computer sein, auf dem SQL Server ausgeführt wird, um die Datenbank für die Anwendungsdienste zu installieren. Um die Datenbank für die Anwendungsdienste zu installieren, muss eine SQL Server-Anmeldung für die db_ddladmin-Rolle und die dd_securityadmin-Rolle bei der SQL Server-Datenbank zulässig sein.

Optionen für SQL-Cacheabhängigkeit (für Microsoft SQL Server 7.0, Microsoft SQL Server 2000 und SQL Server 2005)

Option

Beschreibung

-d <Datenbank>

Gibt den Namen der Datenbank an, die mit SQL-Cacheabhängigkeit verwendet werden soll. Die Datenbank kann optional mit der Verbindungszeichenfolgenoption -C angegeben werden.

-ed

Aktiviert eine Datenbank für die SQL-Cacheabhängigkeit.

-dd

Deaktiviert eine Datenbank für die SQL-Cacheabhängigkeit.

-et

Aktiviert eine Tabelle für die SQL-Cacheabhängigkeit. Die -t-Option muss auch in der Parameterzeichenfolge enthalten sein.

-dt

Deaktiviert eine Tabelle für die SQL-Cacheabhängigkeit. Die -t-Option muss auch in der Parameterzeichenfolge enthalten sein.

-t <Tabelle>

Gibt den für die Verwendung mit SQL-Cacheabhängigkeit zu aktivierenden oder zu deaktivierenden Tabellennamen an. Diese Option muss mit der -et-Option oder der -dt-Option verwendet werden.

-lt

Listet alle für SQL-Cacheabhängigkeit aktivierten Tabellen auf.

Sitzungszustandsoptionen

Option

Beschreibung

-d <Datenbank>

Gibt den Namen der Datenbank zum Speichern des Sitzungszustands an. Diese Option muss verwendet werden, wenn -sstype auf c festgelegt ist.

-ssadd

Fügt Unterstützung für den SQL Server-Sitzungszustandsmodus hinzu.

-ssremove

Entfernt Unterstützung für den SQL Server-Sitzungszustandsmodus.

-sstype t|p|c

Gibt den Typ des zu verwendenden Sitzungszustands an:

t – Temporär. Die Sitzungszustandsdaten werden in der SQL Server-Datenbank tempdb gespeichert. Gespeicherte Prozeduren zum Verwalten des Sitzungszustands werden in der SQL Server-Datenbank ASPState installiert. Daten werden bei einem Neustart von SQL Server nicht beibehalten. Dies ist der Standardwert.

p – Persistent. Sowohl Sitzungszustandsdaten als auch gespeicherte Prozeduren werden in der SQL Server-Datenbank ASPState gespeichert.

c – Benutzerdefiniert. Sowohl Sitzungszustandsdaten als auch gespeicherte Prozeduren werden in einer benutzerdefinierten Datenbank gespeichert. Der Datenbankname muss mit der -d-Option angegeben werden.

Hinweise

Mit dem ASP.NET SQL Server-Registrierungstool können Sie mehrere Typen von Optionen festlegen. Sie können eine SQL-Verbindung festlegen, angeben, welche ASP.NET-Anwendungsdienste SQL Server zum Verwalten von Informationen verwenden, angeben, welche Datenbank oder Tabelle für SQL-Abhängigkeit verwendet wird, und Unterstützung für die Verwendung von SQL Server zum Speichern von Prozeduren und Sitzungszustand hinzufügen oder entfernen.

Verschiedene ASP.NET-Anwendungsdienste benötigen einen Anbieter, um Daten zu speichern und aus einer Datenquelle abzurufen. Jeder Anbieter ist auf eine Datenquelle abgestimmt. ASP.NET enthält für die folgenden ASP.NET-Features einen SQL Server-Anbieter:

Beim Installieren von ASP.NET enthält die Datei Machine.config des Servers Konfigurationselemente, die für alle von einem Anbieter abhängigen ASP.NET-Features einen SQL Server-Anbieter festlegen. Diese Anbieter sind standardmäßig so konfiguriert, dass sie mit der lokalen SQL Server 2005-Instanz eine Verbindung herstellen. Wenn Sie die von den Anbietern verwendete Standardverbindungszeichenfolge ändern, müssen Sie mit Aspnet_regsql.exe die SQL Server-Datenbank und die Datenbankelemente für das gewünschte Feature installieren, bevor Sie die in der Computerkonfiguration konfigurierten ASP.NET-Features verwenden können. Wenn die mit Aspnet_regsql.exe angegebene Datenbank nicht vorhanden ist (aspnetdb ist die Standarddatenbank, wenn in der Befehlszeile keine Datenbank angegeben ist), muss der aktuelle Benutzer über die Rechte zum Erstellen von Datenbanken in SQL Server sowie zum Erstellen von Schemaelementen in einer Datenbank verfügen.

Jeder SQL Server-Anbieter kann in derselben SQL Server-Datenbank Daten für das jeweilige Feature speichern. Jedes Feature kann allein oder in Verbindung mit anderen Features genutzt werden. Sie können beispielsweise die Rollenverwaltung nur für sich oder in Verbindung mit den von der Mitgliedschaft verwalteten Benutzerinformationen verwenden.

Weitere Informationen über SQL Server-Anbieter und ASP.NET finden Sie unter Implementieren eines Mitgliedschaftsanbieters, Implementieren eines Profilanbieters und unter Implementieren eines Rollenanbieters.

SQL-Cacheabhängigkeit

Die SQL-Cacheabhängigkeit ist ein erweitertes Feature der ASP.NET-Ausgabezwischenspeicherung. Die SQL-Cacheabhängigkeit unterstützt zwei unterschiedliche Betriebsmodi: einen Modus, der eine ASP.NET-Implementierung von Tabellenabrufen verwendet, und einen weiteren Modus, der die Abfragebenachrichtigungsfeatures von SQL Server 2005 verwendet. Aspnet_regsql.exe kann verwendet werden, um den Tabellenabruf-Betriebsmodus zu konfigurieren. Mit der SQL-Cacheabhängigkeit können Seiten zwischengespeichert werden, die von Daten aus SQL Server-Tabellen abhängig sind. SQL Server und ASP.NET können so konfiguriert werden, dass Seitenanforderungen zwischengespeichert werden. Dadurch wird die Serverauslastung verringert, während die Daten, von denen die Seite abhängig ist, in SQL Server aktualisiert werden. SQL-Cacheabhängigkeit ist für Daten sinnvoll, die verhältnismäßig statisch bleiben, z. B. Informationen über Produktkataloge oder die benutzerdefinierte Registrierung. Beachten Sie, dass Sie SQL Server für die ordnungsgemäße Bereitstellung von Benachrichtigungen an ASP.NET über Änderungen abhängiger Daten konfigurieren müssen, wenn Sie den ASP.NET-Tabellenabrufmodus der SQL-Cacheabhängigkeit verwenden. Daher benötigen zum Konfigurieren des Servers Administratorrechte. Weitere Informationen über SQL-Cacheabhängigkeit finden Sie unter Exemplarische Vorgehensweise: Verwenden der ASP.NET-Ausgabecachefunktion mit SQL Server.

Sitzungszustand

Der ASP.NET-Sitzungszustand wurde so konzipiert, dass Sie auf einfache Weise Benutzersitzungsdaten in verschiedenen Quellen für die ASP.NET-Anwendungen ablegen können. Standardmäßig werden Sitzungszustandswerte und -informationen im Arbeitsspeicher innerhalb des ASP.NET-Prozesses gespeichert. Stattdessen können Sie auch die Sitzungsdaten in einer SQL Server-Datenbank speichern, auf die mehrere Webserver gemeinsam zugreifen können. Weitere Informationen über den Sitzungszustand finden Sie unter Implementieren eines Sitzungszustandsspeicher-Anbieters und Sitzungszustandsmodi.

Wenn die mit Aspnet_regsql.exe für den Sitzungszustand angegebene Datenbank nicht bereits vorhanden ist, muss der aktuelle Benutzer über Rechte zum Erstellen von Datenbanken in SQL Server sowie zum Erstellen von Schemaelementen in einer Datenbank verfügen. Wenn die Datenbank vorhanden ist, muss der aktuelle Benutzer über Rechte zum Erstellen von Schemaelementen in der vorhandenen Datenbank verfügen.

Um die Sitzungszustandsdatenbank für SQL Server zu installieren, führen Sie das Tool Aspnet_regsql.exe aus und geben die folgenden Informationen und den entsprechenden Befehl ein:

  • Mit der -S-Option den Namen der SQL Server-Instanz.

  • Die Anmeldeinformationen für ein Konto, das berechtigt ist, eine Datenbank auf einem Computer zu erstellen, auf dem SQL Server ausgeführt wird. Geben Sie die -E-Option an, um den gegenwärtig angemeldeten Benutzer zu verwenden, oder verwenden Sie die -U-Option für die Angabe einer Benutzer-ID und die -P-Option für die Angabe eines Kennworts.

  • Die -ssadd-Befehlszeilenoption, um die Sitzungszustands-Datenbank hinzuzufügen.

Standardmäßig können Sie Aspnet_regsql.exe nicht zur Installation einer Sitzungszustands-Datenbank auf einem Computer mit SQL Server 2005 Express Edition verwenden. Weitere Informationen über die Verwendung von SQL Server 2005 Express Edition zum Speichern des Sitzungszustands finden Sie unter Sitzungszustandsmodi.

Beispiele

Sie können Aspnet_regsql.exe ohne Befehlszeilenargumente ausführen und stattdessen einen Assistenten nutzen. Dieser führt Sie durch die Festlegung von Verbindungsinformationen für die SQL Server-Datenbank und durch die Installation oder Entfernung der Datenbankelemente für unterstützte Features. Sie können Aspnet_regsql.exe auch als Befehlszeilentool ausführen, um Datenbankelemente für einzelne hinzuzufügende oder zu entfernende Features festzulegen. Um Einstellungen für die SQL-Cacheabhängigkeit anzugeben oder den Sitzungszustand einzurichten, müssen Sie das Befehlszeilentool verwenden.

Um den Assistenten auszuführen, führen Sie Aspnet_regsql.exe ohne Befehlszeilenargumente aus, wie im folgenden Beispiel gezeigt.

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

Das ASP.NET-Registrierungstool wird i. d. R. mit der -A-Option oder der -R-Option verwendet, um die Features anzugeben, die einen SQL Server-Anbieter nutzen. Mit der -A-Option können Sie Unterstützung für ein oder mehrere Features hinzufügen, und mit der -R-Option können Sie ein Feature entfernen. Mit dem folgenden Befehl werden die Datenbankelemente für Mitgliedschaft und Rollenverwaltung auf dem lokalen Computer installiert, auf dem SQL Server mit Windows-Authentifizierung ausgeführt wird.

aspnet_regsql.exe -E -S localhost -A mr

Um SQL-Cacheabhängigkeit einzurichten, benötigen Sie Administratorrechte oder das Administratorkonto und -kennwort. Der folgende Befehl aktiviert SQL-Cacheabhängigkeit für die Tabelle Employees in der Datenbank Northwind.

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

Der folgende Befehl erstellt eine Datenbank mit dem Namen ASPState auf einer SQL Server-Instanz mit dem Namen "SampleSqlServer" und gibt an, dass Sitzungsdaten auch in der Datenbank ASPState gespeichert werden.

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

Siehe auch

Konzepte

Implementieren eines Mitgliedschaftsanbieters

Implementieren eines Profilanbieters

Implementieren eines Rollenanbieters