Amazon RDS for MySQL DB 인스턴스로 백업 복원
Amazon RDS는 백업 파일을 사용한 MySQL 데이터베이스 가져오기를 지원합니다. 데이터베이스의 백업을 만들어 Amazon S3에 저장한 다음 MySQL을 실행하는 새로운 Amazon RDS DB 인스턴스에 백업 파일을 복원할 수 있습니다. Amazon RDS는 모든 AWS 리전의 Amazon S3에서 백업 파일 가져오기를 지원합니다.
이 단원에서 설명하는 시나리오는 온프레미스 데이터베이스의 백업을 복원합니다. 데이터베이스에 액세스할 수 있는 한, 이 기법을 다른 위치(예: Amazon EC2 또는 다른 클라우드 서비스)의 데이터베이스에 사용할 수 있습니다.
다음 다이어그램은 지원되는 시나리오를 보여 줍니다.

백업 파일을 만들고, 복사하고, 복원하는 동안 온프레미스 데이터베이스를 오프라인 상태로 둘 수 있다면 백업 파일을 사용하여 데이터베이스를 Amazon RDS로 가져오는 것이 좋습니다. 데이터베이스를 오프라인으로 둘 수 없는 경우 다음 방법 중 하나를 사용할 수 있습니다.
-
이진 로그 - 먼저 이 주제에 설명된 대로 Amazon S3에서 Amazon RDS로 백업 파일을 가져옵니다. 그런 다음 이진 로그(binlog) 복제를 사용하여 데이터베이스를 업데이트합니다. 자세한 내용은 외부 소스 인스턴스를 사용하여 이진 로그 파일 위치 복제 구성 섹션을 참조하세요.
-
AWS Database Migration Service - AWS Database Migration Service를 사용하여 데이터베이스를 Amazon RDS로 마이그레이션합니다. 자세한 내용은 AWS Database Migration Service란 무엇입니까?를 참조하세요.
Amazon S3에서 Amazon RDS로 백업 파일을 가져오는 설정 개요
Amazon S3에서 Amazon RDS로 백업 파일을 가져오려면 다음 구성 요소가 필요합니다.
백업 파일을 저장할 Amazon S3 버킷.
Amazon S3 버킷이 이미 있다면 해당 버킷을 사용할 수 있습니다. Amazon S3 버킷이 없는 경우에는 새 버킷을 만들 수 있습니다. 자세한 내용은 버킷 생성 단원을 참조하세요.
Percona XtraBackup이 생성한 온프레미스 데이터베이스 백업.
자세한 내용은 데이터베이스 백업 생성 섹션을 참조하세요.
-
Amazon RDS가 S3 버킷에 액세스할 수 있도록 허용하는 AWS Identity and Access Management(IAM) 역할입니다.
이미 IAM 역할이 있는 경우 해당 역할을 사용하고 신뢰 및 권한 정책을 연결할 수 있습니다. 자세한 내용은 수동으로 IAM 역할 만들기 섹션을 참조하세요.
IAM 역할이 없는 경우 다음의 두 가지 옵션이 있습니다.
-
새 IAM 역할을 수동으로 만들 수 있습니다. 자세한 내용은 수동으로 IAM 역할 만들기 섹션을 참조하세요.
-
Amazon RDS에서 새 IAM 역할을 만들도록 선택할 수 있습니다. Amazon RDS에서 새 IAM 역할을 만들도록 하려면 Amazon S3에서 새 MySQL DB 인스턴스로 데이터 가져오기 섹션에서 AWS Management Console을 사용하는 절차를 따르세요.
-
데이터베이스 백업 생성
백업을 생성하려면 Percona XtraBackup 소프트웨어를 사용하십시오. 최신 버전의 Percona XtraBackup을 사용하는 것이 좋습니다. Percona XtraBackup은 Percona 웹 사이트의 Software Downloads
주의
데이터베이스 백업을 만들 때 Xtrabackup은 xtrabackup_info 파일에 자격 증명을 저장할 수 있습니다. xtrabackup_info 파일의 tool_command
설정에 민감한 정보가 포함되어 있지 않은지 확인합니다.
사용하는 Percona XtraBackup 버전은 백업하는 MySQL 버전에 따라 다릅니다.
-
MySQL 8.4 - Percona XtraBackup 버전 8.4를 사용합니다.
-
MySQL 8.0 - Percona XtraBackup 버전 8.0을 사용합니다.
참고
Percona XtraBackup 8.0.12 이상 버전은 모든 MySQL 8.0 버전의 마이그레이션을 지원합니다. RDS for MySQL 8.0.32 이상으로 마이그레이션하는 경우, Percona XtraBackup 8.0.12 이상을 사용해야 합니다.
-
MySQL 5.7 - Percona XtraBackup 버전 2.4를 사용합니다.
Percona XtraBackup을 사용하여 MySQL 데이터베이스 파일의 전체 백업을 생성할 수 있습니다. 또는 이미 Percona XtraBackup을 사용하여 MySQL 데이터베이스 파일을 백업 중인 경우 기존의 전체 및 증분 백업 디렉터리 및 파일을 업로드할 수 있습니다.
Percona XtraBackup을 사용한 데이터베이스 백업에 관한 자세한 내용은 Percona 웹 사이트의 Percona XtraBackup - Documentation
Percona XtraBackup을 사용한 전체 백업 생성
Amazon RDS가 Amazon S3에서 복원할 수 있는 MySQL 데이터베이스 파일의 전체 백업을 만들려면 Percona XtraBackup 유틸리티(xtrabackup
)를 사용합니다.
예를 들어, 다음 명령을 실행하면 MySQL 데이터베이스 백업을 만들고 /on-premises/s3-restore/backup
폴더에 파일을 저장합니다.
xtrabackup --backup --user=
myuser
--password=password
--target-dir=/on-premises/s3-restore/backup
백업을 파일 하나로 압축하려는 경우(필요한 경우 나중에 여러 파일로 분할할 수 있음) MySQL 버전에 따라 다음 형식 중 하나로 백업을 저장할 수 있습니다.
Gzip(.gz) - MySQL 5.7 이하 버전의 경우
tar(.tar) - MySQL 5.7 이하 버전의 경우
Percona xbstream(.xbstream) - 모든 MySQL 버전의 경우
참고
Percona XtraBackup 8.0 이상은 압축에 Percona xbstream만 지원합니다.
MySQL 5.7 이하 버전
다음 명령을 실행하면 Gzip 파일 여러 개로 된 MySQL 데이터베이스 백업이 만들어집니다. 값을 실제 정보로 바꿉니다.
xtrabackup --backup --user=
my_user
--password=password
--stream=tar \ --target-dir=/on-premises/s3-restore/backup
| gzip - | split -d --bytes=500MB \ -/on-premises/s3-restore/backup/backup
.tar.gz
MySQL 5.7 이하 버전
다음 명령을 실행하면 tar 파일 여러 개로 된 MySQL 데이터베이스 백업이 만들어집니다. 값을 실제 정보로 바꿉니다.
xtrabackup --backup --user=
my_user
--password=password
--stream=tar \ --target-dir=/on-premises/s3-restore/backup
| split -d --bytes=500MB \ -/on-premises/s3-restore/backup/backup
.tar
모든 MySQL 버전
다음 명령을 실행하면 xbstream 파일 여러 개로 된 MySQL 데이터베이스 백업이 만들어집니다. 값을 실제 정보로 바꿉니다.
xtrabackup --backup --user=
myuser
--password=password
--stream=xbstream \ --target-dir=/on-premises/s3-restore/backup
| split -d --bytes=500MB \ -/on-premises/s3-restore/backup/backup
.xbstream
참고
다음 오류가 표시되는 경우 명령에서 파일 형식이 혼합된 것이 원인일 수 있습니다.
ERROR:/bin/tar: This does not look like a tar archive
Percona XtraBackup을 사용한 증분 백업 사용
이미 Percona XtraBackup을 사용하여 MySQL 데이터베이스 파일의 전체 및 증분 백업을 수행 중인 경우 전체 백업을 만들고 백업 파일을 Amazon S3로 업로드할 필요가 없습니다. 대신, 기존 백업 디렉터리 및 파일을 Amazon S3 버킷으로 복사하여 시간을 절약할 수 있습니다. Percona XtraBackup을 사용한 증분 백업 만들기에 대한 자세한 내용은 Percona 웹 사이트의 Create an incremental backup
기존의 전체 및 증분 백업 파일을 Amazon S3 버킷으로 복사할 때 기본 디렉터리의 콘텐츠를 반복적으로 복사해야 합니다. 이러한 콘텐츠에는 전체 백업과 모든 증분 백업 디렉터리 및 파일이 모두 포함됩니다. 이 복사본은 Amazon S3 버킷의 디렉터리 구조를 보존해야 합니다. Amazon RDS는 모든 파일과 디렉터리를 반복합니다. Amazon RDS는 각 증분 백업에 포함된 xtrabackup-checkpoints
파일을 사용하여 기본 디렉터리를 식별하고 로그 시퀀스 번호(LSN) 범위별로 증분 백업을 정렬합니다.
Percona XtraBackup의 백업 고려 사항
Amazon RDS은 파일 이름을 기준으로 백업 파일을 사용합니다. 파일 형식에 따라 적절한 파일 확장명으로 백업 파일의 이름을 지정합니다. 예를 들어 Percona xbstream 형식을 사용하여 저장된 파일에 .xbstream
을 사용합니다.
Amazon RDS는 알파벳 순서뿐 아니라 자연수 순서로도 백업 파일을 사용합니다. xtrabackup
명령을 실행할 때는 split
옵션을 사용하여 적절한 순서로 백업 파일을 쓰고 이름을 지정해야 합니다.
Amazon RDS는 Percona XtraBackup을 사용하여 생성되는 부분 백업을 지원하지 않습니다. 데이터베이스의 소스 파일을 백업할 때 다음 옵션을 사용하여 부분 백업을 만들 수 없습니다.
-
--tables
-
--tables-exclude
-
--tables-file
-
--databases
-
--databases-exclude
-
--databases-file
수동으로 IAM 역할 만들기
IAM 역할이 없는 경우에는 수동으로 새 역할을 만들 수 있습니다. 그러나 AWS Management Console를 사용하여 데이터베이스를 복원하는 경우에는 Amazon RDS가 이 새 IAM 역할을 만들도록 선택하는 것이 좋습니다. Amazon RDS에서 이 역할을 자동으로 생성하도록 하려면 Amazon S3에서 새 MySQL DB 인스턴스로 데이터 가져오기 섹션의 절차를 따릅니다.
Amazon S3에서 데이터베이스를 가져오기 위해 새 IAM 역할을 수동으로 만들려면 Amazon RDS에서 Amazon S3 버킷으로 권한을 위임하기 위한 역할을 만듭니다. IAM 역할을 만들 때 신뢰 및 권한 정책을 연결합니다. Amazon S3에서 백업 파일을 가져오려는 경우 다음 예제와 비슷한 신뢰 및 권한 정책을 사용합니다. 역할을 만드는 방법에 대한 자세한 내용은 AWS 서비스에 대한 권한을 위임할 역할 생성을 참조하세요.
신뢰 및 권한 정책에 따라 ARN(Amazon 리소스 이름)을 제공해야 합니다. ARN 형식에 대한 자세한 내용은 ARN(Amazon 리소스 이름) 및 AWS 서비스 네임스페이스를 참조하세요.
예 Amazon S3에서 가져오기 위한 신뢰 정책
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": {"Service": "rds.amazonaws.com"}, "Action": "sts:AssumeRole" }] }
예 Amazon S3에서 가져오기 위한 권한 정책 - IAM 사용자 권한
다음 예제에서는 iam_user_id
를 자신의 값으로 바꿉니다.
{ "Version":"2012-10-17", "Statement": [ { "Sid":"AllowS3AccessRole", "Effect":"Allow", "Action":"iam:PassRole", "Resource":"arn:aws:iam::
iam_user_id
:role/S3Access" } ] }
예 Amazon S3에서 가져오기 위한 권한 정책 - 역할 권한
다음 예제에서는 amzn-s3-demo-bucket
과 접두사
를 고유한 값으로 바꿉니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
" }, { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket
/prefix
*" }, { // If your bucket is encrypted, include the following permission. This permission allows decryption of your AWS KMS key. "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": [ "arn:aws:kms:region
:customer_id
:key/key_id
*" ] } ] }
참고
파일 이름 접두사를 포함하는 경우 접두사 다음에 별표(*)를 포함합니다. 접두사를 지정하지 않으려면 별표만 지정하면 됩니다.
Amazon S3에서 새 MySQL DB 인스턴스로 데이터 가져오기
AWS Management Console, AWS CLI 또는 RDS API를 사용하여 새로운 MySQL DB 인스턴스로 Amazon S3의 데이터를 가져올 수 있습니다.
Amazon S3에서 새 MySQL DB 인스턴스로 데이터를 가져오려면
-
AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/
에서 Amazon RDS 콘솔을 엽니다. -
Amazon RDS 콘솔의 오른쪽 상단에서 DB 인스턴스를 만들려는 AWS 리전을 선택합니다. 데이터베이스 백업이 포함된 Amazon S3 버킷과 동일한 AWS 리전을 선택합니다.
-
탐색 창에서 Databases(데이터베이스)를 선택합니다.
-
S3에서 복원(Restore from S3)을 선택합니다.
S3에서 복원하여 데이터베이스 생성(Create database by restoring from S3) 페이지가 나타납니다.
-
S3 소스에서 다음을 수행합니다.
-
백업이 포함된 S3 버킷을 선택합니다.
-
(선택 사항) S3 접두사에 Amazon S3 버킷에 저장되는 파일의 파일 경로 접두사를 입력합니다.
접두사를 지정하지 않는 경우, Amazon RDS는 S3 버킷의 루트 폴더에 있는 모든 파일과 폴더를 사용하여 DB 인스턴스를 만듭니다. 접두사를 지정하는 경우 Amazon RDS는 파일의 경로가 지정된 접두사로 시작하는 S3 버킷의 파일과 폴더를 사용하여 DB 인스턴스를 만듭니다.
예를 들어 이름이 backups인 S3의 하위 폴더의 백업 파일을 저장했고 여러 세트의 백업 파일이 각각 자체 디렉터리(gzip_backup1, gzip_backup2 등)에 들어 있다고 가정해봅시다. 이 경우 gzip_backup1 폴더의 파일에서 복원하려면 backups/gzip_backup1의 접두사를 지정합니다.
-
-
엔진 옵션(Engine options)에서 다음을 수행합니다.
-
엔진 유형(Engine type)에서 MySQL을 선택합니다.
-
소스 엔진 버전(Source engine version)에서 소스 데이터베이스의 MySQL 메이저 버전을 선택합니다.
-
엔진 버전의 경우 AWS 리전에서 MySQL 메이저 버전의 기본 마이너 버전을 선택합니다.
AWS Management Console에서 기본 마이너 버전만 사용할 수 있습니다. 가져오기가 완료되면 DB 인스턴스를 업그레이드할 수 있습니다.
-
-
IAM 역할의 경우, Amazon RDS가 Amazon S3 버킷에 액세스할 수 있도록 허용하는 필수 신뢰 정책 및 권한 정책으로 IAM 역할을 만들거나 선택합니다. 다음 조치 중 하나를 취하세요.
(권장) 새 역할 생성을 선택하고 IAM 역할 이름을 입력합니다. 이 옵션을 사용하면 Amazon RDS가 자동으로 신뢰 정책 및 사용 권한 정책을 사용하여 역할을 만듭니다.
기존 IAM 역할을 선택합니다. 이 역할이 수동으로 IAM 역할 만들기의 모든 기준을 충족하는지 확인하세요.
-
DB 인스턴스 정보를 지정합니다. 각 설정에 대한 자세한 내용은 DB 인스턴스에 대한 설정 단원을 참조하십시오.
참고
새 DB 인스턴스에 충분한 스토리지를 할당해야 복원 작업이 성공할 수 있습니다.
향후 자동 확장을 허용하려면 추가 스토리지 구성에서 스토리지 자동 조정 활성화를 선택합니다.
-
필요에 따라 추가 설정을 선택합니다.
-
데이터베이스 생성을 선택합니다.
AWS CLI를 사용하여 Amazon S3에서 데이터를 새 MySQL DB 인스턴스로 가져오려면 다음 옵션을 사용하여 restore-db-instance-from-s3 명령을 실행합니다. 각 설정에 대한 자세한 내용은 DB 인스턴스에 대한 설정 단원을 참조하세요.
참고
새 DB 인스턴스에 충분한 스토리지를 할당해야 복원 작업이 성공할 수 있습니다.
스토리지 자동 크기 조정을 활성화하고 향후 자동 확장을 허용하려면 또한 --max-allocated-storage
옵션을 사용합니다.
--allocated-storage
--db-instance-identifier
--db-instance-class
--engine
--master-username
--manage-master-user-password
--s3-bucket-name
--s3-ingestion-role-arn
--s3-prefix
--source-engine
--source-engine-version
예
대상 LinuxmacOS, 또는Unix:
aws rds restore-db-instance-from-s3 \ --allocated-storage
250
\ --db-instance-identifiermy_identifier
\ --db-instance-classdb.m5.large
\ --enginemysql
\ --master-usernameadmin
\ --manage-master-user-password \ --s3-bucket-nameamzn-s3-demo-bucket
\ --s3-ingestion-role-arnarn:aws:iam::account-number:role/rolename
\ --s3-prefixbucket_prefix
\ --source-enginemy_sql
\ --source-engine-version8.0.32
\ --max-allocated-storage1000
Windows의 경우:
aws rds restore-db-instance-from-s3 ^ --allocated-storage
250
^ --db-instance-identifiermy_identifier
^ --db-instance-classdb.m5.large
^ --enginemysql
^ --master-usernameadmin
^ --manage-master-user-password ^ --s3-bucket-nameamzn-s3-demo-bucket
^ --s3-ingestion-role-arnarn:aws:iam::account-number:role/rolename
^ --s3-prefixbucket_prefix
^ --source-enginemysql
^ --source-engine-version8.0.32
^ --max-allocated-storage1000
Amazon RDS API를 사용하여 Amazon S3에서 새 MySQL DB 인스턴스로 데이터를 가져오려면 RestoreDBInstanceFromS3 작업을 호출하세요.
Amazon S3에서 Amazon RDS로 백업 파일 가져오기에 대한 제한 및 고려 사항
Amazon S3에서 RDS for MySQL DB 인스턴스로 백업 파일을 가져오는 경우 다음과 같은 제한 및 고려 사항이 적용됩니다.
-
기존 DB 인스턴스가 아닌 새 DB 인스턴스로만 데이터를 마이그레이션할 수 있습니다.
-
Percona XtraBackup을 사용하여 Amazon S3에 데이터를 백업해야 합니다. 자세한 내용은 데이터베이스 백업 생성 섹션을 참조하세요.
-
Amazon S3 버킷과 RDS for MySQL DB 인스턴스는 같은 AWS 리전에 있어야 합니다.
-
다음의 소스에서는 복원할 수 없습니다.
-
Amazon S3로의 DB 인스턴스 스냅샷 내보내기. DB 인스턴스 스냅샷 내보내기에서 S3 버킷으로 데이터를 마이그레이션할 수 없습니다.
-
암호화된 소스 데이터베이스. 그러나 마이그레이션 중인 데이터를 암호화할 수 있습니다. 또한 데이터를 마이그레이션 프로세스 동안 암호화하지 않은 상태로 유지할 수도 있습니다.
-
MySQL 5.5 또는 5.6 데이터베이스.
-
-
Percona Server for MySQL은
mysql schema
에compression_dictionary*
테이블을 포함할 수 있으므로 RDS for MySQL은 소스 데이터베이스로 이를 지원하지 않습니다. -
RDS for MySQL은 메이저 버전 또는 마이너 버전에서 역방향 마이그레이션을 지원하지 않습니다. 예를 들어, MySQL 버전 8.0에서 RDS for MySQL 5.7로 마이그레이션할 수 없으며, MySQL 버전 8.0.32에서 RDS for MySQL 버전 8.0.26으로 마이그레이션할 수 없습니다.
-
Amazon RDS는 db.t2.micro DB 인스턴스 클래스에서 Amazon S3로부터의 가져오기를 지원하지 않습니다. 그러나 다른 DB 인스턴스 클래스로 복원한 다음 나중에 DB 인스턴스 클래스를 변경할 수 있습니다. 인스턴스 클래스에 대한 자세한 내용은 에 대한 DB 인스턴스 클래스의 하드웨어 사양 단원을 참조하십시오.
-
Amazon S3는 Amazon S3 버킷에 업로드되는 파일 크기를 5TB로 제한합니다. 백업 파일이 5TB를 초과하면 해당 백업 파일을 더 작은 크기의 파일들로 나누어야 합니다.
-
Amazon RDS는 Amazon S3 버킷에 업로드되는 파일을 100만 개로 제한합니다. 모든 전체 및 증분 백업을 포함하여 데이터베이스에 대한 백업 데이터가 100만 개의 파일을 초과하는 경우 Gzip(.gz), tar(.tar.gz) 또는 Percona xbstream(.xbstream) 파일을 사용하여 전체 및 증분 백업 파일을 Amazon S3 버킷에 저장합니다. Percona Xtrabackup 8.0은 압축에 Percona xbstream만 지원합니다.
-
각 DB 인스턴스에 관리 서비스를 제공하기 위해 Amazon RDS는 DB 인스턴스를 만들 때
rdsadmin
사용자를 만듭니다.rdsamin
은 Amazon RDS에서 예약된 사용자이므로 다음과 같은 제한 사항이 적용됩니다.-
Amazon RDS는
'rdsadmin'@'localhost'
를 정의자로 사용하는 함수, 프로시저, 뷰, 이벤트 및 트리거를 가져올 수 없습니다. 자세한 내용은 'rdsamin'@'localhost'를 정의자로 사용하여 저장된 객체 및 마스터 사용자 계정 권한(을)를 참조하세요. -
DB 인스턴스를 만들 때 Amazon RDS는 지원되는 최대 권한이 있는 마스터 사용자를 만듭니다. 백업에서 복원하는 동안 Amazon RDS는 가져오는 사용자에게 할당된 지원되지 않는 권한을 자동으로 제거합니다.
이로 인해 영향을 받을 수 있는 사용자를 식별하려면 지원되지 않는 권한을 지닌 사용자 계정 단원을 참조하세요. RDS for MySQL에서 지원되는 권한에 대한 자세한 내용은 RDS for MySQL에 대한 역할 기반 권한 모델 섹션을 참조하세요.
-
-
Amazon RDS는
mysql
스키마에서 사용자가 만든 테이블을 마이그레이션하지 않습니다. -
innodb_data_file_path
파라미터는 기본 데이터 파일 이름ibdata1:12M:autoextend
를 사용하는 데이터 파일 하나만 사용하여 구성해야 합니다. 이 방법을 사용하여 두 개의 데이터 파일이 있거나 다른 이름의 데이터 파일이 있는 데이터베이스를 마이그레이션할 수 있습니다.다음 예제는 Amazon RDS에서 허용하지 않는 파일 이름입니다.
-
innodb_data_file_path=ibdata1:50M
-
ibdata2:50M:autoextend
-
innodb_data_file_path=ibdata01:50M:autoextend
-
-
기본 MySQL 데이터 디렉터리 외부에서 정의된 테이블이 있는 원본 데이터베이스에서 마이그레이션할 수 없습니다.
-
이 방법을 사용할 때 압축되지 않은 백업에 지원되는 최대 크기는 64TiB로 제한됩니다. 압축 백업의 경우 압축되지 않은 공간 관련 요구 사항을 고려하여 이 제한 수준이 낮게 적용됩니다. 이 경우 지원되는 최대 백업 크기는
64 TiB - compressed backup size
입니다.RDS for MySQL에서 지원하는 최대 데이터베이스 크기에 대한 자세한 내용은 범용 SSD 스토리지 및 프로비저닝된 IOPS SSD 스토리지 섹션을 참조하세요.
-
Amazon RDS는 MySQL 및 기타 외부 구성 요소와 플러그인 가져오기를 지원하지 않습니다.
-
Amazon RDS는 데이터베이스에서 모든 것을 복원하지 않습니다. 소스 MySQL 시스템 데이터베이스에서 다음 항목의 데이터베이스 스키마와 값을 저장한 다음, 복원한 RDS for MySQL DB 인스턴스가 만들어지면 여기에 추가하는 것이 좋습니다.
-
사용자 계정
-
Functions
-
저장 프로시저
-
시간대 정보. 시간대 정보는 RDS for MySQL DB 인스턴스의 로컬 운영 체제에서 로드됩니다. 자세한 내용은 MySQL DB 인스턴스의 현지 시간대 섹션을 참조하세요.
-
'rdsamin'@'localhost'를 정의자로 사용하여 저장된 객체
Amazon RDS는 'rdsadmin'@'localhost'
를 정의자로 사용하는 함수, 프로시저, 뷰, 이벤트 및 트리거를 가져올 수 없습니다.
소스 MySQL 데이터베이스에서 다음 SQL 스크립트를 사용하면 지원되지 않는 정의자가 있는 저장된 객체를 나열할 수 있습니다.
-- This SQL query lists routines with `rdsadmin`@`localhost` as the definer. SELECT ROUTINE_SCHEMA, ROUTINE_NAME FROM information_schema.routines WHERE definer = 'rdsadmin@localhost'; -- This SQL query lists triggers with `rdsadmin`@`localhost` as the definer. SELECT TRIGGER_SCHEMA, TRIGGER_NAME, DEFINER FROM information_schema.triggers WHERE DEFINER = 'rdsadmin@localhost'; -- This SQL query lists events with `rdsadmin`@`localhost` as the definer. SELECT EVENT_SCHEMA, EVENT_NAME FROM information_schema.events WHERE DEFINER = 'rdsadmin@localhost'; -- This SQL query lists views with `rdsadmin`@`localhost` as the definer. SELECT TABLE_SCHEMA, TABLE_NAME FROM information_schema.views WHERE DEFINER = 'rdsadmin@localhost';
지원되지 않는 권한을 지닌 사용자 계정
RDS for MySQL에서 지원되지 않는 권한을 지닌 사용자 계정의 경우, 가져올 때 지원되지 않는 권한은 제외됩니다. 지원되는 권한 목록은 RDS for MySQL에 대한 역할 기반 권한 모델 단원을 참조하세요.
소스 데이터베이스에서 다음 SQL 쿼리를 실행하여 지원되지 않는 권한이 있는 사용자 계정을 나열할 수 있습니다.
SELECT user, host FROM mysql.user WHERE Shutdown_priv = 'y' OR File_priv = 'y' OR Super_priv = 'y' OR Create_tablespace_priv = 'y';