Menyimpan data dari klaster DB Amazon Aurora MySQL ke dalam file teks di bucket Amazon S3 - Amazon Aurora

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menyimpan data dari klaster DB Amazon Aurora MySQL ke dalam file teks di bucket Amazon S3

Anda dapat menggunakan pernyataan SELECT INTO OUTFILE S3 untuk mengkueri data dari klaster DB Amazon Aurora MySQL dan menyimpannya langsung ke dalam file teks yang tersimpan di bucket Amazon S3. Anda dapat menggunakan fungsionalitas ini agar tidak perlu membawa data ke klien terlebih dahulu, lalu menyalinnya dari klien ke Amazon S3. Pernyataan LOAD DATA FROM S3 dapat menggunakan file yang dibuat oleh pernyataan ini untuk memuat data ke klaster DB Aurora. Untuk informasi selengkapnya, lihat Memuat data ke klaster DB Amazon Aurora MySQL dari file teks di bucket Amazon S3.

Anda dapat mengenkripsi bucket Amazon S3 menggunakan kunci yang dikelola Amazon S3 (SSE-S3) atau Kunci yang dikelola AWS (SSE-SMS: AWS KMS key atau kunci yang dikelola pelanggan).

Fitur ini tidak didukung untuk klaster DB Aurora Serverless v1. Hal ini didukung untuk klaster DB Aurora Serverless v2.

catatan

Anda dapat menyimpan data snapshot klaster DB ke Amazon S3 menggunakan AWS Management Console, AWS CLI, atau API Amazon RDS. Untuk informasi selengkapnya, lihat Mengekspor data snapshot klaster DB ke Amazon S3.

Memberi Aurora MySQL akses ke Amazon S3

Sebelum Anda dapat menyimpan data ke bucket Amazon S3, Anda harus terlebih dahulu memberi klaster DB Aurora MySQL Anda izin untuk mengakses Amazon S3.

Untuk memberi Aurora MySQL akses ke Amazon S3
  1. Buat kebijakan AWS Identity and Access Management (IAM) yang memberikan izin bucket dan objek yang memungkinkan klaster DB Aurora MySQL Anda mengakses Amazon S3. Untuk petunjuk, lihat Membuat kebijakan IAM untuk mengakses sumber daya Amazon S3.

    catatan

    Di Aurora MySQL versi 3.05 dan lebih tinggi, Anda dapat mengenkripsi objek menggunakan kunci yang dikelola pelanggan AWS KMS. Untuk melakukannya, sertakan izin kms:GenerateDataKey dalam kebijakan IAM Anda. Untuk informasi selengkapnya, lihat Membuat kebijakan IAM untuk mengakses sumber daya AWS KMS.

    Anda tidak memerlukan izin ini untuk mengenkripsi objek menggunakan Kunci yang dikelola AWS atau kunci terkelola Amazon S3 (SSE-S3).

  2. Buat peran IAM, lalu lampirkan kebijakan IAM yang Anda buat di Membuat kebijakan IAM untuk mengakses sumber daya Amazon S3 ke peran IAM baru. Untuk petunjuk, lihat Membuat peran IAM untuk mengizinkan Amazon Aurora mengakses layanan AWS.

  3. Untuk Aurora MySQL versi 2, atur parameter klaster DB aurora_select_into_s3_role atau aws_default_s3_role ke Amazon Resource Name (ARN) milik peran IAM yang baru. Jika peran IAM tidak ditentukan untuk aurora_select_into_s3_role, Aurora menggunakan peran IAM yang ditentukan dalam aws_default_s3_role.

    Untuk Aurora MySQL versi 3, gunakan aws_default_s3_role.

    Jika klaster adalah bagian dari basis data global Aurora, atur parameter ini untuk setiap klaster Aurora dalam basis data global.

    Untuk informasi selengkapnya tentang parameter klaster DB, lihat Parameter instans DB dan klaster DB Amazon Aurora.

  4. Untuk mengizinkan pengguna basis data dalam klaster DB Aurora MySQL untuk mengakses Amazon S3, kaitkan peran yang Anda buat di Membuat peran IAM untuk mengizinkan Amazon Aurora mengakses layanan AWS dengan klaster DB.

    Untuk basis data global Aurora, kaitkan peran dengan setiap klaster Aurora di basis data global.

    Untuk informasi tentang mengaitkan peran IAM dengan klaster DB, lihat Mengaitkan peran IAM dengan klaster DB Amazon Aurora MySQL.

  5. Konfigurasikan klaster DB Aurora MySQL Anda untuk memungkinkan koneksi keluar ke Amazon S3. Untuk petunjuk, lihat Mengaktifkan komunikasi jaringan dari Amazon Aurora MySQL ke layanan AWS lainnya.

    Untuk basis data global Aurora, aktifkan koneksi keluar untuk setiap klaster Aurora di basis data global.

Memberikan hak akses untuk menyimpan data di Aurora MySQL

Pengguna basis data yang mengeluarkan pernyataan SELECT INTO OUTFILE S3 harus memiliki peran atau hak akses tertentu. Di Aurora MySQL versi 3, Anda memberikan peran AWS_SELECT_S3_ACCESS. Di Aurora MySQL versi 2, Anda memberikan hak akses SELECT INTO S3. Pengguna administratif untuk klaster DB akan diberi peran atau hak akses yang sesuai secara default. Anda dapat memberikan hak akses kepada pengguna lain dengan menggunakan salah satu pernyataan berikut.

Gunakan pernyataan berikut untuk Aurora MySQL versi 3:

GRANT AWS_SELECT_S3_ACCESS TO 'user'@'domain-or-ip-address'
Tip

Saat Anda menggunakan teknik peran di Aurora MySQL versi 3, Anda juga dapat mengaktifkan peran dengan menggunakan pernyataan SET ROLE role_name atau SET ROLE ALL. Jika Anda tidak memahami sistem peran MySQL 8.0, Anda dapat mempelajari selengkapnya dalam Model hak akses berbasis peran. Untuk detail selengkapnya, lihat Using roles dalam Panduan Referensi MySQL.

Hal ini hanya berlaku untuk sesi aktif saat ini. Ketika Anda terhubung kembali, Anda harus menjalankan pernyataan SET ROLE lagi untuk memberikan hak akses. Untuk informasi selengkapnya, lihat SET ROLE statement dalam Panduan Referensi MySQL.

Anda dapat menggunakan parameter klaster DB activate_all_roles_on_login untuk mengaktifkan semua peran secara otomatis saat pengguna terhubung ke instans DB. Ketika parameter ini ditetapkan, Anda tidak perlu memanggil pernyataan SET ROLE secara eksplisit untuk mengaktifkan peran. Untuk informasi selengkapnya, lihat activate_all_roles_on_login dalam Panduan Referensi MySQL.

Gunakan pernyataan berikut untuk Aurora MySQL versi 2:

GRANT SELECT INTO S3 ON *.* TO 'user'@'domain-or-ip-address'

Peran AWS_SELECT_S3_ACCESS dan hak akses SELECT INTO S3 dikhususkan untuk Amazon Aurora MySQL dan tidak tersedia untuk basis data MySQL atau instans DB RDS for MySQL. Jika Anda telah mengatur replikasi antara klaster DB Aurora MySQL sebagai master replikasi dan basis data MySQL sebagai klien replikasi, maka pernyataan GRANT untuk peran atau hak akses menyebabkan replikasi berhenti dengan kesalahan. Anda dapat melewati kesalahan ini dengan aman untuk melanjutkan replikasi. Untuk melewati kesalahan pada instans DB RDS for MySQL, gunakan prosedur mysql_rds_skip_repl_error. Untuk melewati kesalahan pada basis data MySQL eksternal, gunakan variabel sistem slave_skip_errors (Aurora MySQL versi 2) atau variabel sistem replica_skip_errors (Aurora MySQL versi 3).

Menentukan jalur ke bucket Amazon S3

Sintaksis untuk menentukan jalur untuk menyimpan data dan file manifes di bucket Amazon S3 serupa dengan yang digunakan dalam pernyataan LOAD DATA FROM S3 PREFIX, seperti yang ditunjukkan berikut ini.

s3-region://bucket-name/file-prefix

Jalur tersebut mencakup nilai-nilai berikut:

  • region (opsional) – Wilayah AWS yang berisi bucket Amazon S3 untuk menyimpan data. Nilai ini bersifat opsional. Jika Anda tidak menentukan nilai region, Aurora akan menyimpan file Anda ke Amazon S3 di wilayah yang sama dengan klaster DB Anda.

  • bucket-name – Nama bucket Amazon S3 untuk menyimpan data. Awalan objek yang mengidentifikasi jalur folder virtual didukung.

  • file-prefix – Awalan objek Amazon S3 yang mengidentifikasi file yang akan disimpan di Amazon S3.

File data yang dibuat oleh pernyataan SELECT INTO OUTFILE S3 akan menggunakan jalur berikut, dengan 00000 merepresentasikan bilangan bulat 5 digit berbasis nol.

s3-region://bucket-name/file-prefix.part_00000

Misalnya, pernyataan SELECT INTO OUTFILE S3 menetapkan s3-us-west-2://bucket/prefix sebagai jalur untuk menyimpan file data dan membuat tiga file data. Bucket Amazon S3 yang ditentukan berisi file data berikut.

  • s3-us-west-2://bucket/prefix.part_00000

  • s3-us-west-2://bucket/prefix.part_00001

  • s3-us-west-2://bucket/prefix.part_00002

Membuat manifes untuk menampilkan daftar file data

Anda dapat menggunakan pernyataan SELECT INTO OUTFILE S3 dengan opsi MANIFEST ON untuk membuat file manifes dalam format JSON yang menampilkan daftar file teks yang dibuat oleh pernyataan tersebut. Pernyataan LOAD DATA FROM S3 dapat menggunakan file manifes untuk memuat file data kembali ke klaster DB Aurora MySQL. Untuk informasi selengkapnya tentang menggunakan manifes untuk memuat file data dari Amazon S3 ke dalam klaster DB Aurora MySQL, lihat Menggunakan manifes untuk menentukan file data yang akan dimuat.

File data yang disertakan dalam manifes yang dibuat oleh pernyataan SELECT INTO OUTFILE S3 akan dicantumkan dalam urutan pembuatannya oleh pernyataan tersebut. Misalnya, pernyataan SELECT INTO OUTFILE S3 menetapkan s3-us-west-2://bucket/prefix sebagai jalur untuk menyimpan file data serta membuat tiga file data dan sebuah file manifes. Bucket Amazon S3 yang ditentukan berisi file manifes bernama s3-us-west-2://bucket/prefix.manifest, yang berisi informasi berikut.

{ "entries": [ { "url":"s3-us-west-2://bucket/prefix.part_00000" }, { "url":"s3-us-west-2://bucket/prefix.part_00001" }, { "url":"s3-us-west-2://bucket/prefix.part_00002" } ] }

SELECT INTO OUTFILE S3

Anda dapat menggunakan pernyataan SELECT INTO OUTFILE S3 untuk meminta data dari klaster DB dan menyimpannya secara langsung ke dalam file teks yang dibatasi yang tersimpan di bucket Amazon S3.

File terkompresi tidak didukung. File terenkripsi didukung mulai dari Aurora MySQL versi 2.09.0.

Sintaksis

SELECT [ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] select_expr [, select_expr ...] [FROM table_references [PARTITION partition_list] [WHERE where_condition] [GROUP BY {col_name | expr | position} [ASC | DESC], ... [WITH ROLLUP]] [HAVING where_condition] [ORDER BY {col_name | expr | position} [ASC | DESC], ...] [LIMIT {[offset,] row_count | row_count OFFSET offset}] INTO OUTFILE S3 's3_uri' [CHARACTER SET charset_name] [export_options] [MANIFEST {ON | OFF}] [OVERWRITE {ON | OFF}] [ENCRYPTION {ON | OFF | SSE_S3 | SSE_KMS ['cmk_id']}] export_options: [FORMAT {CSV|TEXT} [HEADER]] [{FIELDS | COLUMNS} [TERMINATED BY 'string'] [[OPTIONALLY] ENCLOSED BY 'char'] [ESCAPED BY 'char'] ] [LINES [STARTING BY 'string'] [TERMINATED BY 'string'] ]

Parameter

Pernyataan SELECT INTO OUTFILE S3 menggunakan parameter wajib dan opsional berikut yang khusus untuk Aurora.

s3-uri

Menentukan URI untuk awalan Amazon S3 yang akan digunakan. Gunakan sintaks yang dijelaskan dalam Menentukan jalur ke bucket Amazon S3.

FORMAT {CSV|TEXT} [HEADER]

Secara opsional menyimpan data dalam format CSV.

Opsi TEXT adalah default dan menghasilkan format ekspor MySQL yang ada.

Opsi CSV menghasilkan nilai data yang dipisahkan koma. Format CSV mengikuti spesifikasi dalam RFC-4180. Jika Anda menentukan kata kunci opsional HEADER, file output akan berisi satu baris header. Label di baris header sesuai dengan nama kolom dari pernyataan SELECT. Anda dapat menggunakan file CSV untuk model data pelatihan untuk digunakan dengan layanan ML AWS. Untuk informasi selengkapnya tentang menggunakan data Aurora yang diekspor dengan layanan ML AWS, lihat Mengekspor data ke Amazon S3 SageMaker untuk pelatihan model (Lanjutan).

MANIFEST {ON | OFF}

Menunjukkan apakah file manifes dibuat di Amazon S3. File manifes adalah file JavaScript Object Notation (JSON) yang dapat digunakan untuk memuat data ke klaster DB Aurora dengan pernyataan LOAD DATA FROM S3 MANIFEST. Untuk informasi selengkapnya tentang LOAD DATA FROM S3 MANIFEST, lihat Memuat data ke klaster DB Amazon Aurora MySQL dari file teks di bucket Amazon S3.

Jika MANIFEST ON ditentukan dalam kueri, file manifes dibuat di Amazon S3 setelah semua file data dibuat dan diunggah. file manifes dibuat menggunakan jalur berikut:

s3-region://bucket-name/file-prefix.manifest

Untuk informasi selengkapnya tentang format konten file manifes, lihat Membuat manifes untuk menampilkan daftar file data.

OVERWRITE {ON | OFF}

Menunjukkan apakah file yang ada di bucket Amazon S3 yang ditentukan akan ditimpa. Jika OVERWRITE ON ditentukan, file yang ada yang cocok dengan awalan file di URI yang ditentukan di s3-uri akan ditimpa. Jika tidak, kesalahan akan muncul.

ENCRYPTION {ON | OFF | SSE_S3 | SSE_KMS ['cmk_id']}

Menunjukkan apakah akan menggunakan enkripsi di sisi server dengan kunci yang dikelola Amazon S3 (SSE-S3) atau AWS KMS keys (SSE-KMS, termasuk Kunci yang dikelola AWS dan kunci yang dikelola pelanggan). Pengaturan SSE_KMS dan SSE_S3 tersedia di Aurora MySQL versi 3.05 dan lebih tinggi.

Anda juga dapat menggunakan variabel sesi aurora_select_into_s3_encryption_default bukan klausa ENCRYPTION, seperti yang ditunjukkan pada contoh berikut. Gunakan salah satu klausa SQL atau variabel sesi, tetapi tidak keduanya.

set session set session aurora_select_into_s3_encryption_default={ON | OFF | SSE_S3 | SSE_KMS};

Pengaturan SSE_KMS dan SSE_S3 tersedia di Aurora MySQL versi 3.05 dan lebih tinggi.

Jika Anda mengatur aurora_select_into_s3_encryption_default ke nilai berikut:

  • OFF – Kebijakan enkripsi default bucket S3 akan diikuti. Nilai default aurora_select_into_s3_encryption_default adalah OFF.

  • ON atau SSE_S3 – Objek S3 dienkripsi menggunakan kunci terkelola Amazon S3 (SSE-S3).

  • SSE_KMS – Objek S3 dienkripsi menggunakan AWS KMS key.

    Dalam hal ini, Anda juga menyertakan variabel sesi aurora_s3_default_cmk_id, misalnya:

    set session aurora_select_into_s3_encryption_default={SSE_KMS}; set session aurora_s3_default_cmk_id={NULL | 'cmk_id'};
    • Saat aurora_s3_default_cmk_id bernilai NULL, objek S3 dienkripsi menggunakan Kunci yang dikelola AWS.

    • Jika aurora_s3_default_cmk_id berupa string cmk_id yang tidak kosong, objek S3 dienkripsi menggunakan kunci yang dikelola pelanggan.

      Nilai cmk_id tidak boleh berupa string kosong.

Saat Anda menggunakan perintah SELECT INTO OUTFILE S3, Aurora menentukan enkripsi sebagai berikut:

  • Jika klausa ENCRYPTION ada dalam perintah SQL, Aurora hanya mengandalkan nilai ENCRYPTION, dan tidak menggunakan variabel sesi.

  • Jika klausa ENCRYPTION tidak ada, Aurora mengandalkan nilai variabel sesi.

Untuk informasi selengkapnya, lihat Menggunakan enkripsi di sisi server dengan kunci terkelola Amazon S3 (SSE-S3) dan Menggunakan enkripsi di sisi server dengan kunci AWS KMS (SSE-KMS) dalam Panduan Pengguna Amazon Simple Storage Service.

Anda dapat menemukan detail selengkapnya tentang parameter lain dalam SELECT statement dan LOAD DATA statement dalam dokumentasi MySQL.

Pertimbangan

Jumlah file yang ditulis ke bucket Amazon S3 bergantung pada jumlah data yang dipilih oleh pernyataan SELECT INTO OUTFILE S3 dan ambang batas ukuran file untuk Aurora MySQL. Ambang batas ukuran file default adalah 6 gigabyte (GB). Jika data yang dipilih oleh pernyataan kurang dari ambang batas ukuran file, satu file akan dibuat; jika tidak, banyak file akan dibuat. Pertimbangan lain untuk file yang dibuat oleh pernyataan ini mencakup hal-hal berikut:

  • Aurora MySQL menjamin bahwa baris dalam file data tidak dipisahkan melintasi batas file. Untuk banyak file, ukuran setiap file data kecuali yang terakhir biasanya hampir sama dengan ambang batas ukuran file. Namun, terkadang jika ambang batas ukuran file tidak tercapai, akibatnya baris akan terbagi menjadi dua file data. Dalam kasus ini, Aurora MySQL membuat file data yang menjaga baris tetap utuh, tetapi mungkin lebih besar dari ambang ukuran file.

  • Karena setiap pernyataan SELECT di Aurora MySQL dijalankan sebagai transaksi atomik, pernyataan SELECT INTO OUTFILE S3 yang memilih set data besar mungkin akan berjalan selama beberapa waktu. Jika pernyataan gagal karena alasan apa pun, Anda mungkin perlu memulai kembali dan mengeluarkan pernyataan tersebut lagi. Namun, jika pernyataan gagal, file yang sudah diunggah ke Amazon S3 tetap berada di bucket Amazon S3 yang ditentukan. Anda dapat menggunakan pernyataan lain untuk mengunggah data yang tersisa daripada memulai dari awal lagi.

  • Jika jumlah data yang akan dipilih berukuran besar (lebih dari 25 GB), kami menyarankan Anda menggunakan beberapa pernyataan SELECT INTO OUTFILE S3 untuk menyimpan data ke Amazon S3. Setiap pernyataan harus memilih bagian data yang berbeda untuk disimpan, dan juga menentukan file_prefix yang berbeda dalam parameter s3-uri untuk digunakan saat menyimpan file data. Dengan mempartisi data yang akan dipilih menggunakan beberapa pernyataan, kesalahan di satu pernyataan akan lebih mudah untuk dipulihkan. Jika terjadi kesalahan untuk satu pernyataan, hanya sebagian data yang perlu dipilih kembali dan diunggah ke Amazon S3. Penggunaan banyak pernyataan juga membantu menghindari satu transaksi yang berjalan lama, yang dapat meningkatkan performa.

  • Jika beberapa pernyataan SELECT INTO OUTFILE S3 yang menggunakan file_prefix yang sama di parameter s3-uri dijalankan secara paralel untuk memilih data yang diunggah ke dalam Amazon S3, perilakunya tidak akan ditentukan.

  • Metadata, seperti skema tabel atau metadata file, tidak diunggah oleh Aurora MySQL ke Amazon S3.

  • Dalam beberapa kasus, Anda mungkin perlu menjalankan kembali kueri SELECT INTO OUTFILE S3, seperti untuk memulihkan dari kegagalan. Dalam kasus ini, Anda harus menghapus file data apa pun yang ada di bucket Amazon S3 dengan awalan file yang sama yang ditentukan di s3-uri, atau menyertakan OVERWRITE ON di kueri SELECT INTO OUTFILE S3.

Pernyataan SELECT INTO OUTFILE S3 menampilkan nomor kesalahan MySQL yang biasa beserta respons berhasil atau gagal. Jika Anda tidak memiliki akses ke nomor dan respons kesalahan MySQL, cara termudah untuk menentukan apakah pernyataan tersebut telah selesai adalah dengan menentukan MANIFEST ON dalam pernyataan tersebut. File manifes adalah file terakhir yang ditulis oleh pernyataan tersebut. Dengan kata lain, jika Anda memiliki file manifes, berarti pernyataan tersebut telah selesai.

Saat ini, tidak ada cara untuk memantau secara langsung progres pernyataan SELECT INTO OUTFILE S3 saat dijalankan. Namun, misalkan Anda menulis data dalam jumlah besar dari Aurora MySQL ke Amazon S3 menggunakan pernyataan ini, dan Anda mengetahui ukuran data yang dipilih oleh pernyataan tersebut. Dalam kasus ini, Anda dapat memperkirakan progresnya dengan memantau pembuatan file data di Amazon S3.

Untuk melakukannya, Anda dapat menggunakan fakta bahwa sebuah file data akan dibuat di bucket Amazon S3 yang ditentukan untuk setiap 6 GB data yang dipilih oleh pernyataan tersebut. Bagilah ukuran data yang dipilih dengan 6 GB untuk mendapatkan perkiraan jumlah file data yang akan dibuat. Anda kemudian dapat memperkirakan progres pernyataan dengan memantau jumlah file yang diunggah ke Amazon S3 saat pernyataan berjalan.

Contoh

Pernyataan berikut memilih semua data di tabel employees dan menyimpan data ke dalam bucket Amazon S3 yang berada di wilayah yang berbeda dari klaster DB Aurora MySQL. Pernyataan tersebut membuat file data yang setiap bidangnya diterminasi dengan karakter koma (,) dan setiap barisnya diterminasi dengan karakter baris baru (\n). Pernyataan tersebut menampilkan kesalahan jika file yang cocok dengan awalan file sample_employee_data ada di bucket Amazon S3 yang ditentukan.

SELECT * FROM employees INTO OUTFILE S3 's3-us-west-2://aurora-select-into-s3-pdx/sample_employee_data' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';

Pernyataan berikut memilih semua data di tabel employees dan menyimpan data ke dalam bucket Amazon S3 yang berada di wilayah yang sama dengan klaster DB Aurora MySQL. Pernyataan tersebut membuat file data yang setiap bidangnya diterminasi dengan karakter koma (,) dan setiap barisnya diterminasi dengan karakter baris baru (\n), serta membuat juga sebuah file manifes. Pernyataan tersebut menampilkan kesalahan jika file yang cocok dengan awalan file sample_employee_data ada di bucket Amazon S3 yang ditentukan.

SELECT * FROM employees INTO OUTFILE S3 's3://aurora-select-into-s3-pdx/sample_employee_data' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' MANIFEST ON;

Pernyataan berikut memilih semua data di tabel employees dan menyimpan data ke dalam bucket Amazon S3 yang berada di wilayah yang berbeda dari klaster DB Aurora. Pernyataan tersebut membuat file data yang setiap bidangnya diterminasi dengan karakter koma (,) dan setiap barisnya diterminasi dengan karakter baris baru (\n). Pernyataan tersebut menimpa file apa pun yang ada yang cocok dengan awalan file sample_employee_data di bucket Amazon S3 yang ditentukan.

SELECT * FROM employees INTO OUTFILE S3 's3-us-west-2://aurora-select-into-s3-pdx/sample_employee_data' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' OVERWRITE ON;

Pernyataan berikut memilih semua data di tabel employees dan menyimpan data ke dalam bucket Amazon S3 yang berada di wilayah yang sama dengan klaster DB Aurora MySQL. Pernyataan tersebut membuat file data yang setiap bidangnya diterminasi dengan karakter koma (,) dan setiap barisnya diterminasi dengan karakter baris baru (\n), serta membuat juga sebuah file manifes. Pernyataan tersebut menimpa file apa pun yang ada yang cocok dengan awalan file sample_employee_data di bucket Amazon S3 yang ditentukan.

SELECT * FROM employees INTO OUTFILE S3 's3://aurora-select-into-s3-pdx/sample_employee_data' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' MANIFEST ON OVERWRITE ON;