Membandingkan Aurora My SQL version 3 dan My SQL 8.0 Community Edition - Amazon Aurora

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

Membandingkan Aurora My SQL version 3 dan My SQL 8.0 Community Edition

Anda dapat menggunakan informasi berikut untuk mempelajari tentang perubahan yang harus diperhatikan ketika Anda mengonversi dari sistem yang SQL kompatibel dengan My 8.0 ke Aurora My versi 3. SQL

Secara umum, Aurora My SQL versi 3 mendukung kumpulan fitur komunitas My SQL 8.0.23. Beberapa fitur baru dari edisi komunitas My SQL 8.0 tidak berlaku untuk SQL Aurora My. Beberapa fitur tersebut tidak kompatibel dengan beberapa aspek Aurora, seperti arsitektur penyimpanan Aurora. Fitur lain tidak diperlukan karena layanan RDS manajemen Amazon menyediakan fungsionalitas yang setara. Fitur berikut di komunitas My SQL 8.0 tidak didukung atau bekerja secara berbeda di Aurora SQL My versi 3.

Untuk catatan rilis untuk semua rilis Aurora My SQL version 3, lihat Pembaruan mesin database untuk Amazon Aurora SQL My version 3 di Catatan Rilis untuk Aurora My. SQL

Fitur SQL 8.0 saya tidak tersedia di Aurora SQL Versi saya 3

Fitur berikut dari komunitas My SQL 8.0 tidak tersedia atau bekerja secara berbeda di Aurora SQL My versi 3.

  • Grup sumber daya dan SQL pernyataan terkait tidak didukung di Aurora My. SQL

  • Aurora My SQL tidak mendukung ruang tabel undo yang ditentukan pengguna dan SQL pernyataan terkait, seperti,, dan. CREATE UNDO TABLESPACE ALTER UNDO TABLESPACE ... SET INACTIVE DROP UNDO TABLESPACE

  • Aurora My SQL tidak mendukung pembatalan pemotongan tablespace untuk Aurora Versi saya lebih rendah dari 3.06. SQL Di Aurora My SQL versi 3.06 dan yang lebih tinggi, pemotongan tablespace undo otomatis didukung.

  • Anda tidak dapat mengubah pengaturan SQL plugin Saya.

  • Plugin X tidak didukung.

  • Replikasi multisumber tidak didukung.

Model hak akses berbasis peran

Dengan Aurora My SQL versi 3, Anda tidak dapat memodifikasi tabel di mysql database secara langsung. Secara khusus, Anda tidak dapat mengatur pengguna dengan melakukan penyisipan ke dalam tabel mysql.user. Sebagai gantinya, Anda menggunakan SQL pernyataan untuk memberikan hak istimewa berbasis peran. Anda juga tidak dapat membuat jenis objek lain seperti prosedur tersimpan dalam basis data mysql. Anda masih dapat mengueri tabel mysql. Jika Anda menggunakan replikasi log biner, perubahan yang dilakukan langsung ke tabel mysql di klaster sumber tidak direplikasi ke klaster target.

Dalam beberapa kasus, aplikasi Anda mungkin menggunakan pintasan untuk membuat pengguna atau objek lain dengan melakukan penyisipan ke dalam tabel mysql. Jika demikian, ubah kode aplikasi Anda untuk menggunakan pernyataan yang sesuai seperti CREATE USER. Jika aplikasi Anda membuat prosedur tersimpan atau objek lain dalam basis data mysql, gunakan basis data yang berbeda sebagai gantinya.

Untuk mengekspor metadata bagi pengguna database selama migrasi dari SQL database Saya eksternal, Anda dapat menggunakan perintah My SQL Shell sebagai gantinya. mysqldump Untuk informasi selengkapnya, lihat Instance Dump Utility, Schema Dump Utility, dan Table Dump Utility.

Untuk menyederhanakan pengelolaan izin bagi banyak pengguna atau aplikasi, Anda dapat menggunakan pernyataan CREATE ROLE untuk membuat peran yang memiliki serangkaian izin. Kemudian, Anda dapat menggunakan pernyataan GRANT dan SET ROLE serta fungsi current_role untuk menetapkan peran ke pengguna atau aplikasi, mengganti peran saat ini, dan memeriksa peran mana yang berlaku. Untuk informasi selengkapnya tentang sistem izin berbasis peran di My SQL 8.0, lihat Menggunakan Peran di Manual Referensi SayaSQL.

penting

Kami sangat menyarankan agar Anda tidak menggunakan pengguna master secara langsung di aplikasi Anda. Sebagai gantinya, ikuti praktik terbaik menggunakan pengguna basis data yang dibuat dengan hak akses paling rendah yang diperlukan untuk aplikasi Anda.

rds_superuser_role

Aurora SQL Versi saya 3 mencakup peran khusus yang memiliki semua hak istimewa berikut. Peran ini bernama rds_superuser_role. Pengguna administratif primer untuk setiap klaster sudah diberi peran ini. Peran rds_superuser_role mencakup hak akses berikut untuk semua objek basis data:

  • ALTER

  • APPLICATION_PASSWORD_ADMIN

  • ALTER ROUTINE

  • CONNECTION_ADMIN

  • CREATE

  • CREATE ROLE

  • CREATE ROUTINE

  • CREATE TEMPORARY TABLES

  • CREATE USER

  • CREATE VIEW

  • DELETE

  • DROP

  • DROP ROLE

  • EVENT

  • EXECUTE

  • INDEX

  • INSERT

  • LOCK TABLES

  • PROCESS

  • REFERENCES

  • RELOAD

  • REPLICATION CLIENT

  • REPLICATION SLAVE

  • ROLE_ADMIN

  • SET_USER_ID

  • SELECT

  • SHOW DATABASES

  • SHOW_ROUTINE(Aurora SQL Versi saya 3.04 dan lebih tinggi)

  • SHOW VIEW

  • TRIGGER

  • UPDATE

  • XA_RECOVER_ADMIN

Definisi peran juga mencakup WITH GRANT OPTION sehingga pengguna administratif dapat memberikan peran tersebut kepada pengguna lain. Secara khusus, administrator harus memberikan hak istimewa yang diperlukan untuk melakukan replikasi log biner dengan SQL cluster Aurora My sebagai target.

Tip

Untuk melihat detail lengkap izin, masukkan pernyataan berikut.

SHOW GRANTS FOR rds_superuser_role@'%'; SHOW GRANTS FOR name_of_administrative_user_for_your_cluster@'%';

Hak istimewa memeriksa pengguna untuk replikasi log biner

Aurora SQL Versi saya 3 menyertakan hak istimewa memeriksa pengguna untuk replikasi log biner (binlog),. rdsrepladmin_priv_checks_user Selain hak istimewards_superuser_role, pengguna ini memiliki replication_applier hak istimewa.

Ketika Anda mengaktifkan replikasi binlog dengan memanggil prosedur mysql.rds_start_replication tersimpan, rdsrepladmin_priv_checks_user dibuat.

rdsrepladmin_priv_checks_user@localhostPengguna adalah pengguna yang dicadangkan. Jangan memodifikasinya.

Peran untuk mengakses layanan lain AWS

Aurora SQL Versi saya 3 mencakup peran yang dapat Anda gunakan untuk mengakses layanan lain AWS . Anda dapat menetapkan banyak peran ini sebagai alternatif untuk memberikan hak istimewa. Misalnya, Anda menentukan GRANT AWS_LAMBDA_ACCESS TO user, bukan GRANT INVOKE LAMBDA ON *.* TO user. Untuk prosedur untuk mengakses AWS layanan lain, lihatMengintegrasikan Amazon Aurora MySQL dengan layanan AWS lainnya. Aurora My SQL versi 3 mencakup peran berikut yang terkait dengan mengakses layanan lain: AWS

Saat Anda memberikan akses dengan menggunakan peran di Aurora My SQL versi 3, Anda juga mengaktifkan peran dengan menggunakan pernyataan SET ROLE role_name atauSET ROLE ALL. Contoh berikut menunjukkan caranya. Ganti nama peran yang sesuai untuk AWS_SELECT_S3_ACCESS.

# Grant role to user. mysql> GRANT AWS_SELECT_S3_ACCESS TO 'user'@'domain-or-ip-address' # Check the current roles for your user. In this case, the AWS_SELECT_S3_ACCESS role has not been activated. # Only the rds_superuser_role is currently in effect. mysql> SELECT CURRENT_ROLE(); +--------------------------+ | CURRENT_ROLE() | +--------------------------+ | `rds_superuser_role`@`%` | +--------------------------+ 1 row in set (0.00 sec) # Activate all roles associated with this user using SET ROLE. # You can activate specific roles or all roles. # In this case, the user only has 2 roles, so we specify ALL. mysql> SET ROLE ALL; Query OK, 0 rows affected (0.00 sec) # Verify role is now active mysql> SELECT CURRENT_ROLE(); +-----------------------------------------------------+ | CURRENT_ROLE() | +-----------------------------------------------------+ | `AWS_SELECT_S3_ACCESS`@`%`,`rds_superuser_role`@`%` | +-----------------------------------------------------+

Autentikasi

Di komunitas My SQL 8.0, plugin otentikasi default adalah. caching_sha2_password Aurora SQL Versi saya 3 masih menggunakan plugin. mysql_native_password Anda tidak dapat mengubah pengaturan default_authentication_plugin.