Perintah Spanner CLI

Halaman ini merangkum perintah yang didukung Spanner CLI.

Sintaksis perintah Deskripsi
SHOW DATABASES; Mencantumkan database.
USE database_name [ROLE role_name]; Beralih database. Peran yang Anda tetapkan digunakan untuk kontrol akses terperinci.
CREATE DATABASE database_name; Buat database.
DROP DATABASE database_name; Menghapus database.
SHOW TABLES [schema]; Mencantumkan tabel. Jika Anda tidak memberikan skema, Spanner akan menggunakan skema default.
SHOW CREATE TABLE table_name; Tampilkan skema tabel.
SHOW COLUMNS FROM table_name; Tampilkan kolom.
SHOW INDEX FROM table_name; Tampilkan indeks.
CREATE TABLE ...; Buat tabel.
ALTER TABLE ...; Ubah skema tabel.
DROP TABLE ...; Menghapus tabel.
TRUNCATE TABLE table_name; Memotong tabel. Hanya menghapus baris. Perintah ini tidak bersifat atomik karena dieksekusi sebagai pernyataan DML yang dipartisi.
CREATE INDEX ...; Buat indeks.
DROP INDEX ...; Menghapus indeks.
CREATE ROLE ...; Buat peran. Untuk mengetahui informasi selengkapnya, lihat Ringkasan IAM Spanner.
DROP ROLE ...; Hapus peran.
GRANT ...; Memberikan izin ke peran.
REVOKE ...; Mencabut izin dari peran.
SELECT ...; Jalankan kueri.
{ INSERT|UPDATE|DELETE } ...; Jalankan pernyataan DML.
PARTITIONED { UPDATE|DELETE } ...; Jalankan pernyataan DML yang dipartisi. Perintah ini bersifat non-atomik.
EXPLAIN SELECT ...; Menampilkan rencana eksekusi kueri. Untuk mengetahui informasi selengkapnya, lihat Rencana eksekusi kueri.
EXPLAIN {INSERT|UPDATE|DELETE} ...; Tampilkan rencana eksekusi DML.
EXPLAIN ANALYZE SELECT ...; Menampilkan rencana eksekusi kueri dengan statistik pengoptimal. Untuk mengetahui informasi selengkapnya, lihat Paket statistik pengoptimal.
EXPLAIN ANALYZE {INSERT|UPDATE|DELETE} ...; Tampilkan rencana eksekusi DML dengan statistik pengoptimal. Untuk mengetahui informasi selengkapnya, lihat Paket statistik pengoptimal.
DESCRIBE SELECT ...; Menampilkan bentuk hasil kueri.
DESCRIBE {INSERT|UPDATE|DELETE} ... THEN RETURN ...; Tampilkan bentuk hasil DML.
ANALYZE; Mulai pembuatan paket statistik pengoptimal kueri baru.
START BATCH DDL; Mulai batch DDL.
RUN BATCH; Menjalankan perintah batch.
ABORT BATCH; Membatalkan perintah batch.
BEGIN [RW] [ISOLATION LEVEL {SERIALIZABLE|REPEATABLE READ}] [PRIORITY {HIGH|MEDIUM|LOW}] [TAG tag_name]; Mulai transaksi baca-tulis. Untuk mengetahui informasi selengkapnya, lihat Perintah transaksi.
COMMIT; Lakukan transaksi baca-tulis.
ROLLBACK; Melakukan rollback (membatalkan) transaksi baca-tulis.
BEGIN RO [{seconds|RFC 3339-formatted_time}] [PRIORITY {HIGH|MEDIUM|LOW}] [TAG tag_name]; Mulai transaksi hanya baca. seconds dan RFC 3339-formatted_time digunakan untuk pembacaan yang tidak berlaku. Untuk mengetahui informasi selengkapnya, lihat Perintah transaksi.
CLOSE; Mengakhiri transaksi hanya baca.
EXIT; Keluar dari Spanner CLI.

Perintah BATCH

CLI Spanner memungkinkan Anda melakukan operasi DDL dalam mode batch, yang mengelompokkan beberapa pernyataan DDL ke dalam satu operasi dan mempercepat perubahan skema. CLI Spanner mendukung perintah BATCH berikut:

START BATCH DDL;

Perintah ini memulai batch DDL. Semua pernyataan DDL berikutnya (misalnya, CREATE TABLE, ALTER TABLE, DROP INDEX) yang Anda jalankan dalam sesi ini tetap dalam status tertunda dan tidak diterapkan ke database segera.

RUN BATCH;

Setelah menjalankan START BATCH DDL dan pernyataan DDL berikutnya, gunakan perintah RUN BATCH untuk mengirim semua operasi DDL yang tertunda sebagai satu permintaan ke Spanner. Perintah ini mengurangi overhead yang terkait dengan pernyataan DDL individual, sehingga modifikasi skema lebih cepat.

ABORT BATCH;

Jika Anda memutuskan untuk tidak menerapkan perubahan DDL yang tertunda, gunakan perintah ABORT BATCH. Perintah ini membatalkan semua pernyataan DDL yang dikumpulkan sejak Anda mengeluarkan perintah START BATCH DDL, sehingga membatalkan batch dan membiarkan skema database tidak berubah.

Perintah transaksi

Spanner CLI mendukung perintah SQL transaksi berikut:

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

Mulai transaksi. Anda dapat mengonfigurasi opsi berikut:

  • Jenis transaksi: Mulai transaksi baca-tulis (tidak memerlukan parameter) atau hanya baca (RO).
  • Waktu pembacaan basi: Tetapkan waktu, dalam detik atau berformat RFC 3339, untuk membaca data dari stempel waktu tertentu.
  • Tingkat isolasi: Tetapkan tingkat isolasi untuk transaksi baca-tulis. Secara default, isolasi serialisabel digunakan. Untuk mengetahui informasi selengkapnya, lihat Ringkasan tingkat isolasi.
  • Prioritas: Tetapkan prioritas permintaan untuk transaksi. Prioritas sedang ditetapkan secara default.
  • Tag: Tetapkan tag transaksi menggunakan perintah BEGIN.

    • Dalam transaksi baca-tulis, tambahkan tag dengan BEGIN TAG tag. Spanner CLI menambahkan tag sebagai tag transaksi. Tag ini juga digunakan sebagai tag permintaan dalam transaksi.
    • Dalam transaksi hanya baca, tambahkan tag dengan BEGIN RO TAG tag. Karena transaksi hanya baca tidak mendukung tag transaksi, Spanner menambahkan tag sebagai tag permintaan.

COMMIT;

Memfinalisasi dan membuat semua perubahan dalam transaksi baca-tulis menjadi permanen.

CLOSE;

Menutup transaksi hanya baca.

ROLLBACK;

Melakukan rollback (membatalkan) transaksi baca-tulis.

Langkah berikutnya