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
Topik
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
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.
Topik
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@localhost
Pengguna 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
, bukan user
GRANT
INVOKE LAMBDA ON *.* TO
. 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 user
-
AWS_LAMBDA_ACCESS
Sebuah alternatif untuk hakINVOKE LAMBDA
istimewa. Untuk informasi penggunaan, lihat Memanggil fungsi Lambda dari cluster Amazon Aurora My DB SQL. -
AWS_LOAD_S3_ACCESS
Sebuah alternatif untuk hakLOAD FROM S3
istimewa. Untuk informasi penggunaan, lihat Memuat data ke dalam cluster Amazon Aurora My SQL DB dari file teks di bucket Amazon S3. -
AWS_SELECT_S3_ACCESS
Sebuah alternatif untuk hakSELECT INTO S3
istimewa. Untuk informasi penggunaan, lihat Menyimpan data dari cluster Amazon Aurora My SQL DB ke dalam file teks di bucket Amazon S3. -
AWS_COMPREHEND_ACCESS
Sebuah alternatif untuk hakINVOKE COMPREHEND
istimewa. Untuk informasi penggunaan, lihat Memberikan akses pengguna basis data ke machine learning Aurora. -
AWS_SAGEMAKER_ACCESS
Sebuah alternatif untuk hakINVOKE SAGEMAKER
istimewa. Untuk informasi penggunaan, lihat Memberikan akses pengguna basis data ke machine learning Aurora. -
AWS_BEDROCK_ACCESS
— Tidak adaINVOKE
hak istimewa analog untuk Amazon Bedrock. Untuk informasi penggunaan, lihat Memberikan akses pengguna basis data ke machine learning Aurora.
Saat Anda memberikan akses dengan menggunakan peran di Aurora My SQL versi 3, Anda juga mengaktifkan peran dengan menggunakan pernyataan SET ROLE
ataurole_name
SET 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 activemysql>
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
.