Dies ist der Befehl mysqlindexcheck, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
mysqlindexcheck – Identifizieren Sie potenziell redundante Tabellenindizes
ZUSAMMENFASSUNG
mysqlindexcheck [Optionen] db[:Tisch] ...
BESCHREIBUNG
Dieses Dienstprogramm liest die Indizes für eine oder mehrere Tabellen und identifiziert Duplikate und
potenziell redundante Indizes.
Um alle Tabellen in einer Datenbank zu überprüfen, geben Sie nur den Datenbanknamen an. Um ein bestimmtes zu überprüfen
Tabelle, benennen Sie die Tabelle in db.table Format. Es ist möglich, Datenbank- und Tabellennamen zu mischen.
Sie können Tabellen in jeder Datenbank außer den internen Datenbanken scannen mysql,
INFORMATION_SCHEMA und performance_schema.
Abhängig vom Indextyp wendet das Dienstprogramm die folgenden Regeln an, um Indizes zu vergleichen
(bezeichnet als idx_a und idx_b):
· BTREE
idx_b ist genau dann redundant zu idx_a, wenn das erste n Spalten in idx_b erscheinen auch in
idx_a. Ordnung und Einzigartigkeit zählen.
· HASH
idx_a und idx_b sind genau dann Duplikate, wenn sie dieselben Spalten in enthalten
die selbe Reihenfolge. Einzigartigkeit zählt.
· RÄUMLICH
idx_a und idx_b sind genau dann Duplikate, wenn sie dieselbe Spalte enthalten (nur eine).
Spalte ist zulässig).
· VOLLER TEXT
idx_b ist genau dann redundant zu idx_a, wenn alle Spalten in idx_b in idx_a enthalten sind.
Bestellung zählt.
Um zu sehen, DROP Anweisungen zum Löschen redundanter Indizes geben Sie an --show-drops Möglichkeit. Zu
Untersuchen Sie die vorhandenen Indizes und verwenden Sie die - ausführlich Option, die das Äquivalent druckt CREATE
INDEX (oder ALTER TABELLE für Primärschlüssel.
Um die besten oder schlechtesten Nicht-Primärschlüsselindizes für jede Tabelle anzuzeigen, verwenden Sie die --Beste or
--schlimmste Möglichkeit. Dies führt dazu, dass die Ausgabe die besten oder schlechtesten Indizes aus Tabellen mit anzeigt
10 oder mehr Reihen. Standardmäßig zeigt jede Option fünf Indizes an. Um dies zu überschreiben, geben Sie eine an
ganzzahliger Wert für die Option.
Um das Format der angezeigten Indexlisten zu ändern --show-indexes, --Beste und
--schlimmste Optionen verwenden Sie einen der folgenden Werte mit --Format Option:
· Gitter (Default)
Ausgabe im Raster- oder Tabellenformat wie beim . anzeigen mysql Monitor.
· csv
Ausgabe im Format mit durch Kommas getrennten Werten anzeigen.
· Tab
Ausgabe im tabulatorgetrennten Format anzeigen.
· SQL
Drucken Sie SQL-Anweisungen anstelle einer Liste.
· vertikal
Ausgabe im einspaltigen Format anzeigen, wie beim \G-Befehl für die mysql
Monitor.
Beachten Sie das --Beste und --schlimmste Listen können nicht als SQL-Anweisungen gedruckt werden.
OPTIONAL
mysqlindexcheck akzeptiert die folgenden Befehlszeilenoptionen:
· --Hilfe
Eine Hilfemeldung anzeigen und beenden.
· --best[= ]
If --Statistiken gegeben ist, beschränken Sie die Indexstatistik auf das Beste N Indizes. Der Standardwert
of N ist 5, wenn es weggelassen wird.
· --format= , -F
Geben Sie das Anzeigeformat der Indexliste für die von erstellte Ausgabe an --Statistiken. Zulässiges Format
Werte sind Gitter, csv, Tab, SQL und vertikal. Der Standardwert ist Gitter.
· --server=
Verbindungsinformationen für den Server im Format:
<Benutzer>[:passwd>]@Gastgeber>[:port >>:Buchse>] oderLogin-Pfad>[:port >>:Buchse>].
· --show-drops, -d
Display DROP Anweisungen zum Löschen von Indizes.
· --show-indexes, -i
Zeigen Sie Indizes für jede Tabelle an.
· --skip, -s
Nicht vorhandene Tabellen überspringen.
· --Statistiken
Statistiken zur Indexleistung anzeigen.
· --verbose, -v
Geben Sie an, wie viele Informationen angezeigt werden sollen. Verwenden Sie diese Option mehrmals, um zu erhöhen
die Informationsmenge. Zum Beispiel, -v = ausführlich, -vv = ausführlicher, -vvv =
debuggen.
· --Ausführung
Versionsinformationen anzeigen und beenden.
· --worst[= ]
If --Statistiken gegeben ist, beschränken Sie die Indexstatistik auf das Schlimmste N Indizes. Der Standardwert
of N ist 5, wenn es weggelassen wird.
ANMERKUNG
Sie müssen Verbindungsparameter (Benutzer, Host, Passwort usw.) für ein Konto angeben
das über die entsprechenden Berechtigungen zum Lesen aller Objekte verfügt, auf die während des Vorgangs zugegriffen wird.
NB: --Format Option werden die zulässigen Werte nicht zwischen Groß- und Kleinschreibung unterschieden. Außerdem Werte
kann als ein beliebiges eindeutiges Präfix eines gültigen Wertes angegeben werden. Zum Beispiel, --format=g
gibt das Rasterformat an. Ein Fehler tritt auf, wenn ein Präfix mit mehr als einem gültigen Wert übereinstimmt.
Der Pfad zu den MySQL-Client-Tools sollte in der Umgebungsvariable PATH enthalten sein
um den Authentifizierungsmechanismus mit Anmeldepfaden zu verwenden. Dadurch kann das Dienstprogramm
Verwenden Sie die my_print_defaults-Tools, die erforderlich sind, um die Login-Pfadwerte aus dem
Anmeldekonfigurationsdatei (.mylogin.cnf).
Beispiele:
Um alle Tabellen in der Mitarbeiterdatenbank auf dem lokalen Server zu überprüfen, um das Mögliche zu sehen
Für redundante und doppelte Indizes verwenden Sie diesen Befehl:
$ mysqlindexcheck --server=root@localhost Mitarbeiter
# Quelle auf localhost: ... verbunden.
# Die folgenden Indizes sind Duplikate oder redundant \
für die Tabelle „mitarbeiter.dept_emp“:
#
ERSTELLEN SIE DEN INDEX „empf_no“ AUF „mitarbeiter.dept_emp“ (emp_no) MIT BTREE
# kann redundant oder doppelt sein von:
ALTER TABLE mitarbeiter.dept_emp PRIMÄRSCHLÜSSEL HINZUFÜGEN (emp_no, dept_no)
# Die folgenden Indizes sind Duplikate oder redundant \
für die Tabelle „mitarbeiter.dept_manager“:
#
ERSTELLEN SIE DEN INDEX „empf_no“ AUF „mitarbeiter.dept_manager“ (emp_no) MIT BTREE
# kann redundant oder doppelt sein von:
ALTER TABLE mitarbeiter.dept_manager PRIMÄRSCHLÜSSEL HINZUFÜGEN (emp_no, dept_no)
# Die folgenden Indizes sind Duplikate oder redundant \
für Tischangestellte.Gehälter:
#
ERSTELLEN SIE DEN INDEX „empf_no“ AUF „mitarbeiter.salaries“ (emp_no) MIT BTREE
# kann redundant oder doppelt sein von:
ALTER TABLE mitarbeiter.salaries PRIMÄRSCHLÜSSEL HINZUFÜGEN (emp_no, from_date)
# Die folgenden Indizes sind Duplikate oder redundant \
für Tischmitarbeiter.Titel:
#
ERSTELLEN SIE DEN INDEX „empf_no“ AUF „mitarbeiter.titel“ (emp_no) MIT BTREE
# kann redundant oder doppelt sein von:
ALTER TABLE mitarbeiter.titel PRIMÄRSCHLÜSSEL HINZUFÜGEN (emp_no, title, from_date)
URHEBERRECHT
Verwenden Sie mysqlindexcheck online über die Dienste von onworks.net