Amazon RDS for MySQL

Mengenkripsi traffic jaringan

Praktik terbaiknya adalah mengenkripsi traffic jaringan antara aplikasi Looker dan database Anda. Pertimbangkan salah satu opsi yang dijelaskan di halaman dokumentasi Mengaktifkan akses database yang aman.

Jika Anda tertarik menggunakan enkripsi SSL, lihat dokumentasi MySQL RDS.

Opsi

Untuk alasan performa, penggunaan basis data replika baca-saja—juga disebut replika baca—umumnya dilakukan dengan Looker. Hal ini membebaskan basis data produksi untuk menjalankan fungsi utamanya tanpa adanya kueri yang berpotensi memperlambatnya.

Dokumen ini menjelaskan cara untuk:

  • Memodifikasi basis data replika yang sudah ada agar dapat bekerja dengan Looker.
  • Buat basis data replika baca baru dan konfigurasikan agar berfungsi dengan Looker.

Memodifikasi replika yang sudah ada

Pengguna dan keamanan

Ubah <some_password_here> menjadi kata sandi unik dan aman:

CREATE USER looker;
SET PASSWORD FOR looker = PASSWORD ('<some_password_here>');
GRANT SELECT ON database_name.* TO 'looker'@'%';

RDS dan tabel sementara

Secara default, replika baca RDS memiliki flag baca-saja yang diaktifkan, yang mencegah Looker menulis ke tabel sementara. Looker sebenarnya tidak pernah mengubah data yang sudah ada, tetapi MySQL tetap memerlukan akses tulis untuk menggunakan tabel sementara. Hal ini dapat diatasi dengan mengubah flag di RDS. Dari RDS FAQ:

T: Dapatkah replika baca saya hanya menerima operasi baca basis data?

Replika baca dirancang untuk melayani lalu lintas baca. Namun, mungkin ada kasus penggunaan di mana pengguna tingkat lanjut ingin menyelesaikan pernyataan SQL Data Definition Language (DDL) terhadap replika baca. Contohnya mungkin termasuk menambahkan indeks basis data ke replika baca yang digunakan untuk pelaporan bisnis tanpa menambahkan indeks yang sama ke instance basis data sumber yang sesuai.

Amazon RDS untuk MySQL dapat dikonfigurasi untuk mengizinkan pernyataan SQL DDL terhadap replika baca. Jika Anda ingin mengaktifkan operasi selain pembacaan untuk replika baca tertentu, ubah Grup Parameter DB yang aktif untuk replika baca dengan mengatur parameter read_only menjadi 0.

Amazon RDS for PostgreSQL saat ini tidak mendukung eksekusi pernyataan SQL DDL terhadap replika baca.

Jika Anda mengubah Grup Parameter DB, Anda perlu memulai ulang replika baca agar perubahan tersebut berlaku.

Buat basis data dan berikan izin akses.

Buat basis data sementara dan berikan hak akses kepada pengguna looker untuk menulis ke basis data tersebut. Pernyataan CREATE TEMPORARY di MySQL perlu dikaitkan dengan basis data untuk keperluan perizinan.

CREATE SCHEMA looker_tmp;
GRANT
  SELECT,
  INDEX,
  INSERT,
  UPDATE,
  DELETE,
  CREATE,
  DROP,
  ALTER,
  CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';

Membuat replika baru

Perlu dicatat bahwa AWS RDS hanya dapat membuat replika baca dengan instance basis data yang mengaktifkan Retensi Cadangan.

Langkah-langkah pra-AWS

Langkah 1

mysql ke dalam basis data yang akan menjadi instance basis data utama:

mysql -h hostname.uid.region.rds.amazonaws.com -P 3306 -u root -p

Langkah 2

Buat pengguna bernama looker (ganti <some_password_here> dengan kata sandi unik dan aman):

CREATE USER looker IDENTIFIED BY '<some_password_here>';

Langkah 3

Buat basis data sementara dan berikan hak akses baca kepada Looker untuk basis data dan tabel lainnya. Looker umumnya tidak menulis ke basis data looker_tmp tetapi menggunakannya untuk mengeksekusi perintah CREATE TEMPORARY TABLE.

CREATE SCHEMA looker_tmp;
GRANT
  SELECT,
  INDEX,
  INSERT,
  UPDATE,
  DELETE,
  CREATE,
  DROP,
  ALTER,
  CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';

GRANT
  SELECT,
  SHOW DATABASES
ON *.* TO 'looker'@'%';

Langkah 4

Hapus hak akses:

FLUSH PRIVILEGES;

Langkah-langkah AWS

Langkah 1

Masuk dan buka dasbor AWS. Di bagian Database, pilih RDS.

Langkah 2

Pada dasbor RDS Anda, pilih instance basis data yang ingin Anda tetapkan sebagai basis data utama. Pilih Tindakan Instans, lalu pilih Buat Replika Baca.

Langkah 3

Pada jendela pop-up Buat Instance DB Replika Baca, konfigurasikan basis data replika baca dan pilih Ya, Buat Replika Baca.

Langkah 4

Sambil menunggu basis data replika baca dibuat, Anda dapat mengatur Grup Parameter DB, yang akan berisi nilai konfigurasi mesin yang diterapkan ke instance basis data replika baca. Pilih halaman Grup Parameter DB di sidebar, lalu pilih tombol Buat Grup Parameter DB.

Langkah 5

Pilih Keluarga Grup Parameter DB dan Nama Grup Parameter DB, lalu masukkan Deskripsi Grup Parameter DB. Kemudian pilih Ya, Buat.

Langkah 6

Pilih ikon kaca pembesar pada baris yang berisi grup parameter basis data replika baca, atau pilih baris tersebut dan pilih Edit Parameter.

Langkah 7

Di kolom Filters di bawah Parameters, cari "read_only". Ubah nilai parameter menjadi 0. Kemudian pilih Simpan Perubahan.

Langkah 8

Setelah pembuatan replika baca selesai, pilih replika tersebut dari daftar instance database, pilih tombol Instance Action, lalu pilih Modify di tindakan instance.

Langkah 9

Di pop-up Modify DB Instance, ubah Parameter Group instance DB ke grup parameter replika baca baru. Kemudian, centang kotak Apply Immediately, pilih Continue, lalu pilih Modify DB Instance.

Langkah 10

Dengan menggunakan klien MySQL, hubungkan ke instance database replika baca sebagai looker dan uji untuk melihat apakah data dapat diakses.

Membuat koneksi Looker ke database Anda

Di bagian Admin Looker, pilih Connections, lalu klik Add Connection.

Isi detail koneksi. Sebagian besar setelan umum untuk sebagian besar dialek database. Lihat halaman dokumentasi Menghubungkan Looker ke database Anda untuk mengetahui informasi selengkapnya.

Untuk memverifikasi bahwa koneksi berhasil, klik tombol Uji Koneksi di bagian Detail status di bagian bawah halaman Setelan Koneksi.

Jika Looker menampilkan Dapat Terhubung, tekan Hubungkan untuk membuat koneksi.

Koneksi database Anda kemudian ditambahkan ke daftar di halaman Connections Admin Looker.

Parameter JDBC yang didukung

Untuk Amazon RDS for MySQL, Looker mendukung parameter JDBC berikut di kolom Parameter JDBC tambahan untuk koneksi. Lihat dokumentasi untuk database Anda guna mengetahui informasi tentang parameter ini.

  • allowMultiQueries
  • autocommit
  • characterSetResults
  • clientCertificateKeyStorePassword
  • clientCertificateKeyStoreUrl
  • connectionAttributes
  • connectionCollation
  • connectionTimeZone
  • connectTimeout
  • defaultAuthenticationPlugin
  • disableSslHostnameVerification
  • disconnectOnExpiredPasswords
  • enabledSslCipherSuites
  • failOverReadOnly
  • fallbackToSystemTrustStore
  • forceConnectionTimeZoneToSession
  • interactiveClient
  • lookerFailover
  • maxIdleTime
  • maxQuerySizeToLog
  • oldModeNoPrecisionTimestamp
  • password
  • passwordCharacterEncoding
  • permitMysqlScheme
  • pinGlobalTxToPhysicalConnection
  • preserveInstants
  • queryInterceptors
  • restrictedAuth
  • rewriteBatchedStatements
  • socketTimeout
  • sslMode
  • tcpKeepAlive
  • trustCertificateKeyStorePassword
  • trustCertificateKeyStoreUrl
  • useCompression
  • usePipelineAuth
  • user
  • useServerPrepStmts
  • verifyServerCertificate
  • yearIsDateType

Dukungan fitur

Agar Looker mendukung beberapa fitur, dialek database Anda juga harus mendukungnya.

MySQL mendukung fitur berikut mulai Looker 26.16:

Fitur Didukung?
Looker (Google Cloud core)
Agregat simetris
Tabel turunan
Tabel turunan SQL persisten
Tabel turunan native persisten
Tampilan stabil
Penghentian kueri
Pivot berbasis SQL
Zona waktu
SSL
Subtotal
Parameter tambahan JDBC
Peka huruf besar/kecil
Jenis lokasi
Jenis daftar
Persentil
Persentil berbeda
SQL Runner Show Processes
SQL Runner Describe Table
SQL Runner Show Indexes
SQL Runner Select 10
Jumlah SQL Runner
Penjelasan SQL
Kredensial OAuth 2.0
Komentar konteks
Penggabungan koneksi
Sketsa HLL
Aggregate awareness
PDT inkremental
Milidetik
Mikrodetik
Tampilan terwujud
Pengukuran dari periode ke periode
Jumlah perkiraan berbeda
Model analitik dalam database
Kalender kustom