Spanner-Befehlszeilenbefehle

Auf dieser Seite werden die von der Spanner-Befehlszeile unterstützten Befehle zusammengefasst.

Befehlssyntax Beschreibung
SHOW DATABASES; Datenbanken auflisten.
USE database_name [ROLE role_name]; Datenbank wechseln Die von Ihnen festgelegte Rolle wird für die detaillierte Zugriffssteuerung verwendet.
CREATE DATABASE database_name; Datenbank erstellen
DROP DATABASE database_name; Löschen Sie die Datenbank.
SHOW TABLES [schema]; Tabellen auflisten Wenn Sie kein Schema angeben, verwendet Spanner das Standardschema.
SHOW CREATE TABLE table_name; Tabellenschema anzeigen
SHOW COLUMNS FROM table_name; Spalten einblenden
SHOW INDEX FROM table_name; Indexe anzeigen
CREATE TABLE ...; Tabelle erstellen.
ALTER TABLE ...; Ändern Sie das Tabellenschema.
DROP TABLE ...; Tabelle löschen
TRUNCATE TABLE table_name; Tabelle kürzen Löschen Sie nur Zeilen. Dieser Befehl ist nicht atomar, da er als partitionierte DML-Anweisung ausgeführt wird.
CREATE INDEX ...; Index erstellen
DROP INDEX ...; Index löschen.
CREATE ROLE ...; Rolle erstellen. Weitere Informationen finden Sie in der IAM-Übersicht für Spanner.
DROP ROLE ...; Rolle löschen
GRANT ...; Weisen Sie einer Rolle eine Berechtigung zu.
REVOKE ...; Berechtigung für eine Rolle widerrufen
SELECT ...; Abfrage ausführen
{ INSERT|UPDATE|DELETE } ...; Führen Sie eine DML-Anweisung aus.
PARTITIONED { UPDATE|DELETE } ...; Eine partitionierte DML-Anweisung ausführen Dieser Befehl ist nicht atomar.
EXPLAIN SELECT ...; Einen Abfrageausführungsplan anzeigen. Weitere Informationen finden Sie unter Abfrage-Ausführungspläne.
EXPLAIN {INSERT|UPDATE|DELETE} ...; DML-Ausführungsplan anzeigen
EXPLAIN ANALYZE SELECT ...; Zeigt den Abfrageausführungsplan mit Optimierungsstatistiken an. Weitere Informationen finden Sie unter Optimizer-Statistikpakete.
EXPLAIN ANALYZE {INSERT|UPDATE|DELETE} ...; Zeigt den DML-Ausführungsplan mit Statistiken des Optimierungstools an. Weitere Informationen finden Sie unter Optimizer-Statistikpakete.
DESCRIBE SELECT ...; Form des Abfrageergebnisses anzeigen.
DESCRIBE {INSERT|UPDATE|DELETE} ... THEN RETURN ...; Form des DML-Ergebnisses anzeigen.
ANALYZE; Beginnt mit der Erstellung eines neuen Statistikpakets für das Abfrageoptimierungstool.
START BATCH DDL; Starten Sie einen DDL-Batch.
RUN BATCH; Batchbefehle ausführen
ABORT BATCH; Batchbefehle abbrechen
BEGIN [RW] [ISOLATION LEVEL {SERIALIZABLE|REPEATABLE READ}] [PRIORITY {HIGH|MEDIUM|LOW}] [TAG tag_name]; Starten Sie eine Lese-Schreib-Transaktion. Weitere Informationen finden Sie unter Transaktionsbefehle.
COMMIT; Führen Sie ein Commit einer Lese-Schreib-Transaktion durch.
ROLLBACK; Rollback (Rückgängigmachen) einer Lese-Schreib-Transaktion
BEGIN RO [{seconds|RFC 3339-formatted_time}] [PRIORITY {HIGH|MEDIUM|LOW}] [TAG tag_name]; Starten Sie eine schreibgeschützte Transaktion. seconds und RFC 3339-formatted_time werden für veraltete Lesevorgänge verwendet. Weitere Informationen finden Sie unter Transaktionsbefehle.
CLOSE; Schreibgeschützte Transaktion beenden
EXIT; Beenden Sie die Spanner-Befehlszeile.

BATCH-Befehle

Mit der Spanner CLI können Sie DDL-Vorgänge im Batchmodus ausführen. Dabei werden mehrere DDL-Anweisungen in einem einzigen Vorgang gruppiert, was Schemaänderungen beschleunigt. Die Spanner-Befehlszeile unterstützt die folgenden BATCH-Befehle:

START BATCH DDL;

Mit diesem Befehl wird ein DDL-Batch initiiert. Alle nachfolgenden DDL-Anweisungen (z. B. CREATE TABLE, ALTER TABLE, DROP INDEX), die Sie in dieser Sitzung ausführen, bleiben im Status „Ausstehend“ und werden nicht sofort auf die Datenbank angewendet.

RUN BATCH;

Nachdem Sie START BATCH DDL und die nachfolgenden DDL-Anweisungen ausgeführt haben, verwenden Sie den Befehl RUN BATCH, um alle ausstehenden DDL-Vorgänge als einzelne Anfrage an Spanner zu senden. Dieser Befehl reduziert den Overhead, der mit einzelnen DDL-Anweisungen verbunden ist, was zu schnelleren Schemaänderungen führt.

ABORT BATCH;

Wenn Sie die ausstehenden DDL-Änderungen nicht anwenden möchten, verwenden Sie den Befehl ABORT BATCH. Mit diesem Befehl werden alle DDL-Anweisungen verworfen, die seit dem Ausführen des Befehls START BATCH DDL erfasst wurden. Dadurch wird der Batch effektiv zurückgesetzt und das Datenbankschema bleibt unverändert.

Transaktionsbefehle

Die Spanner-Befehlszeile unterstützt die folgenden SQL-Befehle für Transaktionen:

BEGIN [TRANSACTION] [RO] [seconds|RFC 3339-formatted_time ] [ISOLATION LEVEL {SERIALIZABLE|REPEATABLE READ}] [PRIORITY {HIGH|MEDIUM|LOW}] [TAG tag_name];

Starten Sie eine Transaktion. Sie können folgende Optionen konfigurieren:

  • Transaktionstyp: Starten Sie eine Lese-/Schreibtransaktion (kein Parameter erforderlich) oder eine schreibgeschützte Transaktion (RO).
  • Zeit für veraltete Lesevorgänge: Legen Sie die Zeit in Sekunden oder im RFC 3339-Format fest, um Daten ab einem bestimmten Zeitstempel zu lesen.
  • Isolationsebene: Legen Sie die Isolationsebene für Lese-/Schreibtransaktionen fest. Standardmäßig wird die serialisierbare Isolation verwendet. Weitere Informationen finden Sie unter Übersicht über Isolierungsstufen.
  • Priorität: Legen Sie die Anfragepriorität für die Transaktion fest. Die mittlere Priorität ist standardmäßig festgelegt.
  • Tag: Legen Sie Transaktionstags mit dem Befehl BEGIN fest.

    • Fügen Sie in einer Lese-/Schreibtransaktion ein Tag mit BEGIN TAG tag hinzu. Die Spanner CLI fügt das Tag als Transaktions-Tag hinzu. Das Tag wird auch als Anfrage-Tag innerhalb der Transaktion verwendet.
    • Fügen Sie in einer schreibgeschützten Transaktion ein Tag mit BEGIN RO TAG tag hinzu. Da schreibgeschützte Transaktionen keine Transaktions-Tags unterstützen, fügt Spanner das Tag als Anfrage-Tag hinzu.

COMMIT;

Schließen Sie alle Änderungen in einer Lese-/Schreibtransaktion ab und machen Sie sie dauerhaft.

CLOSE;

Schließen Sie eine schreibgeschützte Transaktion.

ROLLBACK;

Rollback (Rückgängigmachen) einer Lese-Schreib-Transaktion

Nächste Schritte