Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Vergleich von Aurora My SQL Version 3 und My SQL 8.0 Community Edition
Anhand der folgenden Informationen können Sie sich über die Änderungen informieren, die Sie beachten sollten, wenn Sie von einem anderen My SQL 8.0-kompatiblen System zu Aurora My SQL Version 3 konvertieren.
Im Allgemeinen unterstützt Aurora My SQL Version 3 den Funktionsumfang von Community My SQL 8.0.23. Einige neue Funktionen der My SQL 8.0 Community Edition gelten nicht für Aurora MySQL. Einige dieser Funktionen sind mit einigen Aurora-Aspekten, wie der Aurora-Speicherarchitektur, nicht kompatibel. Andere Funktionen werden nicht benötigt, da der Amazon RDS Management Service entsprechende Funktionen bietet. Die folgenden Funktionen in Community My SQL 8.0 werden in Aurora My SQL Version 3 nicht unterstützt oder funktionieren anders.
Versionshinweise für alle Versionen von Aurora My SQL Version 3 finden Sie unter Datenbank-Engine-Updates für Amazon Aurora My SQL Version 3 in den Versionshinweisen für Aurora My SQL.
Themen
Meine SQL 8.0-Funktionen sind in Aurora My SQL Version 3 nicht verfügbar
Die folgenden Funktionen von Community My SQL 8.0 sind in Aurora My SQL Version 3 nicht verfügbar oder funktionieren anders.
-
Ressourcengruppen und zugehörige SQL Anweisungen werden in Aurora My nicht unterstütztSQL.
-
Aurora My unterstützt SQL keine benutzerdefinierten Undo-Tablespaces und zugehörige SQL Anweisungen wie
CREATE UNDO TABLESPACE
,ALTER UNDO TABLESPACE ... SET INACTIVE
und.DROP UNDO TABLESPACE
-
Aurora My unterstützt das Rückgängigmachen der Tablespace-Kürzung für Aurora SQL My-Versionen unter 3.06 SQL nicht. In Aurora My SQL Version 3.06 und höher wird die automatische Undo-Tablespace-Kürzung unterstützt
. -
Sie können die Einstellungen von My-Plugins nicht ändern. SQL
-
Das X-Plugin wird nicht unterstützt.
-
Multisource-Replikation wird nicht unterstützt.
Rollenbasiertes Berechtigungsmodell
Mit Aurora My SQL Version 3 können Sie die Tabellen in der mysql
Datenbank nicht direkt ändern. Insbesondere können Sie Benutzer nicht einrichten, indem Sie in diemysql.user
-Tabelle Stattdessen verwenden Sie SQL Anweisungen, um rollenbasierte Rechte zu gewähren. Sie können auch keine anderen Objekte wie gespeicherte Prozeduren in der mysql
-Datenbank erstellen. Sie können immer noch die mysql
-Tabellen abfragen. Wenn Sie die Binärprotokollreplikation verwenden, werden Änderungen direkt ammysql
Tabellen im Quellcluster werden nicht auf den Zielcluster repliziert.
In einigen Fällen verwendet Ihre Anwendung möglicherweise Verknüpfungen, um Benutzer oder andere Objekte zu erstellen, indem Sie sie in diemysql
-Tabellen Wenn ja, ändern Sie Ihren Anwendungscode, um die entsprechenden Anweisungen wie CREATE
USER
zu verwenden. Wenn Ihre Anwendung gespeicherte Prozeduren oder andere Objekte in der mysql
-Datenbank erstellt, verwenden Sie stattdessen eine andere Datenbank.
Um Metadaten für Datenbankbenutzer während der Migration aus einer externen SQL Datenbank Meine Datenbank zu exportieren, können Sie stattdessen einen My SQL Shell-Befehl verwenden. mysqldump
Weitere Informationen finden Sie unter Instance Dump Utility, Schema Dump Utility und Table Dump
Um die Verwaltung von Berechtigungen für viele Benutzer oder Anwendungen zu vereinfachen, können SieCREATE ROLE
-Anweisung zum Erstellen einer Rolle mit einer Reihe von Berechtigungen. Dann können Sie dieGRANT
undSET ROLE
-Anweisungen und diecurrent_role
Funktion, um Benutzern oder Anwendungen Rollen zuzuweisen, die aktuelle Rolle zu wechseln und zu überprüfen, welche Rollen in Kraft sind. Weitere Informationen zum rollenbasierten Berechtigungssystem in My SQL 8.0 finden Sie unter Using Roles
Wichtig
Wir empfehlen Ihnen, den Hauptbenutzer nicht direkt in Ihren Anwendungen zu verwenden. Bleiben Sie stattdessen bei der bewährten Methode, einen Datenbankbenutzer zu verwenden, der mit den Mindestberechtigungen erstellt wurde, die für Ihre Anwendung erforderlich sind.
Themen
rds_superuser_role
Aurora My SQL Version 3 enthält eine spezielle Rolle mit allen folgenden Rechten. Der Name der Rolle lautet rds_superuser_role
. Dem primären Administratorbenutzer für jeden Cluster wurde diese Rolle bereits gewährt. Dierds_superuser_role
enthält die folgenden Berechtigungen für alle Datenbankobjekte:
-
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 Version 3.04 und höher) -
SHOW VIEW
-
TRIGGER
-
UPDATE
-
XA_RECOVER_ADMIN
Die Rollendefinition umfasst auchWITH GRANT OPTION
damit ein Administratorbenutzer diese Rolle anderen Benutzern gewähren kann. Insbesondere muss der Administrator alle Rechte gewähren, die für die Durchführung der binären Protokollreplikation mit dem Aurora SQL My-Cluster als Ziel erforderlich sind.
Tipp
Um die vollständigen Details der Berechtigungen anzuzeigen, geben Sie die folgenden Anweisungen ein.
SHOW GRANTS FOR rds_superuser_role@'%'; SHOW GRANTS FOR
name_of_administrative_user_for_your_cluster
@'%';
Die Berechtigung überprüft den Benutzer auf die Replikation von Binärprotokollen
Aurora Meine SQL Version 3 enthält einen Benutzer mit Berechtigungsprüfungen für die Replikation von Binärprotokollen (Binlog),rdsrepladmin_priv_checks_user
. Zusätzlich zu den Rechten von rds_superuser_role
hat dieser Benutzer die replication_applier
Berechtigung.
Wenn Sie die Binlog-Replikation aktivieren, indem Sie die mysql.rds_start_replication
gespeicherte Prozedur aufrufen, rdsrepladmin_priv_checks_user
wird sie erstellt.
Der rdsrepladmin_priv_checks_user@localhost
Benutzer ist ein reservierter Benutzer. Ändern Sie es nicht.
Rollen für den Zugriff auf andere AWS Dienste
Aurora My SQL Version 3 enthält Rollen, mit denen Sie auf andere AWS Dienste zugreifen können. Sie können viele dieser Rollen als Alternative zur Gewährung von Rechten festlegen. Sie geben beispielsweiseGRANT AWS_LAMBDA_ACCESS TO
INSTEAD OFuser
GRANT
INVOKE LAMBDA ON *.* TO
aus. Die Verfahren für den Zugriff auf andere AWS Dienste finden Sie unterIntegrieren von Amazon Aurora MySQL in anderen AWS-Services. Aurora My SQL Version 3 umfasst die folgenden Rollen im Zusammenhang mit dem Zugriff auf andere AWS Dienste:user
-
AWS_LAMBDA_ACCESS
— Eine Alternative zumINVOKE LAMBDA
Privileg. Weitere Informationen zur Nutzung finden Sie unter Aufrufen einer Lambda-Funktion aus einem Amazon Aurora My SQL DB-Cluster. -
AWS_LOAD_S3_ACCESS
— Eine Alternative zumLOAD FROM S3
Privileg. Weitere Informationen zur Nutzung finden Sie unter Daten aus Textdateien in einem Amazon S3-Bucket in einen Amazon Aurora My SQL DB-Cluster laden. -
AWS_SELECT_S3_ACCESS
— Eine Alternative zumSELECT INTO S3
Privileg. Weitere Informationen zur Nutzung finden Sie unter Speichern von Daten aus einem Amazon Aurora My SQL DB-Cluster in Textdateien in einem Amazon S3 S3-Bucket. -
AWS_COMPREHEND_ACCESS
— Eine Alternative zumINVOKE COMPREHEND
Privileg. Weitere Informationen zur Nutzung finden Sie unter Erteilen des Zugriffs auf Aurora Machine Learning für Datenbankbenutzer. -
AWS_SAGEMAKER_ACCESS
— Eine Alternative zumINVOKE SAGEMAKER
Privileg. Weitere Informationen zur Nutzung finden Sie unter Erteilen des Zugriffs auf Aurora Machine Learning für Datenbankbenutzer. -
AWS_BEDROCK_ACCESS
— Es gibt kein entsprechendesINVOKE
Privileg für Amazon Bedrock. Weitere Informationen zur Nutzung finden Sie unter Erteilen des Zugriffs auf Aurora Machine Learning für Datenbankbenutzer.
Wenn Sie Zugriff mithilfe von Rollen in Aurora My SQL Version 3 gewähren, aktivieren Sie die Rolle auch mithilfe der SET ROLE ALL
Anweisung SET ROLE
or. Im folgenden Beispiel wird gezeigt, wie dies geschieht. Ersetzen Sie den entsprechenden Rollennamen für role_name
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`@`%` | +-----------------------------------------------------+
Authentifizierung
In Community My SQL 8.0 ist das Standard-Authentifizierungs-Plugincaching_sha2_password
. Aurora Meine SQL Version 3 verwendet immer noch das mysql_native_password
Plugin. Sie können die default_authentication_plugin
-Einstellung nicht ändern.