Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Confronto tra Aurora My SQL version 3 e My SQL 8.0 Community Edition
È possibile utilizzare le seguenti informazioni per conoscere le modifiche di cui tenere conto quando si esegue la conversione da un altro sistema SQL compatibile con My 8.0 ad Aurora My versione 3. SQL
In generale, Aurora My SQL versione 3 supporta il set di funzionalità della community My SQL 8.0.23. Alcune nuove funzionalità di My SQL 8.0 Community Edition non si applicano ad SQL Aurora My. Alcune di queste funzionalità non sono compatibili con alcuni aspetti di Aurora, come l'architettura di archiviazione Aurora. Non sono necessarie altre funzionalità perché il servizio di RDS gestione Amazon offre funzionalità equivalenti. Le seguenti funzionalità della community My SQL 8.0 non sono supportate o funzionano in modo diverso in Aurora SQL My versione 3.
Per le note di rilascio per tutte le versioni di Aurora My SQL versione 3, consulta Aggiornamenti del motore di database per Amazon Aurora SQL My versione 3 nelle Note di rilascio per Aurora My. SQL
Argomenti
Le funzionalità di My SQL 8.0 non sono disponibili in SQL Aurora My versione 3
Le seguenti funzionalità della community My SQL 8.0 non sono disponibili o funzionano in modo diverso in Aurora SQL My versione 3.
-
I gruppi di risorse e SQL le istruzioni associate non sono supportati in Aurora My. SQL
-
Aurora My SQL non supporta le tablespace di annullamento definite dall'utente e le SQL istruzioni associate, come, e.
CREATE UNDO TABLESPACE
ALTER UNDO TABLESPACE ... SET INACTIVE
DROP UNDO TABLESPACE
-
Aurora My SQL non supporta il troncamento undo tablespace per le versioni di Aurora My precedenti alla 3.06. SQL In Aurora My SQL versione 3.06 e successive, è supportato il troncamento automatico dei tablespace di annullamento
. -
Non puoi modificare le impostazioni di nessun plug-in My. SQL
-
Il plugin X non è supportato.
-
La replica da più origini non è supportata.
Privilegio basato sui ruoli
Con Aurora My SQL versione 3, non è possibile modificare direttamente le tabelle nel mysql
database. In particolare, non è possibile configurare gli utenti inserendoli nella tabella mysql.user
. Al contrario, si utilizzano SQL istruzioni per concedere privilegi basati sui ruoli. Inoltre, nel database mysql
, non è possibile creare altri tipi di oggetti come le stored procedure. È comunque possibile interrogare le tabelle di mysql
. Se si utilizza la replica del registro binario, le modifiche apportate direttamente alle tabelle di mysql
sul cluster fonte non vengono replicate nel cluster di destinazione.
In alcuni casi, l'applicazione potrebbe utilizzare scorciatoie per creare utenti o altri oggetti inserendoli nelle tabelle di mysql
. In tal caso, modifica il codice dell'applicazione per utilizzare le istruzioni corrispondenti come CREATE
USER
. Se l'applicazione crea stored procedure o altri oggetti nel database mysql
, utilizzare un database di tipo diverso.
Per esportare i metadati per gli utenti del database durante la migrazione da un SQL database My Shell esterno, è possibile utilizzare un comando My SQL Shell anziché. mysqldump
Per ulteriori informazioni, vedere Instance Dump Utility, Schema Dump Utility e Table Dump Utility
Per semplificare la gestione delle autorizzazioni per molti utenti o applicazioni, è possibile utilizzare l'istruzione CREATE ROLE
per creare un ruolo con una serie di autorizzazioni. Puoi quindi utilizzare le istruzioni GRANT
e SET ROLE
e la funzione current_role
per assegnare ruoli a utenti o applicazioni, cambiare il ruolo corrente e verificare quali ruoli sono in vigore. Per ulteriori informazioni sul sistema di autorizzazioni basato sui ruoli in My SQL 8.0, vedere Using Roles in the My Reference Manual
Importante
Si consiglia di non utilizzare l'utente master direttamente nelle applicazioni. Rispetta piuttosto la best practice di utilizzare un utente del database creato con i privilegi minimi richiesti per l'applicazione.
Argomenti
rds_superuser_role
Aurora My SQL version 3 include un ruolo speciale con tutti i seguenti privilegi. Il ruolo è denominato rds_superuser_role
. L'utente amministrativo principale per ciascun cluster ha già concesso questo ruolo. Il ruolo rds_superuser_role
include i seguenti privilegi per tutti gli oggetti del database:
-
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 My SQL versione 3.04 e successive) -
SHOW VIEW
-
TRIGGER
-
UPDATE
-
XA_RECOVER_ADMIN
La definizione del ruolo include anche la WITH GRANT OPTION
in modo che un utente amministrativo possa concedere tale ruolo ad altri utenti. In particolare, l'amministratore deve concedere tutti i privilegi necessari per eseguire la replica dei log binari con il SQL cluster Aurora My come destinazione.
Suggerimento
Per visualizzare i dettagli completi delle autorizzazioni, inserire le seguenti istruzioni.
SHOW GRANTS FOR rds_superuser_role@'%'; SHOW GRANTS FOR
name_of_administrative_user_for_your_cluster
@'%';
Privilege controlla l'utente per la replica dei log binari
Aurora My SQL versione 3 include un utente che controlla i privilegi per la replica dei log binari (binlog),. rdsrepladmin_priv_checks_user
Oltre ai privilegi dirds_superuser_role
, questo utente dispone del privilegio. replication_applier
Quando si attiva la replica binlog chiamando la mysql.rds_start_replication
stored procedure, viene creata. rdsrepladmin_priv_checks_user
L'rdsrepladmin_priv_checks_user@localhost
utente è un utente riservato. Non modificarlo.
Ruoli per l'accesso ad altri AWS servizi
Aurora My SQL versione 3 include ruoli che è possibile utilizzare per accedere ad altri AWS servizi. È possibile impostare molti di questi ruoli come alternativa alla concessione di privilegi. Ad esempio, specificare GRANT AWS_LAMBDA_ACCESS TO
anzichéuser
GRANT
INVOKE LAMBDA ON *.* TO
. Per le procedure di accesso ad altri AWS servizi, vedere. Integrazione di Amazon Aurora MySQL con altri servizi AWS Aurora My SQL version 3 include i seguenti ruoli relativi all'accesso ad altri AWS servizi:user
-
AWS_LAMBDA_ACCESS
— Un'alternativa alINVOKE LAMBDA
privilegio. Per informazioni sull'utilizzo, consulta Richiamo di una funzione Lambda da un cluster Amazon Aurora My DB SQL. -
AWS_LOAD_S3_ACCESS
— Un'alternativa alLOAD FROM S3
privilegio. Per informazioni sull'utilizzo, consulta Caricamento di dati in un cluster Amazon Aurora My SQL DB da file di testo in un bucket Amazon S3. -
AWS_SELECT_S3_ACCESS
— Un'alternativa alSELECT INTO S3
privilegio. Per informazioni sull'utilizzo, consulta Salvataggio di dati da un cluster Amazon Aurora My SQL DB in file di testo in un bucket Amazon S3. -
AWS_COMPREHEND_ACCESS
— Un'alternativa alINVOKE COMPREHEND
privilegio. Per informazioni sull'utilizzo, consulta Concessione agli utenti del database dell'accesso a machine learning di Aurora. -
AWS_SAGEMAKER_ACCESS
— Un'alternativa alINVOKE SAGEMAKER
privilegio. Per informazioni sull'utilizzo, consulta Concessione agli utenti del database dell'accesso a machine learning di Aurora. -
AWS_BEDROCK_ACCESS
— Non esiste unINVOKE
privilegio analogo per Amazon Bedrock. Per informazioni sull'utilizzo, consulta Concessione agli utenti del database dell'accesso a machine learning di Aurora.
Quando concedi l'accesso utilizzando i ruoli in Aurora My SQL versione 3, attivi anche il ruolo utilizzando l'istruzione SET ROLE
orrole_name
SET ROLE ALL
. L'esempio seguente mostra come. Sostituire il nome del ruolo appropriato per 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`@`%` | +-----------------------------------------------------+
Autenticazione
Nella community My SQL 8.0, il plugin di autenticazione predefinito è. caching_sha2_password
Aurora La mia SQL versione 3 utilizza ancora il mysql_native_password
plugin. Non è possibile modificare l'impostazione default_authentication_plugin
.