dta (Hilfsprogramm)
Das Hilfsprogramm dta ist die Befehlszeilenversion des Datenbankoptimierungsratgebers. Mit dem Hilfsprogramm dta soll es Ihnen ermöglicht werden, die Funktionalität des Datenbankoptimierungsratgebers in Anwendungen und Skripts zu verwenden.
Wie der Datenbankoptimierungsratgeber dient auch das Hilfsprogramm dta dazu, eine Arbeitsauslastung zu analysieren und Empfehlungen zu den physischen Entwurfsstrukturen auszugeben, um die Serverleistung für diese Arbeitsauslastung zu verbessern. Bei der Arbeitsauslastung kann es sich um eine SQL Server Profiler-Ablaufverfolgungsdatei oder -tabelle oder ein Transact-SQL-Skript handeln. Zu den physischen Entwurfsstrukturen zählen Indizes, indizierte Sichten und die Partitionierung. Nach der Analyse einer Arbeitsauslastung erstellt das Hilfsprogramm dta eine Empfehlung für den physischen Datenbankentwurf und kann es das notwendige Skript zum Implementieren der Empfehlung generieren. Arbeitsauslastungen können über die Eingabeaufforderung mithilfe des Arguments -if oder -it angegeben werden. Mithilfe von -ix können Sie zudem eine XML-Eingabedatei über die Eingabeaufforderung angeben. In diesem Fall wird die Arbeitsauslastung in der XML-Eingabedatei angegeben.
Syntax
dta
[ -? ] |
[
[ -S server_name[ \instance ] ]
{
{ -U login_id [-P password ] }
| –E }
{ -D database_name [ ,...n ] }
[-d database_name ]
[ -Tl table_list | -Tf table_list_file ]
{ -if workload_file | -it workload_trace_table_name }
{ -ssession_name | -IDsession_ID }
[ -F ]
[ -of output_script_file_name ]
[ -or output_xml_report_file_name ]
[ -ox output_XML_file_name ]
[ -rl analysis_report_list [ ,...n ] ]
[ -ix input_XML_file_name ]
[ -A time_for_tuning_in_minutes ]
[ -n number_of_events ]
[ -m minimum_improvement ]
[ -fa physical_design_structures_to_add ]
[ -fi ]
[ -fp partitioning_strategy ]
[ -fk keep_existing_option ]
[ -fx drop_only_mode ]
[ -B storage_size ]
[ -c max_key_columns_in_index ]
[ -C max_columns_in_index ]
[ -e | -e tuning_log_name ]
[ -N online_option]
[ -q ]
[ -u ]
[ -x ]
[ -a ]
]
Argumente
-?
Zeigt Informationen zur Verwendung an.-Atime_for_tuning_in_minutes
Gibt die Optimierungszeit in Minuten an. dta verwendet die angegebene Zeitspanne, um die Arbeitsauslastung zu optimieren und ein Skript mit den empfohlenen Änderungen des physischen Entwurfs zu generieren. Standardmäßig geht dta von einer Optimierungszeit von 8 Stunden aus. Die Angabe von 0lässt eine unbegrenzte Optimierungszeit zu. Es ist möglich, dass dta vor Ablauf der angegebenen Zeit mit der Optimierung der gesamten Arbeitsauslastung fertig ist. Wenn sichergestellt werden soll, dass die gesamte Arbeitsauslastung optimiert wird, empfiehlt es sich jedoch, eine unbegrenzte Optimierungszeit anzugeben (-A 0).-a
Optimiert die Arbeitsauslastung und wendet die Empfehlung an, ohne Sie zur Bestätigung aufzufordern.-Bstorage_size
Gibt den maximalen Speicherplatz (in MB) an, der durch den empfohlenen Index und die Partitionierung beansprucht werden kann. Wenn mehrere Datenbanken optimiert werden, werden die Empfehlungen für alle Datenbanken bei der Speicherplatzberechnung berücksichtigt. Standardmäßig geht dta von der kleineren der folgenden Speicherplatzgrößen aus:Das Dreifache des aktuellen Rohdatenvolumens, was die Gesamtgröße der Heaps und gruppierten Indizes für Tabellen in der Datenbank einschließt.
Der freie Speicherplatz auf allen angefügten Laufwerken zuzüglich des Rohdatenvolumens.
Standardmäßig schließt die Speicherplatzgröße weder nicht gruppierte Indizes noch indizierte Sichten ein.
-Cmax_columns_in_index
Gibt die maximale Anzahl von Spalten in Indizes an, die von dta vorgeschlagen werden. Der Maximalwert hängt von der Version von SQL Server ab. Der Maximalwert für SQL Server 2000 ist 16, der Maximalwert für SQL Server 2005 und SQL Server 2008 ist 1024. Standardmäßig ist dieses Argument auf 16 festgelegt.-cmax_key_columns_in_index
Gibt die maximale Anzahl von Schlüsselspalten in Indizes an, die von dta vorgeschlagen werden. Der Standardwert ist 16, was dem maximal zulässigen Wert entspricht. Dieses Argument gilt nur für SQL Server 2005 und SQL Server 2008. dta berücksichtigt auch die Erstellung von Indizes mit eingeschlossenen Spalten. Bei Indizes, für die eingeschlossene Spalten empfohlen werden, kann die in diesem Argument angegebene Anzahl von Spalten überschritten werden.-Ddatabase_name
Gibt den Namen jeder zu optimierenden Datenbank an. Die erste Datenbank ist die Standarddatenbank. Sie können mehrere Datenbanken angeben, indem Sie Kommas als Trennzeichen zwischen den Datenbanknamen verwenden. Beispiel:dta –D database_name1, database_name2...
Alternativ dazu können Sie mehrere Datenbanken auch angeben, indem Sie das Argument -D für jeden einzelnen Datenbanknamen verwenden. Beispiel:
dta –D database_name1 -D database_name2... n
Das Argument -D ist verbindlich. Wenn -d nicht angegeben wurde, stellt dta zunächst eine Verbindung mit der Datenbank her, die in der ersten USE database_name-Klausel in der Arbeitsauslastung angegeben ist. Enthält die Arbeitsauslastung keine explizite USE database_name-Klausel, müssen Sie -d verwenden.
Angenommen, eine Arbeitsauslastung enthält keine explizite USE database_name-Klausel. Wenn Sie nun den folgenden dta-Befehl verwenden, wird keine Empfehlung generiert:
dta -D db_name1, db_name2...
Wenn Sie dieselbe Arbeitsauslastung verwenden, dieses Mal jedoch den folgenden dta-Befehl mit dem Argument -d angeben, wird eine Empfehlung generiert:
dta -D db_name1, db_name2 -d db_name1
-ddatabase_name
Gibt die erste Datenbank an, mit der dta eine Verbindung herstellt, wenn eine Arbeitsauslastung optimiert wird. Für dieses Argument kann nur eine einzige Datenbank angegeben werden. Beispiel:dta -d adventureworks2008R2 ...
Wenn mehrere Datenbanknamen angegeben werden, gibt dta einen Fehler zurück. Das Argument -d ist optional.
Wenn Sie eine XML-Eingabedatei verwenden, können Sie die erste Datenbank, mit der dta eine Verbindung herstellt, mithilfe des DatabaseToConnect-Elements angeben, das sich unterhalb des TuningOptions-Elements befindet. Weitere Informationen finden Sie unter XML-Eingabedateireferenz (Datenbankoptimierungsratgeber).
Wenn Sie nur eine einzige Datenbank optimieren, wird mit -d Funktionalität bereitgestellt, die der Funktionalität des Arguments -d im Hilfsprogramm sqlcmd ähnlich ist. Die USE database_name-Anweisung wird jedoch nicht ausgeführt. Weitere Informationen finden Sie unter sqlcmd (Hilfsprogramm).
-E
Verwendet eine vertrauenswürdige Verbindung, statt ein Kennwort anzufordern. Sie müssen entweder das Argument -E oder -U, das eine Anmelde-ID angibt, verwenden.-etuning_log_name
Gibt den Namen der Tabelle oder der Datei an, in der dta Ereignisse aufzeichnet, die nicht optimiert werden konnten. Die Tabelle wird auf dem Server erstellt, auf dem die Optimierung ausgeführt wird.Wenn eine Tabelle verwendet wird, geben Sie den Namen im folgenden Format an: [database_name].[owner_name].table_name. In der folgenden Tabelle ist für jeden Parameter der zugehörige Standardwert aufgeführt:
Parameter
Standardwert
database_name
Der mit der Option -D angegebene Wert für database_name.
owner_name
dbo
Hinweisowner_name muss den Wert dbo haben. Wenn ein anderer Wert angegeben wird, erzeugt die Ausführung von dta einen Fehler, und es wird ein Fehler zurückgegeben.table_name
Keine
Wenn eine Datei verwendet wird, geben Sie als Dateierweiterung .xml an. Beispiel: TuningLog.xml.
Hinweis Das Hilfsprogramm dta löscht nicht den Inhalt von benutzerdefinierten Optimierungsprotokolltabellen, wenn die Sitzung gelöscht wird. Beim Optimieren sehr großer Arbeitsauslastungen wird empfohlen, für das Optimierungsprotokoll eine Tabelle anzugeben. Da beim Optimieren großer Arbeitsauslastungen umfangreiche Optimierungsprotokolle entstehen können, können die Sitzungen schneller gelöscht werden, wenn eine Tabelle verwendet wird.
-F
Ermöglicht es, dass dta eine vorhandene Ausgabedatei überschreibt. Wenn bereits eine Ausgabedatei mit demselben Namen vorhanden ist und -F nicht angegeben wird, gibt dtaeinen Fehler zurück. Sie können -F zusammen mit -of, -or oder -ox verwenden.-faphysical_design_structures_to_add
Gibt an, welche Teile der physischen Entwurfsstruktur dta in die Empfehlung einschließen soll. In der folgenden Tabelle sind die Werte, die für dieses Argument angegeben werden können, sowie die zugehörigen Beschreibungen aufgeführt. Wenn kein Wert angegeben wird, verwendet dta die Standardeinstellung -faIDX.Wert
Beschreibung
IDX_IV
Indizes und indizierte Sichten. Informationen zu den Versionen von SQL Server, in denen diese Optimierungsoption nicht unterstützt wird, finden Sie unter Nicht unterstützte Optimierungsoptionen.
IDX
Nur Indizes.
IV
Nur indizierte Sichten. Informationen zu den Versionen von SQL Server, in denen diese Optimierungsoption nicht unterstützt wird, finden Sie unter Nicht unterstützte Optimierungsoptionen.
NCL_IDX
Nur nicht gruppierte Indizes.
-fi
Gibt an, dass gefilterte Indizes für neue Empfehlungen berücksichtigt werden. Weitere Informationen finden Sie unter Richtlinien für den Entwurf gefilterter Indizes.-fkkeep_existing_option
Gibt an, welche vorhandenen physischen Entwurfsstrukturen dta beim Generieren der Empfehlung beibehalten muss. In der folgenden Tabelle sind die Werte, die für dieses Argument angegeben werden können, sowie die zugehörigen Beschreibungen aufgeführt:
<div class="caption">
</div>
<div class="tableSection">
<table>
<colgroup>
<col style="width: 50%" />
<col style="width: 50%" />
</colgroup>
<thead>
<tr class="header">
<th><p>Wert</p></th>
<th><p>Beschreibung</p></th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><p>NONE</p></td>
<td><p>Keine vorhandenen Strukturen</p></td>
</tr>
<tr class="even">
<td><p>ALL</p></td>
<td><p>Alle vorhandenen Strukturen</p></td>
</tr>
<tr class="odd">
<td><p>ALIGNED</p></td>
<td><p>Alle vorhandene Strukturen mit ausgerichteter Partitionierung</p></td>
</tr>
<tr class="even">
<td><p>CL_IDX</p></td>
<td><p>Alle gruppierten Indizes für Tabellen</p></td>
</tr>
<tr class="odd">
<td><p>IDX</p></td>
<td><p>Alle gruppierten und nicht gruppierten Indizes für Tabellen</p></td>
</tr>
</tbody>
</table>
</div>
-fppartitioning_strategy
Gibt an, ob neue physische Entwurfsstrukturen (Indizes und indizierte Sichten), die von dta vorgeschlagen werden, partitioniert werden sollen und wie diese Partitionierung ggf. erfolgen soll. In der folgenden Tabelle sind die Werte, die für dieses Argument angegeben werden können, sowie die zugehörigen Beschreibungen aufgeführt:Wert
Beschreibung
NONE
Keine Partitionierung
FULL
Vollständige Partitionierung (zur Verbesserung der Leistung)
ALIGNED
Nur ausgerichtete Partitionierung (zur Verbesserung der Verwaltbarkeit)
ALIGNED bedeutet, dass jeder vorgeschlagene Index in der von dta generierten Empfehlung ganz genau so wie die zugrunde liegende Tabelle partitioniert wird, für die der Index definiert wurde. Nicht gruppierte Indizes für eine indizierte Sicht werden mit der indizierten Sicht ausgerichtet. Für dieses Argument kann nur ein Wert angegeben werden. Der Standardwert ist -fpNONE.
-fxdrop_only_mode
Gibt an, dass dta nur das Löschen vorhandener physischer Entwurfsstrukturen in Erwägung zieht. Das Erstellen neuer physischer Entwurfsstrukturen wird nicht in Erwägung gezogen. Wenn diese Option angegeben wird, bewertet dta die Zweckmäßigkeit vorhandener physischer Entwurfsstrukturen und empfiehlt das Löschen selten verwendeter Strukturen. Für dieses Argument werden keinen Werte angegeben. Es kann nicht mit dem Argument -fa, -fp oder -fk ALL verwendet werden.-IDsession_ID
Gibt einen numerischen Bezeichner für die Optimierungssitzung an. Wird dieses Argument nicht angegeben, generiert dta eine ID-Nummer. Sie können diesen Bezeichner zum Anzeigen von Informationen zu vorhandenen Optimierungssitzungen verwenden. Wenn Sie keinen Wert für -ID angeben, muss mit -s ein Sitzungsname angegeben werden.-ifworkload_file
Gibt den Pfad und den Namen der Arbeitsauslastungsdatei an, die als Eingabe für die Optimierung verwendet werden soll. Die Datei muss eines der folgenden Formate aufweisen: TRC (SQL Server Profiler-Ablaufverfolgungsdatei), SQL (SQL-Datei) oder LOG (SQL Server-Ablaufverfolgungsdatei). Es muss entweder eine Arbeitsauslastungsdatei oder eine Arbeitsauslastungstabelle angegeben werden.-itworkload_trace_table_name
Gibt den Namen einer Tabelle an, die die Arbeitsauslastungs-Ablaufverfolgung für das Optimieren enthält. Der Name wird im folgenden Format angegeben: [database_name].[owner_name]**.**table_name.In der folgenden Tabelle ist für jeden Parameter der zugehörige Standardwert aufgeführt:
Parameter
Standardwert
database_name
Der mit der Option -D angegebene Wert für database_name.
owner_name
dbo
table_name
Keiner
Hinweis owner_name muss den Wert dbo haben. Wenn ein anderer Wert angegeben wird, erzeugt die Ausführung von dta einen Fehler, und es wird ein Fehler zurückgegeben. Beachten Sie zudem, dass entweder eine Arbeitsauslastungstabelle oder eine Arbeitsauslastungsdatei angegeben werden muss.
-ixinput_XML_file_name
Gibt den Namen der XML-Datei an, die die Eingabeinformationen für dta enthält. Dieser muss einem gültigen XML-Dokument entsprechen, das mit DTASchema.xsd übereinstimmt. Widersprüchliche Argumente, die an der Eingabeaufforderung für Optimierungsoptionen angegeben werden, setzen den entsprechenden Wert in dieser XML-Datei außer Kraft. Die einzige Ausnahme hiervon sind benutzerdefinierte Konfigurationen, die im Auswertungsmodus in der XML-Eingabedatei eingegeben werden. Wenn beispielsweise eine Konfiguration im Configuration-Element der XML-Eingabedatei eingegeben wird und das EvaluateConfiguration-Element ebenfalls als Optimierungsoption angegeben wird, setzt die in der XML-Eingabedatei angegebene Optimierungsoption die an der Eingabeaufforderung eingegebene Option außer Kraft.-mminimum_improvement
Gibt den Mindestprozentsatz der Verbesserung an, die durch eine empfohlene Konfiguration erreicht werden muss.-Nonline_option
Gibt an, ob physische Entwurfsstrukturen online erstellt werden. In der folgenden Tabelle sind die Werte, die Sie für dieses Argument angeben können, sowie die zugehörigen Beschreibungen aufgeführt:Wert
Beschreibung
OFF
Es können keine empfohlenen physischen Entwurfsstrukturen online erstellt werden.
ON
Alle empfohlenen physischen Entwurfsstrukturen können online erstellt werden.
MIXED
Der Datenbankoptimierungsratgeber versucht, sofern möglich physische Entwurfsstrukturen zu empfehlen, die online erstellt werden können.
Wenn Indizes online erstellt werden, wird ONLINE = ON an die Objektdefinition angefügt.
-nnumber_of_events
Gibt die Anzahl von Ereignissen in der Arbeitsauslastung an, die dta optimieren soll. Wenn dieses Argument angegeben wird und es sich bei der Arbeitsauslastung um eine Ablaufverfolgungsdatei handelt, die Informationen zur Dauer enthält, optimiert dta die Ereignisse nach Dauer (abnehmend) sortiert. Dieses Argument ist hilfreich, um zwei Konfigurationen mit physischen Entwurfsstrukturen miteinander zu vergleichen. Für den Vergleich von zwei Konfigurationen geben Sie wie folgt für beide Konfigurationen dieselbe Anzahl von zu optimierenden Ereignissen und dann, ebenfalls für beide Konfigurationen, eine unbegrenzte Dauer an:dta -n number_of_events -A 0
In diesem Fall ist es wichtig, eine unbegrenzte Optimierungszeit anzugeben (-A 0). Andernfalls geht der Datenbankoptimierungsratgeber standardmäßig von einer achtstündigen Optimierungsdauer aus.
-ofoutput_script_file_name
Gibt an, dass dta die Empfehlung in Form eines Transact-SQL-Skripts in die angegebene Datei im angegebenen Zielverzeichnis schreibt.Sie können -F mit dieser Option verwenden. Stellen Sie sicher, dass der Dateiname eindeutig ist, insbesondere, wenn Sie außerdem -or und -ox verwenden.
-oroutput_xml_report_file_name
Gibt an, dass dta die Empfehlung in einen Ausgabebericht im XML-Format schreibt. Wenn ein Dateiname angegeben wird, werden die Empfehlungen in diese Datei im angegebenen Zielverzeichnis geschrieben. Andernfalls verwendet dta den Sitzungsnamen, um den Dateinamen zu generieren, und erstellt diese Datei im aktuellen Verzeichnis.
Sie können **-F** mit dieser Option verwenden. Stellen Sie sicher, dass der Dateiname eindeutig ist, insbesondere, wenn Sie außerdem **-of** und **-ox** verwenden.
-oxoutput_XML_file_name
Gibt an, dass dta die Empfehlung in Form einer XML-Datei mit dem angegebenen Dateinamen in das angegebene Zielverzeichnis schreibt. Stellen Sie sicher, dass der Datenbankoptimierungsratgeber über die Berechtigungen zum Schreiben in das Zielverzeichnis verfügt.Sie können -F mit dieser Option verwenden. Stellen Sie sicher, dass der Dateiname eindeutig ist, insbesondere, wenn Sie außerdem -of und -or verwenden.
-Ppassword
Gibt das Kennwort für die Anmelde-ID an. Wenn diese Option nicht verwendet wird, fordert dta zur Eingabe eines Kennworts auf.-q
Legt den stillen Modus fest. Es werden keine Informationen an der Konsole ausgegeben. Das gilt auch für Status- und Headerinformationen.-rlanalysis_report_list
Gibt die Liste der zu generierenden Analyseberichte an. In der folgenden Tabelle sind die Werte aufgeführt, die für dieses Argument angegeben werden können:Wert
Bericht
ALL
Alle Analyseberichte
STMT_COST
Anweisungskostenbericht
EVT_FREQ
Ereignishäufigkeitsbericht
STMT_DET
Anweisungsdetailbericht
CUR_STMT_IDX
Beziehungsbericht Anweisung – Index (aktuelle Konfiguration)
REC_STMT_IDX
Beziehungsbericht Anweisung – Index (empfohlene Konfiguration)
STMT_COSTRANGE
Anweisungskostenumfangs-Bericht
CUR_IDX_USAGE
Indexverwendungsbericht (aktuelle Konfiguration)
REC_IDX_USAGE
Indexverwendungsbericht (empfohlene Konfiguration)
CUR_IDX_DET
Indexdetailbericht (aktuelle Konfiguration)
REC_IDX_DET
Indexdetailbericht (empfohlene Konfiguration)
VIW_TAB
Beziehungsbericht Sicht – Tabelle
WKLD_ANL
Arbeitsauslastungsanalyse-Bericht
DB_ACCESS
Datenbankzugriffsbericht
TAB_ACCESS
Tabellenzugriffsbericht
COL_ACCESS
Spaltenzugriffsbericht
Sie können mehrere Berichte angeben, indem Sie die einzelnen Werte durch Kommas voneinander trennen. Beispiel:
... -rl EVT_FREQ, VIW_TAB, WKLD_ANL ...
-Sserver_name[ \instance]
Gibt den Namen des Computers und der SQL Server-Instanz an, mit der eine Verbindung hergestellt werden soll. Wenn server_namenicht angegeben wird, stellt dta eine Verbindung mit der Standardinstanz von SQL Server auf dem lokalen Computer her. Diese Option ist erforderlich, wenn eine Verbindung mit einer benannten Instanz hergestellt wird oder wenn dtavon einem Remotecomputer im Netzwerk ausgeführt wird.-ssession_name
Gibt den Namen der Optimierungssitzung an. Der Sitzungsname ist erforderlich, wenn -ID nicht angegeben wird.-Tftable_list_file
Gibt den Namen einer Datei an, die eine Liste der Tabellen enthält, die optimiert werden sollen. Jede Tabelle, die in der Datei aufgelistet wird, sollte in einer neuen Zeile beginnen. Tabellennamen sollten mit einer dreiteiligen Benennung qualifiziert werden, z. B. adventureworks2008R2.dbo.department. Zum Aufrufen der Tabellenskalierungsfunktion kann hinter dem Namen einer vorhandenen Tabelle eine Zahl angegeben werden, die die voraussichtliche Anzahl von Zeilen in der Tabelle anzeigt. Der Datenbankoptimierungsratgeber berücksichtigt die voraussichtliche Anzahl von Zeilen bei der Optimierung oder Bewertung von Anweisungen in der Arbeitsauslastung, die auf diese Tabellen verweisen. Beachten Sie, dass zwischen der Anzahl in number_of_rows und dem Wert für table_name ein oder mehrere Leerzeichen stehen können.Eine für table_list_file angegebene Datei muss folgendes Format aufweisen:
database_name.[schema_name].table_name [number_of_rows]
database_name.[schema_name].table_name [number_of_rows]
database_name.[schema_name].table_name [number_of_rows]
Die Verwendung dieses Arguments ist eine Alternative zur Eingabe einer Tabellenliste an der Eingabeaufforderung (-Tl). Verwenden Sie keine Tabellenlistendatei (-Tf), wenn Sie -Tl verwenden. Wenn beide Argumente verwendet werden, erzeugt dta einen Fehler und gibt einen Fehler zurück.
Wenn die Argumente -Tf und -Tl nicht angegeben werden, werden alle Benutzertabellen in den angegebenen Datenbanken bei der Optimierung berücksichtigt.
-Tltable_list
Gibt eine Liste mit zu optimierenden Tabellen an der Eingabeaufforderung an. Geben Sie zwischen Tabellennamen ein Komma als Trennzeichen ein. Wenn nur eine Datenbank mit dem Argument -D angegeben wird, müssen die Tabellennamen nicht mit dem Datenbanknamen qualifiziert werden. Andernfalls ist für jede Tabelle ihr vollqualifizierter Name im Format database_name.schema_name.table_name erforderlich.Die Verwendung dieses Arguments ist eine Alternative zum Verwenden einer Tabellenlistendatei (-Tf). Wenn sowohl -Tl als auch -Tf verwendet werden, erzeugt dta einen Fehler und gibt einen Fehler zurück.
-Ulogin_id
Gibt die Anmelde-ID an, die zum Herstellen einer Verbindung mit SQL Server verwendet wird.-u
Startet die Benutzeroberfläche des Datenbankoptimierungsratgebers. Alle Parameter werden als Starteinstellungen für die Benutzeroberfläche interpretiert.-x
Startet eine Optimierungssitzung und beendet das Hilfsprogramm.
Hinweise
Drücken Sie einmal STRG+C, um die Optimierungssitzung zu beenden und Empfehlungen basierend auf der Analyse zu generieren, die dta bis zu diesem Zeitpunkt abgeschlossen hat. Daraufhin werden Sie aufgefordert zu entscheiden, ob Sie Empfehlungen generieren möchten. Drücken Sie erneut STRG+C, um die Optimierungssitzung zu beenden, ohne Empfehlungen zu generieren.
Beispiele
A. Optimieren einer Arbeitsauslastung mit einer Empfehlung, die Indizes und indizierte Sichten einschließt
In diesem Beispiel wird eine sichere Verbindung (-E) verwendet, um eine Verbindung mit der tpcd1G-Datenbank auf dem Server MyServer herzustellen und dann eine Arbeitsauslastung zu analysieren und Empfehlungen zu erstellen. Die Ausgabe wird in die Skriptdatei script.sql geschrieben. Wenn script.sql bereits vorhanden ist, wird die Datei von dta überschrieben, da das Argument -F angegeben wurde. Die Dauer der Optimierungssitzung wird nicht begrenzt, um sicherzustellen, dass die Arbeitsauslastung vollständig analysiert wird (-A 0). Mit der Empfehlung muss eine Mindestverbesserung von 5 % erzielt werden (-m 5). dta soll Indizes und indizierte Sichten in die abschließende Empfehlung einbeziehen (-fa IDX_IV).
dta –S MyServer –E -D tpcd1G -if tpcd_22.sql -F –of script.sql –A 0 -m 5 -fa IDX_IV
B. Begrenzen des verwendeten Speicherplatzes
In diesem Beispiel wird die Gesamtgröße der Datenbank, einschließlich Rohdaten und zusätzlicher Indizes, auf 3 GB begrenzt (-B 3000) und die Ausgabe in die Datei d:\result_dir\script1.sql geschrieben. Die Optimierung wird maximal 1 Stunde ausgeführt (-A 60).
dta –D tpcd1G –if tpcd_22.sql -B 3000 –of "d:\result_dir\script1.sql" –A 60
C. Begrenzen der Anzahl optimierter Abfragen
In diesem Beispiel wird die Optimierung beendet, sobald die Anzahl der Abfragen, die aus der Datei orders_wkld.sql gelesen werden, den Wert 10 erreicht hat (-n 10) oder die Optimierung für eine Dauer von 15 Minuten ausgeführt wurde (-A 15), je nachdem, welches Ereignis zuerst eintritt. Wenn Sie die Optimierung aller 10 Abfragen sicherstellen möchten, geben Sie mithilfe von -A 0 eine unbegrenzte Optimierungszeit an. Wenn die Zeit ein wichtiger Faktor ist, geben Sie ein geeignetes Zeitlimit an, indem Sie wie im folgenden Beispiel gezeigt mit dem Argument -A die Anzahl der Minuten angeben, die für die Optimierung zur Verfügung stehen.
dta –D orders –if orders_wkld.sql –of script.sql –A 15 -n 10
D. Optimieren bestimmter Tabellen, die in einer Datei aufgeführt sind
In diesem Beispiel wird die Verwendung von table_list_file (das Argument -Tf) veranschaulicht. Die Datei table_list.txt enthält Folgendes:
Adventureworks2008R2.dbo.customer 100000
adventureworks2008R2.dbo.store
adventureworks2008R2.dbo.product 2000000
Der Inhalt der Datei table_list.txt gibt Folgendes an:
Es sollen nur die Datenbanktabellen customer, store und product optimiert werden.
Es wird angenommen, dass die Tabellen customer und product 100.000 bzw. 2.000.000 Zeilen enthalten.
Es wird angenommen, dass die Anzahl von Zeilen in store der aktuellen Anzahl von Zeilen in der Tabelle entspricht.
Beachten Sie, dass sich in table_list_file zwischen dem Wert für die Anzahl von Zeilen und dem davor aufgeführten Tabellennamen ein oder mehrere Leerzeichen befinden können.
Die Optimierungszeit beträgt 2 Stunden (-A 120), und die Ausgabe wird in eine XML-Datei geschrieben (-ox XMLTune.xml).
dta –D pubs –if pubs_wkld.sql –ox XMLTune.xml –A 120 –Tf table_list.txt