All Products
Search
Document Center

AnalyticDB:Gunakan perintah \copy untuk mengekspor data ke komputer Anda

Last Updated:Mar 29, 2026

Perintah \copy di psql memungkinkan Anda mengekspor data dari instans AnalyticDB for PostgreSQL langsung ke file di komputer lokal tanpa memerlukan hak istimewa SUPERUSER.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Instans AnalyticDB for PostgreSQL yang sedang berjalan

  • psql yang telah diinstal dan dikonfigurasi untuk terhubung ke instans Anda (lihat Client connection)

Data Management (DMS) tidak mendukung perintah \copy. Gunakan psql untuk menjalankan \copy.

Cara kerja

\copy adalah meta-perintah psql yang menjalankan perintah SQL COPY dasar, tetapi mengarahkan data melalui klien alih-alih server. Alih-alih server yang membaca atau menulis file yang ditentukan, psql-lah yang membaca atau menulis file tersebut dan mengarahkan data antara server dan sistem file lokal. Artinya, akses file dan izin dikendalikan oleh pengguna lokal, bukan oleh server database—sehingga tidak diperlukan izin SUPERUSER.

`\copy` vs `COPY`:

\copyCOPY
Tempat eksekusiclient psqlServer database
Akses fileSistem file lokal (FILE, STDIN, STDOUT)Hanya STDIN dan STDOUT
Memerlukan SUPERUSERTidakYa (untuk akses FILE)
AnalyticDB for PostgreSQL tidak mendukung izin SUPERUSER. Gunakan \copy untuk mengekspor data ke file lokal.

Sintaksis

\COPY {table [(column [, ...])] | (query)} TO {'file' | STDOUT}
    [ [WITH] [OIDS] [HEADER]
      [DELIMITER [ AS ] 'delimiter']
      [NULL [ AS ] 'null string']
      [ESCAPE [ AS ] 'escape' | 'OFF']
      [CSV [QUOTE [ AS ] 'quote']
           [FORCE QUOTE column [, ...]] ]
      [IGNORE EXTERNAL PARTITIONS ] ]

di mana opsi WITH adalah:

OpsiDeskripsi
OIDSMenyertakan OID untuk setiap baris
HEADERMenyertakan baris header berisi nama kolom (hanya untuk format CSV)
DELIMITER 'delimiter'Karakter pemisah kolom, misalnya ,
NULL 'null string'String yang merepresentasikan nilai null, misalnya \N
ESCAPE 'escape'Karakter escape untuk output CSV
CSVMenggunakan format CSV
QUOTE 'quote'Karakter quote untuk format CSV
FORCE QUOTE columnMemaksa quoting pada kolom tertentu dalam output CSV
IGNORE EXTERNAL PARTITIONSMelewati partisi eksternal selama ekspor

Untuk referensi sintaksis lengkap, lihat COPY dalam dokumentasi PostgreSQL.

AnalyticDB for PostgreSQL juga mendukung menjalankan pernyataan COPY melalui JDBC. Metode CopyIn dienkapsulasi dalam JDBC. Untuk detailnya, lihat Interface CopyIn.

Mengekspor data ke file lokal

Hubungkan ke instans Anda menggunakan psql, lalu jalankan \copy untuk mengekspor tabel atau hasil kueri ke file lokal.

Mengekspor seluruh tabel:

\COPY test1 TO '/path/to/localfile';

Mengekspor dengan format CSV dan delimiter kustom:

\COPY test1 TO '/path/to/localfile.csv' WITH CSV DELIMITER ',';

Mengekspor hasil kueri:

\COPY (SELECT id, name FROM test1 WHERE status = 'active') TO '/path/to/output.csv' WITH CSV HEADER;

Ganti placeholder berikut dengan nilai aktual Anda:

PlaceholderDeskripsiContoh
test1Nama tabel yang akan diekspororders
/path/to/localfilePath absolut ke file output di mesin lokal Anda/home/user/export.csv

Langkah berikutnya