Lightsail 데이터베이스의 메이저 버전 업그레이드 - Amazon Lightsail

Lightsail 데이터베이스의 메이저 버전 업그레이드

Amazon Lightsail에서 새 데이터베이스 엔진 버전을 지원하는 경우, 데이터베이스를 새 버전으로 업그레이드할 수 있습니다. Lightsail은 MySQL과 PostgreSQL이라는 두 가지 데이터베이스 블루프린트를 제공합니다. 이 안내서에서는 MySQL 또는 PostgreSQL 데이터베이스 인스턴스의 메이저 버전을 업그레이드하는 방법을 설명합니다. update-relational-database API 작업을 사용해야만 데이터베이스 메이저 버전을 업그레이드할 수 있습니다.

AWS CloudShell을 사용하여 업그레이드를 수행합니다. CloudShell은 브라우저 기반의 사전 인증된 셸로, Lightsail 콘솔에서 직접 실행할 수 있습니다. CloudShell로 원하는 쉘(Bash, PowerShell 또는 Z 쉘)을 사용하여 AWS Command Line Interface(AWS CLI) 명령을 실행할 수 있습니다. 명령줄 도구를 다운로드하거나 설치할 필요 없이 이 작업을 수행할 수 있습니다. CloudShell을 설정하고 사용하는 방법은 Lightsail의 AWS CloudShell 섹션을 참조하세요.

변경 사항 이해

메이저 버전 업그레이드는 이전 버전과 호환되지 않는 여러 가지 문제를 일으킬 수 있습니다. 이러한 비호환성으로 인해 업그레이드하는 동안 문제가 발생할 수 있습니다. 업그레이드에 성공하려면 데이터베이스를 준비해야 할 수 있습니다. 데이터베이스의 메이저 버전 업그레이드에 대한 자세한 내용은 MySQL 및 PostgreSQL 웹 사이트의 다음 주제를 참조하세요.

사전 조건

  1. 애플리케이션이 데이터베이스의 두 메이저 버전을 모두 지원하는지 확인합니다.

  2. 변경하기 전에 데이터베이스 인스턴스의 스냅샷을 생성하는 것이 좋습니다. 자세한 내용은 Lightsail 데이터베이스의 스냅샷 생성을 참조하세요.

  3. (선택 사항) 방금 생성한 스냅샷에서 새 데이터베이스 인스턴스를 생성합니다. 데이터베이스 업데이트에는 가동 중지 시간이 필요하므로 현재 활성 상태인 데이터베이스를 업그레이드하기 전에 새 데이터베이스에서 업그레이드를 테스트할 수 있습니다. 데이터베이스 복사에 대한 자세한 내용은 Lightsail 데이터베이스 스냅샷 생성을 참조하세요.

데이터베이스 메이저 버전 업데이트

Lightsail은 MySQL 및 PostgreSQL 데이터베이스 인스턴스에 대한 메이저 버전 업그레이드를 지원합니다. MySQL 데이터베이스는 다음 절차의 예로 사용됩니다. 하지만 프로세스와 명령은 PostgreSQL 데이터베이스에서 동일합니다.

Lightsail 데이터베이스의 데이터베이스 메이저 버전을 업그레이드하려면 다음 절차를 완료하세요.

  1. Lightsail 콘솔에 로그인합니다.

  2. 왼쪽 탐색 창에서 데이터베이스를 선택합니다.

  3. 업그레이드하려는 데이터베이스 인스턴스의 이름 및 AWS 리전에 대한 참고 사항입니다.

    Lightsail 콘솔에서 새 데이터베이스 인스턴스의 이름과 리전입니다.
  4. Lightsail 콘솔 왼쪽 하단에서 CloudShell을 선택합니다. 동일한 브라우저 탭에서 CloudShell 터미널이 열립니다. 명령 프롬프트가 표시되면 셸이 상호 작용할 준비가 된 것입니다.

  5. CloudShell 프롬프트에 다음 명령을 입력하여 사용 가능한 데이터베이스 블루프린트 ID 목록을 가져옵니다.

    aws lightsail get-relational-database-blueprints
  6. 업그레이드하려는 메이저 버전의 블루프린트 ID에 대한 참고 사항입니다. 예: mysql_8_0.

    CloudShell 창에서 get-relational-database-blueprints 명령의 응답입니다.
  7. 다음 명령을 입력하여 데이터베이스의 메이저 버전으로 업그레이드합니다. 업그레이드는 데이터베이스의 다음 유지 관리 기간 동안 수행됩니다. 명령에서 DatabaseName을 데이터베이스 이름으로, blueprintId를 업그레이드하려는 메이저 버전의 블루프린트 ID로, DatabaseRegion을 데이터베이스가 있는 AWS 리전으로 바꿉니다.

    aws lightsail update-relational-database \ --relational-database-name DatabaseName \ --relational-database-blueprint-id blueprintId \ --region DatabaseRegion

    (선택 사항) 업그레이드를 즉시 적용하려면 명령에 --apply-immediately 파라미터를 포함합니다. 다음 예제와 유사한 응답이 표시되고 업그레이드가 적용되는 동안 데이터베이스를 사용할 수 없게 됩니다. 자세한 내용은 Lightsail API 참조의 update-relational-database 섹션을 참조하세요.

    CloudShell 창에서 update-relational-database --apply-immediately 명령의 성공 결과입니다.
  8. 다음 명령을 입력하여 메이저 버전 업그레이드가 다음 데이터베이스 유지 관리 기간에 예약되어 있는지 확인합니다. 명령에서 DatabaseName을 데이터베이스 이름으로 바꾸고 DatabaseRegion을 데이터베이스가 있는 AWS 리전으로 바꿉니다.

    aws lightsail get-relational-database \ --relational-database-name DatabaseName \ --region DatabaseRegion

    get-relational-database 응답에서 데이터베이스 state은(는) 다음 유지 관리 기간 동안 보류 중인 메이저 버전 업그레이드를 알려줍니다. 응답의 preferredMaintenanceWindow 섹션에서 다음 유지 관리 기간의 날짜 및 시간을 찾을 수 있습니다.

    데이터베이스 인스턴스 상태

    "state": "upgrading", "backupRetentionEnabled": true, "pendingModifiedValues": { "engineVersion": "8.0.36"

    유지보수 윈도우

    "preferredMaintenanceWindow": "wed: 09:22-wed: 09:52"

다음 단계

테스트 데이터베이스를 생성한 경우 애플리케이션이 업그레이드된 데이터베이스와 함께 작동하는지 확인한 후 삭제할 수 있습니다. 이전 데이터베이스로 돌아가야 할 경우를 대비하여 이전 데이터베이스에서 생성한 스냅샷을 보관합니다. 또한 업그레이드된 데이터베이스의 스냅샷을 생성하여 새 특정 시점 복사본을 확보해야 합니다.