• 沒有找到結果。

Amazon Aurora

N/A
N/A
Protected

Academic year: 2022

Share "Amazon Aurora"

Copied!
1887
0
0

加載中.... (立即查看全文)

全文

(1)

Amazon Aurora

User Guide for Aurora

Amazon Aurora: User Guide for Aurora

Copyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

(2)

Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's, in any manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored by Amazon.

(3)

Table of Contents

What is Aurora? ... 1

Aurora DB clusters ... 3

Aurora versions ... 5

Relational databases that are available on Aurora ... 5

Differences in version numbers between community databases and Aurora ... 5

Amazon Aurora major versions ... 6

Amazon Aurora minor versions ... 7

Amazon Aurora patch versions ... 7

Learning what's new in each Amazon Aurora version ... 7

Specifying the Amazon Aurora database version for your database cluster ... 7

Default Amazon Aurora versions ... 7

Automatic minor version upgrades ... 8

How long Amazon Aurora major versions remain available ... 8

How often Amazon Aurora minor versions are released ... 9

How long Amazon Aurora minor versions remain available ... 9

Long-term support for selected Amazon Aurora minor versions ... 9

Manually controlling if and when your database cluster is upgraded to new versions ... 9

Required Amazon Aurora upgrades ... 10

Testing your DB cluster with a new Aurora version before upgrading ... 10

Regions and Availability Zones ... 11

AWS Regions ... 11

Availability Zones ... 15

Local time zone for DB clusters ... 16

Supported Aurora features by Region and engine ... 19

Backtracking in Aurora ... 19

Aurora global databases ... 21

Aurora machine learning ... 23

Aurora parallel queries ... 26

Amazon RDS Proxy ... 27

Aurora Serverless v1 ... 29

Data API for Aurora Serverless ... 31

Aurora connection management ... 32

Types of Aurora endpoints ... 33

Viewing endpoints ... 35

Using the cluster endpoint ... 35

Using the reader endpoint ... 35

Using custom endpoints ... 36

Creating a custom endpoint ... 38

Viewing custom endpoints ... 40

Editing a custom endpoint ... 45

Deleting a custom endpoint ... 47

End-to-end AWS CLI example for custom endpoints ... 48

Using the instance endpoints ... 52

Endpoints and high availability ... 52

DB instance classes ... 54

DB instance class types ... 54

Supported DB engines ... 55

Determining DB instance class support in AWS Regions ... 59

Hardware specifications ... 62

Aurora storage and reliability ... 64

Overview of Aurora storage ... 64

Cluster volume contents ... 65

How storage resizes ... 65

Data billing ... 65

(4)

Reliability ... 66

Aurora security ... 67

Using SSL with Aurora DB clusters ... 68

High availability for Amazon Aurora ... 68

High availability for Aurora data ... 68

High availability for Aurora DB instances ... 68

High availability across AWS Regions with Aurora global databases ... 69

Fault tolerance ... 69

Replication with Aurora ... 70

Aurora Replicas ... 70

Aurora MySQL ... 71

Aurora PostgreSQL ... 72

DB instance billing for Aurora ... 72

On-Demand DB instances ... 74

Reserved DB instances ... 75

Setting up your environment ... 84

Sign up for AWS ... 84

Create an IAM user ... 84

Determine requirements ... 86

Provide access to the DB cluster ... 87

Getting started ... 89

Creating an Aurora MySQL DB cluster and connecting to it ... 89

Create an Aurora MySQL DB cluster ... 89

Connect to an instance in a DB cluster ... 94

Delete the sample DB cluster, DB subnet group, and VPC ... 96

Creating an Aurora PostgreSQL DB cluster and connecting to it ... 96

Create an Aurora PostgreSQL DB cluster ... 97

Connect to an instance in an Aurora PostgreSQL DB cluster ... 101

Delete the sample DB cluster, DB subnet group, and VPC ... 102

Tutorial: Create a web server and an Amazon Aurora DB cluster ... 103

Create a DB cluster ... 104

Create a web server ... 109

Tutorials and sample code ... 121

Tutorials in this guide ... 121

Tutorials in other AWS guides ... 121

Tutorials and sample code in GitHub ... 122

Configuring your Aurora DB cluster ... 124

Creating a DB cluster ... 125

Prerequisites ... 125

Creating a DB cluster ... 126

Available settings ... 137

Settings that don't apply to Aurora for DB clusters ... 145

Settings that don't apply to Aurora DB instances ... 146

Creating resources with AWS CloudFormation ... 148

Aurora and AWS CloudFormation templates ... 148

Learn more about AWS CloudFormation ... 148

Using Aurora Serverless v1 ... 149

Advantages of Aurora Serverless v1 ... 149

Use cases for Aurora Serverless v1 ... 150

Limitations of Aurora Serverless v1 ... 150

Configuration requirements for Aurora Serverless v1 ... 151

Using TLS/SSL with Aurora Serverless v1 ... 152

How Aurora Serverless v1 works ... 153

Creating an Aurora Serverless v1 DB cluster ... 163

Restoring an Aurora Serverless v1 DB cluster ... 169

Modifying an Aurora Serverless v1 DB cluster ... 173

Scaling Aurora Serverless v1 DB cluster capacity manually ... 175

(5)

Viewing Aurora Serverless v1 DB clusters ... 177

Deleting an Aurora Serverless v1 DB cluster ... 178

Aurora Serverless v1 and Aurora database engine versions ... 180

Using the Data API ... 181

Logging Data API calls with AWS CloudTrail ... 205

Using the query editor ... 207

Using Aurora Serverless v2 (preview) ... 215

How Aurora Serverless v2 (preview) works ... 215

Limitations of Aurora Serverless v2 (preview) ... 218

Creating an Aurora Serverless v2 (preview) DB cluster ... 219

Creating a snapshot of an Aurora Serverless v2 (preview) DB cluster ... 222

Modifying an Aurora Serverless v2 (preview) DB cluster ... 223

Deleting an Aurora Serverless v2 (preview) DB cluster ... 225

Restoring an Aurora Serverless v2 (preview) DB cluster ... 226

Using Aurora global databases ... 228

Overview of Aurora global databases ... 228

Advantages of Amazon Aurora global databases ... 229

Limitations of Aurora global databases ... 229

Getting started with Aurora global databases ... 231

Managing an Aurora global database ... 252

Connecting to an Aurora global database ... 257

Using write forwarding in an Aurora global database ... 258

Using failover in an Aurora global database ... 269

Monitoring an Aurora global database ... 279

Using Aurora global databases with other AWS services ... 282

Upgrading an Amazon Aurora global database ... 283

Connecting to a DB cluster ... 284

Connecting to Aurora MySQL ... 284

Connecting to Aurora PostgreSQL ... 288

Troubleshooting connections ... 290

Using RDS Proxy ... 291

Supported engines and Region availability ... 291

Quotas and limitations ... 291

Planning where to use RDS Proxy ... 293

RDS Proxy concepts and terminology ... 293

Getting started with RDS Proxy ... 298

Managing an RDS Proxy ... 309

Working with RDS Proxy endpoints ... 318

Monitoring RDS Proxy with CloudWatch ... 327

Working with RDS Proxy events ... 332

RDS Proxy examples ... 333

Troubleshooting RDS Proxy ... 335

Using RDS Proxy with AWS CloudFormation ... 340

Working with parameter groups ... 342

Working with DB cluster parameter groups ... 344

Working with DB parameter groups ... 354

Comparing parameter groups ... 365

Specifying DB parameters ... 365

Migrating data to a DB cluster ... 369

Aurora MySQL ... 369

Aurora PostgreSQL ... 369

Managing an Aurora DB cluster ... 370

Stopping and starting a cluster ... 371

Overview of stopping and starting a cluster ... 371

Limitations ... 371

Stopping a DB cluster ... 372

While a DB cluster is stopped ... 373

(6)

Starting a DB cluster ... 373

Modifying an Aurora DB cluster ... 375

Modifying the DB cluster by using the console, CLI, and API ... 375

Modify a DB instance in a DB cluster ... 376

Available settings ... 378

Settings that don't apply to Aurora DB clusters ... 393

Settings that don't apply to Aurora DB instances ... 394

Adding Aurora Replicas ... 395

Managing performance and scaling ... 399

Storage scaling ... 399

Instance scaling ... 403

Read scaling ... 403

Managing connections ... 403

Managing query execution plans ... 404

Cloning a volume for an Aurora DB cluster ... 405

Overview of Aurora cloning ... 405

Limitations of Aurora cloning ... 406

How Aurora cloning works ... 406

Creating an Aurora clone ... 409

Cross-account cloning ... 418

Integrating with AWS services ... 429

Aurora MySQL ... 429

Aurora PostgreSQL ... 429

Using Auto Scaling with Aurora replicas ... 430

Using machine learning with Aurora ... 445

Maintaining an Aurora DB cluster ... 446

Viewing pending maintenance ... 446

Applying updates ... 448

The maintenance window ... 449

Adjusting the maintenance window for a DB cluster ... 451

Automatic minor version upgrades for Aurora DB clusters ... 452

Choosing the frequency of Aurora MySQL maintenance updates ... 452

Rebooting an Aurora DB cluster or instance ... 454

Rebooting a DB instance within an Aurora cluster ... 454

Rebooting an Aurora cluster (Aurora PostgreSQL and Aurora MySQL before version 2.10) ... 455

Rebooting an Aurora MySQL cluster (version 2.10 and higher) ... 455

Checking uptime for Aurora clusters and instances ... 456

Examples of Aurora reboot operations ... 458

Deleting Aurora clusters and instances ... 470

Deleting an Aurora DB cluster ... 470

Deletion protection for Aurora clusters ... 474

Deleting a stopped Aurora cluster ... 475

Deleting Aurora MySQL clusters that are read replicas ... 475

The final snapshot when deleting a cluster ... 475

Deleting a DB instance from an Aurora DB cluster ... 475

Tagging RDS resources ... 477

Overview ... 477

Using tags for access control with IAM ... 478

Using tags to produce detailed billing reports ... 478

Adding, listing, and removing tags ... 479

Using the AWS Tag Editor ... 481

Copying tags to DB cluster snapshots ... 481

Tutorial: Use tags to specify which Aurora DB clusters to stop ... 482

Working with ARNs ... 485

Constructing an ARN ... 485

Getting an existing ARN ... 489

Aurora updates ... 492

(7)

Identifying your Amazon Aurora version ... 492

Backing up and restoring an Aurora DB cluster ... 493

Overview of backing up and restoring ... 494

Backups ... 494

Backup window ... 494

Restoring data ... 496

Backtrack ... 496

Backup storage ... 497

Creating a DB cluster snapshot ... 498

Determining whether the snapshot is available ... 499

Restoring from a DB cluster snapshot ... 500

Parameter groups ... 500

Security groups ... 500

Aurora considerations ... 500

Restoring from a snapshot ... 501

Copying a snapshot ... 503

Limitations ... 503

Snapshot retention ... 503

Copying shared snapshots ... 504

Handling encryption ... 504

Incremental snapshot copying ... 504

Cross-Region copying ... 504

Parameter groups ... 505

Copying a DB cluster snapshot ... 505

Sharing a snapshot ... 513

Sharing public snapshots ... 513

Sharing encrypted snapshots ... 514

Sharing a snapshot ... 516

Exporting snapshot data to Amazon S3 ... 521

Limitations ... 522

Overview of exporting snapshot data ... 522

Setting up access to an S3 bucket ... 523

Using a cross-account KMS key ... 525

Exporting a snapshot to an S3 bucket ... 526

Monitoring snapshot exports ... 529

Canceling a snapshot export ... 530

Failure messages ... 531

Troubleshooting PostgreSQL permissions errors ... 532

File naming convention ... 532

Data conversion ... 533

Point-in-time recovery ... 540

Deleting a snapshot ... 542

Deleting a DB cluster snapshot ... 542

Monitoring metrics in an Aurora DB cluster ... 544

Overview of monitoring ... 545

Monitoring plan ... 545

Performance baseline ... 545

Performance guidelines ... 545

Monitoring tools ... 546

Viewing cluster status and recommendations ... 549

Viewing a DB cluster ... 550

Viewing DB cluster status ... 556

Viewing DB instance status in an Aurora cluster ... 558

Viewing Amazon Aurora recommendations ... 561

Viewing metrics in the Amazon RDS console ... 566

Monitoring Aurora with CloudWatch ... 569

Viewing CloudWatch metrics ... 571

(8)

Creating CloudWatch alarms ... 574

Monitoring DB load with Performance Insights ... 576

Overview of Performance Insights ... 576

Turning Performance Insights on and off ... 580

Enabling the Performance Schema for Aurora MySQL ... 583

Performance Insights policies ... 585

Analyzing metrics with the Performance Insights dashboard ... 588

Retrieving metrics with the Performance Insights API ... 611

Logging Performance Insights calls using AWS CloudTrail ... 624

Analyzing performance with DevOps Guru for RDS ... 627

Benefits of DevOps Guru for RDS ... 627

How DevOps Guru for RDS works ... 628

Setting up DevOps Guru for RDS ... 628

Monitoring the OS with Enhanced Monitoring ... 630

Overview of Enhanced Monitoring ... 630

Setting up and enabling Enhanced Monitoring ... 631

Viewing OS metrics in the RDS console ... 635

Viewing OS metrics using CloudWatch Logs ... 636

Aurora metrics reference ... 637

CloudWatch metrics for Aurora ... 637

CloudWatch dimensions for Aurora ... 653

Availability of Aurora metrics in the Amazon RDS console ... 653

CloudWatch metrics for Performance Insights ... 656

Counter metrics for Performance Insights ... 657

OS metrics in Enhanced Monitoring ... 664

Monitoring events, logs, and database activity streams ... 670

Viewing logs, events, and streams in the Amazon RDS console ... 670

Monitoring Aurora events ... 675

Overview of events for Aurora ... 675

Viewing Amazon RDS events ... 678

Using Amazon RDS event notification ... 679

Creating a rule that triggers on an Amazon Aurora event ... 696

Monitoring Aurora logs ... 699

Viewing and listing database log files ... 699

Downloading a database log file ... 700

Watching a database log file ... 701

Publishing to CloudWatch Logs ... 701

Reading log file contents using REST ... 702

MySQL database log files ... 704

PostgreSQL database log files ... 710

Monitoring Aurora API calls in CloudTrail ... 714

CloudTrail integration with Amazon Aurora ... 714

Amazon Aurora log file entries ... 714

Monitoring Aurora with Database Activity Streams ... 718

Overview ... 718

Aurora MySQL network prerequisites ... 721

Starting a database activity stream ... 722

Getting activity stream status ... 724

Stopping a database activity stream ... 724

Monitoring activity streams ... 725

Managing access to activity streams ... 747

Working with Aurora MySQL ... 750

Overview of Aurora MySQL ... 750

Amazon Aurora MySQL performance enhancements ... 750

Aurora MySQL and spatial data ... 751

Aurora MySQL version 3 compatible with MySQL 8.0 ... 752

Aurora MySQL version 2 compatible with MySQL 5.7 ... 777

(9)

Security with Aurora MySQL ... 778

Master user privileges with Aurora MySQL ... 779

Using SSL/TLS with Aurora MySQL DB clusters ... 780

Updating applications for new SSL/TLS certificates ... 782

Determining whether any applications are connecting to your Aurora MySQL DB cluster using SSL ... 783

Determining whether a client requires certificate verification to connect ... 783

Updating your application trust store ... 784

Example Java code for establishing SSL connections ... 785

Migrating data to Aurora MySQL ... 786

Migrating from an external MySQL database to Aurora MySQL ... 788

Migrating from a MySQL DB instance to Aurora MySQL ... 802

Managing Aurora MySQL ... 817

Managing performance and scaling for Amazon Aurora MySQL ... 817

Backtracking a DB cluster ... 821

Testing Amazon Aurora using fault injection queries ... 834

Altering tables in Amazon Aurora using fast DDL ... 837

Displaying volume status for an Aurora DB cluster ... 842

Tuning Aurora MySQL with wait events and thread states ... 842

Essential concepts for Aurora MySQL tuning ... 843

Tuning Aurora MySQL with wait events ... 845

Tuning Aurora MySQL with thread states ... 881

Parallel query for Aurora MySQL ... 886

Overview of parallel query ... 887

Planning for a parallel query cluster ... 890

Creating a parallel query cluster ... 891

Turning parallel query on and off ... 895

Upgrading a parallel query cluster ... 898

Performance tuning ... 899

Creating schema objects ... 899

Verifying parallel query usage ... 900

Monitoring ... 902

Parallel query and SQL constructs ... 906

Advanced Auditing with Aurora MySQL ... 919

Enabling Advanced Auditing ... 919

Viewing audit logs ... 921

Audit log details ... 922

Single-master replication with Aurora MySQL ... 922

Aurora replicas ... 923

Options ... 924

Performance ... 924

Zero-downtime restart (ZDR) ... 925

Monitoring ... 926

Replicating Amazon Aurora MySQL DB clusters across AWS Regions ... 927

Replication between Aurora and MySQL or between Aurora and another Aurora DB cluster (binary log replication) ... 937

Using GTID-based replication ... 959

Working with multi-master clusters ... 963

Overview of multi-master clusters ... 963

Creating a multi-master cluster ... 968

Managing multi-master clusters ... 973

Application considerations ... 976

Performance considerations ... 985

Approaches to multi-master clusters ... 987

Integrating Aurora MySQL with AWS services ... 988

Authorizing Aurora MySQL to access AWS services ... 989

Loading data from text files in Amazon S3 ... 1001

(10)

Saving data into text files in Amazon S3 ... 1008

Invoking a Lambda function from Aurora MySQL ... 1014

Publishing Aurora MySQL logs to CloudWatch Logs ... 1021

Using machine learning with Aurora MySQL ... 1024

Aurora MySQL lab mode ... 1036

Aurora lab mode features ... 1037

Best practices with Amazon Aurora MySQL ... 1037

Determining which DB instance you are connected to ... 1038

Best practices for using AWS features with Aurora MySQL ... 1038

Best practices for Aurora MySQL performance and scaling ... 1040

Best practices for Aurora MySQL high availability ... 1044

Best practices for limiting certain MySQL features with Aurora MySQL ... 1045

Aurora MySQL reference ... 1046

Configuration parameters ... 1046

MySQL parameters that don't apply to Aurora MySQL ... 1065

MySQL status variables that don't apply to Aurora MySQL ... 1066

Aurora MySQL wait events ... 1067

Aurora MySQL thread states ... 1071

Aurora MySQL isolation levels ... 1074

Aurora MySQL hints ... 1078

Stored procedures ... 1080

Aurora MySQL updates ... 1086

Version Numbers and Special Versions ... 1087

Preparing for Aurora MySQL version 1 end of life ... 1090

Upgrading Amazon Aurora MySQL DB clusters ... 1092

Database engine updates for Amazon Aurora MySQL version 3 ... 1112

Database engine updates for Amazon Aurora MySQL version 2 ... 1113

Database engine updates for Amazon Aurora MySQL version 1 ... 1200

Database engine updates for Aurora MySQL Serverless clusters ... 1251

MySQL bugs fixed by Aurora MySQL updates ... 1254

Security vulnerabilities fixed in Amazon Aurora MySQL ... 1275

Working with Aurora PostgreSQL ... 1279

Security with Aurora PostgreSQL ... 1280

Restricting password management ... 1281

Securing Aurora PostgreSQL data with SSL/TLS ... 1281

Updating applications for new SSL/TLS certificates ... 1285

Determining whether applications are connecting to Aurora PostgreSQL DB clusters using SSL 1285 Determining whether a client requires certificate verification in order to connect ... 1286

Updating your application trust store ... 1286

Using SSL/TLS connections for different types of applications ... 1287

Migrating data to Aurora PostgreSQL ... 1288

Migrating an RDS for PostgreSQL DB instance using a snapshot ... 1289

Migrating an RDS for PostgreSQL DB instance using an Aurora read replica ... 1293

Babelfish for Aurora PostgreSQL ... 1302

Babelfish architecture ... 1302

Using Babelfish to migrate to PostgreSQL ... 1306

Creating an Aurora PostgreSQL cluster with Babelfish ... 1308

Connecting to a DB cluster with Babelfish turned on ... 1315

Querying a database for object information ... 1323

Querying Babelfish to find Babelfish details ... 1324

Differences between Aurora PostgreSQL with Babelfish and SQL Server ... 1327

Using Aurora PostgreSQL extensions with Babelfish ... 1340

Managing Babelfish error handling ... 1345

Configuring a database for Babelfish ... 1350

Babelfish collation support ... 1354

Troubleshooting for Babelfish ... 1360

Turning off Babelfish ... 1362

(11)

Babelfish versions ... 1363

Managing Aurora PostgreSQL ... 1365

Scaling Aurora PostgreSQL DB instances ... 1365

Maximum connections ... 1365

Temporary storage limits ... 1367

Testing Amazon Aurora PostgreSQL by using fault injection queries ... 1369

Displaying volume status for an Aurora DB cluster ... 1372

Specifying the RAM disk for the stats_temp_directory ... 1373

Scheduling maintenance with the pg_cron extension ... 1375

Tuning with wait events for Aurora PostgreSQL ... 1381

Essential concepts for Aurora PostgreSQL tuning ... 1382

Aurora PostgreSQL wait events ... 1385

Client:ClientRead ... 1386

Client:ClientWrite ... 1389

CPU ... 1390

IO:BufFileRead and IO:BufFileWrite ... 1394

IO:DataFileRead ... 1400

IO:XactSync ... 1406

ipc:damrecordtxack ... 1408

Lock:advisory ... 1408

Lock:extend ... 1410

Lock:Relation ... 1412

Lock:transactionid ... 1415

Lock:tuple ... 1418

lwlock:buffer_content (BufferContent) ... 1420

LWLock:buffer_mapping ... 1422

LWLock:BufferIO ... 1423

LWLock:lock_manager ... 1425

Timeout:PgSleep ... 1428

Best practices with Aurora PostgreSQL ... 1428

Fast failover ... 1428

Troubleshooting storage issues ... 1436

Replication with Aurora PostgreSQL ... 1436

Aurora Replicas ... 1436

Monitoring replication ... 1437

Using logical replication ... 1437

Integrating Aurora PostgreSQL with AWS services ... 1442

Importing S3 data into Aurora PostgreSQL ... 1443

Overview of importing S3 data ... 1443

Setting up access to an Amazon S3 bucket ... 1444

Using the aws_s3.table_import_from_s3 function to import Amazon S3 data ... 1449

Function reference ... 1451

Exporting PostgreSQL data to Amazon S3 ... 1455

Overview of exporting to S3 ... 1455

Verify that your Aurora PostgreSQL version supports exports ... 1456

Specifying the Amazon S3 file path to export to ... 1456

Setting up access to an Amazon S3 bucket ... 1457

Exporting query data using the aws_s3.query_export_to_s3 function ... 1460

Troubleshooting access to Amazon S3 ... 1462

Function reference ... 1462

Managing query execution plans for Aurora PostgreSQL ... 1465

Enabling query plan management ... 1466

Upgrading query plan management ... 1467

Basics ... 1467

Best practices for query plan management ... 1470

Examining plans in the dba_plans view ... 1471

Capturing execution plans ... 1474

(12)

Using managed plans ... 1475

Maintaining execution plans ... 1478

Parameter reference for query plan management ... 1482

Function reference for query plan management ... 1485

Publishing Aurora PostgreSQL logs to CloudWatch Logs ... 1492

Publishing logs to Amazon CloudWatch ... 1492

Monitoring log events in Amazon CloudWatch ... 1495

Analyze Aurora PostgreSQL logs using CloudWatch Logs Insights ... 1495

Using machine learning with Aurora PostgreSQL ... 1499

Prequisites ... 1500

Enabling Aurora machine learning ... 1500

Using Amazon Comprehend for natural language processing ... 1502

Exporting data to Amazon S3 for SageMaker model training ... 1504

Using SageMaker to run your own ML models ... 1504

Best practices with Aurora machine learning ... 1507

Monitoring Aurora machine learning ... 1511

Function reference ... 1512

Manually setting up IAM roles using the AWS CLI ... 1514

Fast recovery after failover ... 1518

Configuring cluster cache management ... 1518

Monitoring the buffer cache ... 1521

Invoking a Lambda function from Aurora PostgreSQL ... 1522

Step 1: Configure outbound connections ... 1523

Step 2: Configure IAM for your cluster and Lambda ... 1523

Step 3: Install the extension ... 1524

Step 4: Use Lambda helper functions ... 1525

Step 5: Invoke a Lambda function ... 1526

Lambda function error messages ... 1529

Lambda function reference ... 1529

Working with extensions and Aurora PostgreSQL ... 1532

Using the oracle_fdw extension to access foreign data in Aurora PostgreSQL ... 1532

Managing partitions with the pg_partman extension ... 1535

Overview of the PostgreSQL pg_partman extension ... 1536

Enabling the pg_partman extension ... 1536

Configuring partitions using the create_parent function ... 1537

Configuring partition maintenance using the run_maintenance_proc function ... 1538

Using Kerberos authentication ... 1539

Availability ... 1539

Overview of Kerberos authentication ... 1540

Setting up ... 1541

Managing a DB cluster in a Domain ... 1550

Connecting with Kerberos authentication ... 1551

Aurora PostgreSQL reference ... 1552

Aurora PostgreSQL parameters ... 1552

Aurora PostgreSQL wait events ... 1575

Aurora PostgreSQL functions reference ... 1593

Aurora PostgreSQL updates ... 1602

Identifying versions of Amazon Aurora PostgreSQL ... 1602

Aurora PostgreSQL releases ... 1604

Extension versions for Aurora PostgreSQL ... 1679

Upgrading the PostgreSQL DB engine ... 1692

Using a long-term support (LTS) release ... 1701

Best practices with Aurora ... 1703

Basic operational guidelines for Amazon Aurora ... 1703

DB instance RAM recommendations ... 1703

Monitoring Amazon Aurora ... 1704

Working with DB parameter groups and DB cluster parameter groups ... 1704

(13)

Amazon Aurora best practices presentation video ... 1704

Performing an Aurora proof of concept ... 1705

Overview of an Aurora proof of concept ... 1705

1. Identify your objectives ... 1705

2. Understand your workload characteristics ... 1706

3. Practice with the console or CLI ... 1707

Practice with the console ... 1707

Practice with the AWS CLI ... 1707

4. Create your Aurora cluster ... 1708

5. Set up your schema ... 1709

6. Import your data ... 1709

7. Port your SQL code ... 1710

8. Specify configuration settings ... 1710

9. Connect to Aurora ... 1711

10. Run your workload ... 1712

11. Measure performance ... 1712

12. Exercise Aurora high availability ... 1714

13. What to do next ... 1715

Security ... 1717

Database authentication ... 1718

Password authentication ... 1719

IAM database authentication ... 1719

Kerberos authentication ... 1719

Data protection ... 1720

Data encryption ... 1720

Internetwork traffic privacy ... 1734

Identity and access management ... 1735

Audience ... 1735

Authenticating with identities ... 1735

Managing access using policies ... 1737

How Amazon Aurora works with IAM ... 1738

Identity-based policy examples ... 1741

Cross-service confused deputy prevention ... 1752

IAM database authentication ... 1754

Troubleshooting ... 1780

Logging and monitoring ... 1782

Compliance validation ... 1784

Resilience ... 1785

Backup and restore ... 1785

Replication ... 1785

Failover ... 1785

Infrastructure security ... 1787

Security groups ... 1787

Public accessibility ... 1787

VPC endpoints (AWS PrivateLink) ... 1788

Considerations ... 1788

Availability ... 1788

Creating an interface VPC endpoint ... 1789

Creating a VPC endpoint policy ... 1789

Security best practices ... 1790

Controlling access with security groups ... 1791

VPC security groups ... 1791

Security group scenario ... 1791

Creating a VPC security group ... 1792

Associating with a DB instance ... 1792

Associating with a DB cluster ... 1792

Master user account privileges ... 1793

(14)

Service-linked roles ... 1794

Service-linked role permissions for Amazon Aurora ... 1794

Using Amazon Aurora with Amazon VPC ... 1798

Working with a DB instance in a VPC ... 1798

Creating a VPC for Aurora ... 1804

Scenarios for accessing a DB instance in a VPC ... 1811

Tutorial: Create an Amazon VPC for use with a DB instance ... 1816

Quotas and constraints ... 1822

Quotas in Amazon Aurora ... 1822

Naming constraints in Amazon Aurora ... 1823

Amazon Aurora size limits ... 1824

Troubleshooting ... 1825

Can't connect to DB instance ... 1825

Testing the DB instance connection ... 1826

Troubleshooting connection authentication ... 1827

Security issues ... 1827

Error message "failed to retrieve account attributes, certain console functions may be impaired." ... 1827

Resetting the DB instance owner password ... 1827

DB instance outage or reboot ... 1827

Parameter changes not taking effect ... 1828

Aurora MySQL out of memory issues ... 1828

Aurora MySQL replication issues ... 1829

Diagnosing and resolving lag between read replicas ... 1829

Diagnosing and resolving a MySQL read replication failure ... 1830

Replication stopped error ... 1831

Amazon RDS API reference ... 1833

Using the Query API ... 1833

Query parameters ... 1833

Query request authentication ... 1833

Troubleshooting applications ... 1834

Retrieving errors ... 1834

Troubleshooting tips ... 1834

Document history ... 1835

AWS glossary ... 1873

(15)

What is Amazon Aurora?

Amazon Aurora (Aurora) is a fully managed relational database engine that's compatible with MySQL and PostgreSQL. You already know how MySQL and PostgreSQL combine the speed and reliability of high-end commercial databases with the simplicity and cost-effectiveness of open-source databases. The code, tools, and applications you use today with your existing MySQL and PostgreSQL databases can be used with Aurora. With some workloads, Aurora can deliver up to five times the throughput of MySQL and up to three times the throughput of PostgreSQL without requiring changes to most of your existing applications.

Aurora includes a high-performance storage subsystem. Its MySQL- and PostgreSQL-compatible database engines are customized to take advantage of that fast distributed storage. The underlying storage grows automatically as needed. An Aurora cluster volume can grow to a maximum size of 128 tebibytes (TiB). Aurora also automates and standardizes database clustering and replication, which are typically among the most challenging aspects of database configuration and administration.

Aurora is part of the managed database service Amazon Relational Database Service (Amazon RDS).

Amazon RDS is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. If you are not already familiar with Amazon RDS, see the Amazon Relational Database Service User Guide.

The following points illustrate how Aurora relates to the standard MySQL and PostgreSQL engines available in Amazon RDS:

• You choose Aurora as the DB engine option when setting up new database servers through Amazon RDS.

• Aurora takes advantage of the familiar Amazon Relational Database Service (Amazon RDS) features for management and administration. Aurora uses the Amazon RDS AWS Management Console interface, AWS CLI commands, and API operations to handle routine database tasks such as provisioning, patching, backup, recovery, failure detection, and repair.

• Aurora management operations typically involve entire clusters of database servers that are

synchronized through replication, instead of individual database instances. The automatic clustering, replication, and storage allocation make it simple and cost-effective to set up, operate, and scale your largest MySQL and PostgreSQL deployments.

• You can bring data from Amazon RDS for MySQL and Amazon RDS for PostgreSQL into Aurora by creating and restoring snapshots, or by setting up one-way replication. You can use push-button migration tools to convert your existing Amazon RDS for MySQL and Amazon RDS for PostgreSQL applications to Aurora.

Before using Amazon Aurora, you should complete the steps in Setting up your environment for Amazon Aurora (p. 84), and then review the concepts and features of Aurora in Amazon Aurora DB clusters (p. 3).

Topics

• Amazon Aurora DB clusters (p. 3)

• Amazon Aurora versions (p. 5)

• Regions and Availability Zones (p. 11)

• Supported features in Amazon Aurora by AWS Region and Aurora DB engine (p. 19)

• Amazon Aurora connection management (p. 32)

• Aurora DB instance classes (p. 54)

• Amazon Aurora storage and reliability (p. 64)

(16)

• Amazon Aurora security (p. 67)

• High availability for Amazon Aurora (p. 68)

• Replication with Amazon Aurora (p. 70)

• DB instance billing for Aurora (p. 72)

(17)

Aurora DB clusters

Amazon Aurora DB clusters

An Amazon Aurora DB cluster consists of one or more DB instances and a cluster volume that manages the data for those DB instances. An Aurora cluster volume is a virtual database storage volume that spans multiple Availability Zones, with each Availability Zone having a copy of the DB cluster data. Two types of DB instances make up an Aurora DB cluster:

Primary DB instance – Supports read and write operations, and performs all of the data modifications to the cluster volume. Each Aurora DB cluster has one primary DB instance.

Aurora Replica – Connects to the same storage volume as the primary DB instance and supports only read operations. Each Aurora DB cluster can have up to 15 Aurora Replicas in addition to the primary DB instance. Maintain high availability by locating Aurora Replicas in separate Availability Zones. Aurora automatically fails over to an Aurora Replica in case the primary DB instance becomes unavailable. You can specify the failover priority for Aurora Replicas. Aurora Replicas can also offload read workloads from the primary DB instance.

The following diagram illustrates the relationship between the cluster volume, the primary DB instance, and Aurora Replicas in an Aurora DB cluster.

NoteThe preceding information applies to all the Aurora clusters that use single-master replication.

These include provisioned clusters, parallel query clusters, global database clusters, serverless clusters, and all MySQL 8.0-compatible, 5.7-compatible, and PostgreSQL-compatible clusters.

Aurora clusters that use multi-master replication have a different arrangement of read/write and read-only DB instances. All DB instances in a multi-master cluster can perform write operations. There isn't a single DB instance that performs all the write operations, and there aren't any read-only DB instances. Therefore, the terms primary instance and Aurora Replica don't apply to multi-master clusters. When we discuss clusters that might use multi-master replication, we refer to writer DB instances and reader DB instances.

(18)

Aurora DB clusters

The Aurora cluster illustrates the separation of compute capacity and storage. For example, an Aurora configuration with only a single DB instance is still a cluster, because the underlying storage volume involves multiple storage nodes distributed across multiple Availability Zones (AZs).

(19)

Aurora versions

Amazon Aurora versions

Amazon Aurora reuses code and maintains compatibility with the underlying MySQL and PostgreSQL DB engines. However, Aurora has its own version numbers, release cycle, time line for version deprecation, and so on. The following section explains the common points and differences. This information can help you to decide such things as which version to choose and how to verify which features and fixes are available in each version. It can also help you to decide how often to upgrade and how to plan your upgrade process.

Topics

• Relational databases that are available on Aurora (p. 5)

• Differences in version numbers between community databases and Aurora (p. 5)

• Amazon Aurora major versions (p. 6)

• Amazon Aurora minor versions (p. 7)

• Amazon Aurora patch versions (p. 7)

• Learning what's new in each Amazon Aurora version (p. 7)

• Specifying the Amazon Aurora database version for your database cluster (p. 7)

• Default Amazon Aurora versions (p. 7)

• Automatic minor version upgrades (p. 8)

• How long Amazon Aurora major versions remain available (p. 8)

• How often Amazon Aurora minor versions are released (p. 9)

• How long Amazon Aurora minor versions remain available (p. 9)

• Long-term support for selected Amazon Aurora minor versions (p. 9)

• Manually controlling if and when your database cluster is upgraded to new versions (p. 9)

• Required Amazon Aurora upgrades (p. 10)

• Testing your DB cluster with a new Aurora version before upgrading (p. 10)

Relational databases that are available on Aurora

The following relational databases are available on Aurora:

• Amazon Aurora MySQL-Compatible Edition. For usage information, see Working with Amazon Aurora MySQL (p. 750). For a detailed list of available versions, see Database engine updates for Amazon Aurora MySQL (p. 1086).

• Amazon Aurora PostgreSQL-Compatible Edition. For usage information, see Working with Amazon Aurora PostgreSQL (p. 1279). For a detailed list of available versions, see Amazon Aurora PostgreSQL updates (p. 1602).

Differences in version numbers between community databases and Aurora

Each Amazon Aurora version is compatible with a specific community database version of either MySQL or PostgreSQL. You can find the community version of your database using the version function and the Aurora version using the aurora_version function.

Examples for Aurora MySQL and Aurora PostgreSQL are shown following.

(20)

Amazon Aurora major versions

mysql> select version();

+---+

| version() | +---+

| 5.7.12 | +---+

mysql> select aurora_version(), @@aurora_version;

+---+---+

| aurora_version() | @@aurora_version | +---+---+

| 2.08.1 | 2.08.1 | +---+---+

postgres=> select version();

--- PostgreSQL 11.7 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.9.3, 64-bit (1 row)

postgres=> select aurora_version();

aurora_version --- 3.2.2

For more information, see Checking Aurora MySQL versions using SQL (p. 1088) and Identifying versions of Amazon Aurora PostgreSQL (p. 1602).

Amazon Aurora major versions

Aurora versions use the major.minor.patch scheme. An Aurora major version refers to the MySQL or PostgreSQL community major version that Aurora is compatible with. The following example shows the mapping between community MySQL and PostgreSQL versions and the corresponding Aurora versions.

Community major version Aurora major version

MySQL 5.6 Aurora MySQL 1

MySQL 5.7 Aurora MySQL 2

MySQL 8.0 Aurora MySQL 3

PostgreSQL 9.6 Aurora PostgreSQL 1

PostgreSQL 10 Aurora PostgreSQL 2. Not applicable for version

10.18 and higher versions. For these versions, the Aurora version is the same as the major.minor version of the PostgreSQL community version and a third digit in patch location.

PostgreSQL 11 Aurora PostgreSQL 3. Not applicable for version

11.13 amd higher versions. For these versions, the Aurora version is the same as the major.minor version of the PostgreSQL community version and a third digit in patch location.

PostgreSQL 12 Aurora PostgreSQL 4. Not applicable for version

12.8 and higher versions. For these versions, the Aurora version is the same as the major.minor

(21)

Amazon Aurora minor versions

Community major version Aurora major version

version of the PostgreSQL community version and a third digit in patch location.

PostgreSQL 13 Aurora PostgreSQL 4. Not applicable for version

13.3 and higher versions. For these versions, the Aurora version is the same as the major.minor version of the PostgreSQL community version and a third digit in patch location.

Amazon Aurora minor versions

Aurora versions use the major.minor.patch scheme. An Aurora minor version provides incremental community and Aurora-specific improvements to the service, for example new features and bug fixes.

Aurora minor versions are always mapped to a specific community version. However, some community versions might not have an Aurora equivalent.

Amazon Aurora patch versions

Aurora versions use the major.minor.patch scheme. An Aurora patch version includes important bug fixes added to a minor version after its initial release (for example, Aurora MySQL 2.04.0, 2.04.1, ..., 2.04.9). While each new minor version provides new Aurora features, new patch versions within a specific minor version are primarily used to resolve important issues.

For more information on patching, see Maintaining an Amazon Aurora DB cluster (p. 446).

Learning what's new in each Amazon Aurora version

Each new Aurora version comes with release notes that list the new features, fixes, other enhancements, and so on that apply to each version.

For Aurora MySQL release notes, see Database engine updates for Amazon Aurora MySQL version 2 (p. 1113) and Database engine updates for Amazon Aurora MySQL version 1 (p. 1200). For Aurora PostgreSQL release notes, see Amazon Aurora PostgreSQL releases and engine versions (p. 1604).

Specifying the Amazon Aurora database version for your database cluster

You can specify any currently available version (major and minor) when creating a new DB cluster using the Create database operation in the AWS Management Console, the AWS CLI, or the

CreateDBCluster API operation. Not every Aurora database version is available in every AWS Region.

To learn how to create Aurora clusters, see Creating an Amazon Aurora DB cluster (p. 125). To learn how to change the version of an existing Aurora cluster, see Modifying an Amazon Aurora DB cluster (p. 375).

Default Amazon Aurora versions

When a new Aurora minor version contains significant improvements compared to a previous one, it's marked as the default version for new DB clusters. Typically, we release two default versions for each major version per year.

(22)

Automatic minor version upgrades

We recommend that you keep your DB cluster upgraded to the most current default minor version, because that version contains the latest security and functionality fixes.

Automatic minor version upgrades

You can stay up to date with Aurora minor versions by turning on Auto minor version upgrade for every DB instance in the Aurora cluster. Aurora only performs the automatic upgrade if all DB instances in your cluster have this setting turned on. Auto minor version upgrades are performed to the default minor version. We typically schedule automatic upgrades twice a year for DB clusters that have the Auto minor version upgrade setting set to Yes. These upgrades are started during the maintenance window that you specify for your cluster.

For more information, see Enabling automatic upgrades between minor Aurora MySQL versions (p. 1093) and Automatic minor version upgrades for PostgreSQL (p. 1699).

How long Amazon Aurora major versions remain available

Amazon Aurora major versions remain available at least until community end of life for the

corresponding community version. You can use the following dates to plan your testing and upgrade cycles. These dates represent the earliest date that an upgrade to a newer version might be required. If Amazon extends support for an Aurora version for longer than originally stated, we plan to update this table to reflect the later date.

Database community version Aurora version Expected date for upgrading to a newer version

MySQL 5.6 1 February 28, 2023, 00:00:00

UTC

MySQL 5.7 2 February 29, 2024

MySQL 8.0 3

PostgreSQL 9.6 1 January 31, 2022

PostgreSQL 10 January 31, 2023

PostgreSQL 11 January 31, 2024

PostgreSQL 12 January 31, 2025

PostgreSQL 13

Varies depending on the minor version of the Aurora PostgreSQL release. For more information, see Amazon Aurora major versions (p. 6).

January 31, 2026

Before we ask that you upgrade to a newer major version and to help you plan, we provide a reminder at least 12 months in advance. We do so to communicate the detailed upgrade process. Details include the timing of certain milestones, the impact on your DB clusters, and the actions that we recommend that you take. We always recommend that you thoroughly test your applications against new database versions before performing a major version upgrade.

After this 12-month period, an automatic upgrade to the subsequent major version might be applied to any database cluster still running the older version. If so, the upgrade is started during scheduled maintenance windows.

(23)

How often Amazon Aurora minor versions are released

How often Amazon Aurora minor versions are released

In general, Amazon Aurora minor versions are released quarterly. The release schedule might vary to pick up additional features or fixes.

How long Amazon Aurora minor versions remain available

We intend to make each Amazon Aurora minor version of a particular major version available for at least 12 months. At the end of this period, Aurora might apply an auto minor version upgrade to the subsequent default minor version. Such an upgrade is started during the scheduled maintenance window for any cluster that is still running the older minor version.

We might replace a minor version of a particular major version sooner than the usual 12-month period if there are critical matters such as security issues, or if the major version has been deprecated.

Before beginning automatic upgrades of minor versions, we generally provide a reminder three months in advance. We do so to communicate the detailed upgrade process. Details include the timing of certain milestones, the impact on your DB clusters, and the actions that we recommend that you take.

Long-term support for selected Amazon Aurora minor versions

For each Aurora major version, certain minor versions are designated as long-term-support (LTS) versions and made available for at least three years. That is, at least one minor version per major version is made available for longer than the typical 12 months. We generally provide a reminder six months before the end of this period. We do so to communicate the detailed upgrade process. Details include the timing of certain milestones, the impact on your DB clusters, and the actions that we recommend that you take.

LTS minor versions include only bug fixes (through patch versions). An LTS version doesn't include new features released after its introduction. Once a year, DB clusters running on an LTS minor version are patched to the latest patch version of the LTS release. We do this patching to help ensure that you benefit from cumulative security and stability fixes. We might patch an LTS minor version more frequently if there are critical fixes, such as for security, that need to be applied.

NoteIf you want to remain on an LTS minor version for the duration of its lifecycle, make sure to turn off Auto minor version upgrade for your DB instances. To avoid automatically upgrading your DB cluster from the LTS minor version, set Auto minor version upgrade to No on all DB instances in your Aurora cluster.

For the version numbers of all Aurora LTS versions, see Aurora MySQL long-term support (LTS) releases (p. 1089) and Aurora PostgreSQL long-term support (LTS) releases (p. 1701).

Manually controlling if and when your database cluster is upgraded to new versions

Auto minor version upgrades are performed to the default minor version. We typically schedule automatic upgrades twice a year for DB clusters that have the Auto minor version upgrade setting set to Yes. These upgrades are started during customer-specified maintenance windows. If you want to turn off automatic minor version upgrades, set Auto minor version upgrade to No on any DB instance within

(24)

Required Amazon Aurora upgrades

an Aurora cluster. Aurora performs an automatic minor version upgrade only if all DB instances in your cluster have the setting turned on.

Because major version upgrades involve some compatibility risk, they don't occur automatically. You must initiate these, except in the case of a major version deprecation, as explained earlier. We always recommend that you thoroughly test your applications with new database versions before performing a major version upgrade.

For more information about upgrading a DB cluster to a new Aurora major version, see Upgrading Amazon Aurora MySQL DB clusters (p. 1092) and Upgrading the PostgreSQL DB engine for Aurora PostgreSQL (p. 1692).

Required Amazon Aurora upgrades

For certain critical fixes, we might perform a managed upgrade to a newer patch level within the same minor version. These required upgrades happen even if Auto minor version upgrade is turned off. Before doing so, we communicate the detailed upgrade process. Details include the timing of certain milestones, the impact on your DB clusters, and the actions that we recommend that you take. Such managed upgrades are performed automatically. Each such upgrade is started within the cluster maintenance window.

Testing your DB cluster with a new Aurora version before upgrading

You can test the upgrade process and how the new version works with your application and workload.

Use one of the following methods:

• Clone your cluster using the Amazon Aurora fast database clone feature. Perform the upgrade and any post-upgrade testing on the new cluster.

• Restore from a cluster snapshot to create a new Aurora cluster. You can create a cluster snapshot yourself from an existing Aurora cluster. Aurora also automatically creates periodic snapshots for you for each of your clusters. You can then initiate a version upgrade for the new cluster. You can experiment on the upgraded copy of your cluster before deciding whether to upgrade your original cluster.

For more information on these ways to create new clusters for testing, see Cloning a volume for an Aurora DB cluster (p. 405) and Creating a DB cluster snapshot (p. 498).

(25)

Regions and Availability Zones

Regions and Availability Zones

Amazon cloud computing resources are hosted in multiple locations world-wide. These locations are composed of AWS Regions and Availability Zones. Each AWS Region is a separate geographic area. Each AWS Region has multiple, isolated locations known as Availability Zones.

NoteFor information about finding the Availability Zones for an AWS Region, see Describe Your Availability Zones in the Amazon EC2 documentation.

Amazon operates state-of-the-art, highly-available data centers. Although rare, failures can occur that affect the availability of DB instances that are in the same location. If you host all your DB instances in a single location that is affected by such a failure, none of your DB instances will be available.

It is important to remember that each AWS Region is completely independent. Any Amazon RDS activity you initiate (for example, creating database instances or listing available database instances) runs only in your current default AWS Region. The default AWS Region can be changed in the console, by setting the AWS_DEFAULT_REGION environment variable, or it can be overridden by using the --region parameter with the AWS Command Line Interface (AWS CLI). For more information, see Configuring the AWS Command Line Interface, specifically the sections about environment variables and command line options.

Amazon RDS supports special AWS Regions called AWS GovCloud (US) that are designed to allow US government agencies and customers to move more sensitive workloads into the cloud. The AWS GovCloud (US) Regions address the US government's specific regulatory and compliance requirements.

For more information, see What is AWS GovCloud (US)?

To create or work with an Amazon RDS DB instance in a specific AWS Region, use the corresponding regional service endpoint.

NoteAurora doesn't support Local Zones.

AWS Regions

Each AWS Region is designed to be isolated from the other AWS Regions. This design achieves the greatest possible fault tolerance and stability.

(26)

AWS Regions

When you view your resources, you see only the resources that are tied to the AWS Region that you specified. This is because AWS Regions are isolated from each other, and we don't automatically replicate resources across AWS Regions.

Region availability

When you work with an Aurora DB cluster using the command line interface or API operations, make sure that you specify its regional endpoint.

Topics

• Aurora MySQL Region availability (p. 12)

• Aurora PostgreSQL Region availability (p. 14)

Aurora MySQL Region availability

The following table shows the AWS Regions where Aurora MySQL is currently available and the endpoint for each Region.

Region

Name Region Endpoint Protocol

US East

(Ohio) us-east-2 rds.us-east-2.amazonaws.com HTTPS

US East (N.

Virginia) us-east-1 rds.us-east-1.amazonaws.com HTTPS

US West (N.

California)

us-west-1 rds.us-west-1.amazonaws.com HTTPS

US West

(Oregon) us-west-2 rds.us-west-2.amazonaws.com HTTPS

Africa (Cape Town)

af-south-1 rds.af-south-1.amazonaws.com HTTPS

Asia Pacific (Hong Kong)

ap-east-1 rds.ap-east-1.amazonaws.com HTTPS

Asia Pacific (Jakarta)

ap-

southeast-3 rds.ap-southeast-3.amazonaws.com HTTPS

Asia Pacific (Mumbai)

ap-

south-1 rds.ap-south-1.amazonaws.com HTTPS

AsiaPacific (Osaka)

ap-northeast-3 rds.ap-northeast-3.amazonaws.com HTTPS

(27)

AWS Regions

Region

Name Region Endpoint Protocol

Asia Pacific (Seoul)

ap-

northeast-2 rds.ap-northeast-2.amazonaws.com HTTPS

AsiaPacific (Singapore)

ap-southeast-1 rds.ap-southeast-1.amazonaws.com HTTPS

Asia Pacific (Sydney)

ap-

southeast-2 rds.ap-southeast-2.amazonaws.com HTTPS

AsiaPacific (Tokyo)

ap-northeast-1 rds.ap-northeast-1.amazonaws.com HTTPS

Canada

(Central) ca-

central-1 rds.ca-central-1.amazonaws.com HTTPS

Europe

(Frankfurt) eu-

central-1 rds.eu-central-1.amazonaws.com HTTPS

Europe

(Ireland) eu-west-1 rds.eu-west-1.amazonaws.com HTTPS

Europe

(London) eu-west-2 rds.eu-west-2.amazonaws.com HTTPS

Europe

(Milan) eu-

south-1 rds.eu-south-1.amazonaws.com HTTPS

Europe

(Paris) eu-west-3 rds.eu-west-3.amazonaws.com HTTPS

Europe

(Stockholm) eu-north-1 rds.eu-north-1.amazonaws.com HTTPS Middle

East(Bahrain)

me-

south-1 rds.me-south-1.amazonaws.com HTTPS

South America (SãoPaulo)

sa-east-1 rds.sa-east-1.amazonaws.com HTTPS

AWSGovCloud (US-East)

us-gov-

east-1 rds.us-gov-east-1.amazonaws.com HTTPS

AWS GovCloud (US-West)

us-gov-

west-1 rds.us-gov-west-1.amazonaws.com HTTPS

(28)

AWS Regions

Aurora PostgreSQL Region availability

The following table shows the AWS Regions where Aurora PostgreSQL is currently available and the endpoint for each Region.

Region

Name Region Endpoint Protocol

US East

(Ohio) us-east-2 rds.us-east-2.amazonaws.com HTTPS

US East (N.

Virginia) us-east-1 rds.us-east-1.amazonaws.com HTTPS

US West (N.

California)

us-west-1 rds.us-west-1.amazonaws.com HTTPS

US West

(Oregon) us-west-2 rds.us-west-2.amazonaws.com HTTPS

Africa (Cape Town)

af-south-1 rds.af-south-1.amazonaws.com HTTPS

Asia Pacific (Hong Kong)

ap-east-1 rds.ap-east-1.amazonaws.com HTTPS

Asia Pacific (Jakarta)

ap-

southeast-3 rds.ap-southeast-3.amazonaws.com HTTPS

AsiaPacific (Mumbai)

ap-south-1 rds.ap-south-1.amazonaws.com HTTPS

Asia Pacific (Osaka)

ap-

northeast-3 rds.ap-northeast-3.amazonaws.com HTTPS

Asia Pacific (Seoul)

ap-

northeast-2 rds.ap-northeast-2.amazonaws.com HTTPS

AsiaPacific (Singapore)

ap-southeast-1 rds.ap-southeast-1.amazonaws.com HTTPS

Asia Pacific (Sydney)

ap-

southeast-2 rds.ap-southeast-2.amazonaws.com HTTPS

AsiaPacific (Tokyo)

ap-northeast-1 rds.ap-northeast-1.amazonaws.com HTTPS

(29)

Availability Zones

Region

Name Region Endpoint Protocol

Canada

(Central) ca-

central-1 rds.ca-central-1.amazonaws.com HTTPS

Europe

(Frankfurt) eu-

central-1 rds.eu-central-1.amazonaws.com HTTPS

Europe

(Ireland) eu-west-1 rds.eu-west-1.amazonaws.com HTTPS

Europe

(London) eu-west-2 rds.eu-west-2.amazonaws.com HTTPS

Europe

(Milan) eu-

south-1 rds.eu-south-1.amazonaws.com HTTPS

Europe

(Paris) eu-west-3 rds.eu-west-3.amazonaws.com HTTPS

Europe

(Stockholm) eu-north-1 rds.eu-north-1.amazonaws.com HTTPS Middle

East (Bahrain)

me-south-1 rds.me-south-1.amazonaws.com HTTPS

South America (São Paulo)

sa-east-1 rds.sa-east-1.amazonaws.com HTTPS

AWSGovCloud (US-East)

us-gov-

east-1 rds.us-gov-east-1.amazonaws.com HTTPS

AWS GovCloud (US-West)

us-gov-

west-1 rds.us-gov-west-1.amazonaws.com HTTPS

Availability Zones

An Availability Zone is an isolated location in a given AWS Region. Each Region has multiple Availability Zones (AZ) designed to provide high availability for the Region. An AZ is identified by the AWS Region code followed by a letter identifier (for example, us-east-1a). If you create your VPC and subnets rather than using the default VPC, you define each subnet in a specific AZ. When you create an Aurora DB cluster, Aurora creates the primary instance in one of the subnets in the VPC's DB subnet group, thus associating that instance with a specific AZ chosen by Aurora.

Each Aurora DB cluster hosts copies of its storage in three separate AZs. Every DB instance in the cluster must be in one of these three AZs. When you create a DB instance in your cluster, Aurora automatically chooses an appropriate AZ if you don't specify an AZ. If an AWS Region has fewer than three AZs, Aurora isn't available in that Region.

To learn how to specify the AZ when you create a cluster or add instances to it, see VPC, subnets, and AZs (p. 125).

(30)

Local time zone for DB clusters

Local time zone for Amazon Aurora DB clusters

By default, the time zone for an Amazon Aurora DB cluster is Universal Time Coordinated (UTC). You can set the time zone for instances in your DB cluster to the local time zone for your application instead.

To set the local time zone for a DB cluster, set the time zone parameter in the cluster parameter group for your DB cluster to one of the supported values listed later in this section. For Aurora MySQL, the name of this parameter is time_zone. For Aurora PostgreSQL, the name of this parameter is timezone.

When you set the time zone parameter for a DB cluster, all instances in the DB cluster change to use the new local time zone. If other Aurora DB clusters are using the same cluster parameter group, then all instances in those DB clusters change to use the new local time zone also. For information on cluster- level parameters, see Amazon Aurora DB cluster and DB instance parameters (p. 344).

After you set the local time zone, all new connections to the database reflect the change. If you have any open connections to your database when you change the local time zone, you won't see the local time zone update until after you close the connection and open a new connection.

If you are replicating across AWS Regions, then the replication master DB cluster and the replica use different parameter groups (parameter groups are unique to an AWS Region). To use the same local time zone for each instance, you must set the time zone parameter in the parameter groups for both the replication master and the replica.

When you restore a DB cluster from a DB cluster snapshot, the local time zone is set to UTC. You can update the time zone to your local time zone after the restore is complete. If you restore a DB cluster to a point in time, then the local time zone for the restored DB cluster is the time zone setting from the parameter group of the restored DB cluster.

You can set your local time zone to one of the values listed in the following table. For some time zones, time values for certain date ranges can be reported incorrectly as noted in the table. For Australia time zones, the time zone abbreviation returned is an outdated value as noted in the table.

Time zone Notes

Africa/Harare This time zone setting can return incorrect values from 28 Feb 1903 21:49:40 GMT to 28 Feb 1903 21:55:48 GMT.

Africa/Monrovia

Africa/Nairobi This time zone setting can return incorrect values from 31 Dec 1939 21:30:00 GMT to 31 Dec 1959 21:15:15 GMT.

Africa/Windhoek

America/Bogota This time zone setting can return incorrect values from 23 Nov 1914 04:56:16 GMT to 23 Nov 1914 04:56:20 GMT.

America/Caracas America/Chihuahua America/Cuiaba America/Denver

America/Fortaleza If your DB cluster is in the South America (Sao Paulo) Region and the expected time doesn't show correctly for the recently changed Brazil time zone, reset the DB cluster's time zone parameter to America/Fortaleza.

America/Guatemala

(31)

Local time zone for DB clusters

Time zone Notes

America/Halifax This time zone setting can return incorrect values from 27 Oct 1918 05:00:00 GMT to 31 Oct 1918 05:00:00 GMT.

America/Manaus If your DB cluster is in the South America (Cuiaba) time zone and the expected time doesn't show correctly for the recently changed Brazil time zone, reset the DB cluster's time zone parameter to America/Manaus.

America/Matamoros America/Monterrey America/Montevideo America/Phoenix America/Tijuana Asia/Ashgabat Asia/Baghdad Asia/Baku Asia/Bangkok Asia/Beirut Asia/Calcutta Asia/Kabul Asia/Karachi Asia/Kathmandu

Asia/Muscat This time zone setting can return incorrect values from 31 Dec 1919 20:05:36 GMT to 31 Dec 1919 20:05:40 GMT.

Asia/Riyadh This time zone setting can return incorrect values from 13 Mar 1947 20:53:08 GMT to 31 Dec 1949 20:53:08 GMT.

Asia/Seoul This time zone setting can return incorrect values from 30 Nov 1904 15:30:00 GMT to 07 Sep 1945 15:00:00 GMT.

Asia/Shanghai This time zone setting can return incorrect values from 31 Dec 1927 15:54:08 GMT to 02 Jun 1940 16:00:00 GMT.

Asia/Singapore

Asia/Taipei This time zone setting can return incorrect values from 30 Sep 1937 16:00:00 GMT to 29 Sep 1979 15:00:00 GMT.

Asia/Tehran

Asia/Tokyo This time zone setting can return incorrect values from 30 Sep 1937 15:00:00 GMT to 31 Dec 1937 15:00:00 GMT.

Asia/Ulaanbaatar

(32)

Local time zone for DB clusters

Time zone Notes

Atlantic/Azores This time zone setting can return incorrect values from 24 May 1911 01:54:32 GMT to 01 Jan 1912 01:54:32 GMT.

Australia/Adelaide The abbreviation for this time zone is returned as CST instead of ACDT/ACST.

Australia/Brisbane The abbreviation for this time zone is returned as EST instead of AEDT/AEST.

Australia/Darwin The abbreviation for this time zone is returned as CST instead of ACDT/ACST.

Australia/Hobart The abbreviation for this time zone is returned as EST instead of AEDT/AEST.

Australia/Perth The abbreviation for this time zone is returned as WST instead of AWDT/

AWST.

Australia/Sydney The abbreviation for this time zone is returned as EST instead of AEDT/AEST.

Brazil/East Canada/

Saskatchewan

This time zone setting can return incorrect values from 27 Oct 1918 08:00:00 GMT to 31 Oct 1918 08:00:00 GMT.

Europe/Amsterdam Europe/Athens Europe/Dublin

Europe/Helsinki This time zone setting can return incorrect values from 30 Apr 1921 22:20:08 GMT to 30 Apr 1921 22:20:11 GMT.

Europe/Paris Europe/Prague Europe/Sarajevo Pacific/Auckland Pacific/Guam

Pacific/Honolulu This time zone setting can return incorrect values from 21 May 1933 11:30:00 GMT to 30 Sep 1945 11:30:00 GMT.

Pacific/Samoa This time zone setting can return incorrect values from 01 Jan 1911 11:22:48 GMT to 01 Jan 1950 11:30:00 GMT.

US/Alaska US/Central US/Eastern US/East-Indiana US/Pacific UTC

(33)

Supported Aurora features by Region and engine

Supported features in Amazon Aurora by AWS Region and Aurora DB engine

Aurora MySQL- and PostgreSQL-compatible database engines support several Amazon Aurora and Amazon RDS features and options. The support varies across specific versions of each database engine, and across AWS Regions. You can use the tables in this section to identify Aurora database engine version support and availability in a given AWS Region for the following features:

Topics

• Backtracking in Aurora (p. 19)

• Aurora global databases (p. 21)

• Aurora machine learning (p. 23)

• Aurora parallel queries (p. 26)

• Amazon RDS Proxy (p. 27)

• Aurora Serverless v1 (p. 29)

• Data API for Aurora Serverless (p. 31)

Some of these features are Aurora-only capabilities. For example, Aurora Serverless, Aurora global databases, and support for integration with AWS machine learning services aren't supported by Amazon RDS. Other features, such as Amazon RDS Proxy, are supported by both Amazon Aurora and Amazon RDS.

The tables use the following patterns to specify version numbers and level of support:

Version x.y – The specific version alone is supported.

Version x.y and higher – The version and all minor versions are also supported. For example, "version 10.11 and higher" means that versions 10.11, 10.11.1, and 10.12 are also supported.

- – The feature is not currently available for that particular Aurora feature for the given Aurora database engine, or in that specific AWS Region.

Backtracking in Aurora

By using backtracking in Aurora, you return the state of an Aurora cluster to a specific point in time, without restoring data from a backup. It completes within seconds, even for large databases. For more information, see Backtracking an Aurora DB cluster (p. 821).

Aurora backtracking is available for Aurora MySQL only. It's not available for Aurora PostgreSQL.

Region Aurora MySQL 5.6 Aurora MySQL 5.7 Aurora MySQL 8.0

US East (Ohio) Version 5.6.10a Version 2.06 and higher - US East (N.

Virginia) Version 5.6.10a Version 2.06 and higher -

US West (N.

California) Version 5.6.10a Version 2.06 and higher -

US West

(Oregon) Version 5.6.10a Version 2.06 and higher -

(34)

Backtracking in Aurora

Region Aurora MySQL 5.6 Aurora MySQL 5.7 Aurora MySQL 8.0

Africa (Cape

Town) - - -

Asia Pacific

(Hong Kong) - - -

Asia Pacific

(Jakarta) - - -

Asia Pacific

(Mumbai) Version 5.6.10a Version 2.06 and higher -

Asia Pacific

(Osaka) Version 5.6.10a; version 1.22

and higher Version 2.07.3 and higher -

Asia Pacific

(Seoul) Version 5.6.10a Version 2.06 and higher -

Asia Pacific

(Singapore) Version 5.6.10a Version 2.06 and higher -

Asia Pacific

(Sydney) Version 5.6.10a Version 2.06 and higher -

Asia Pacific

(Tokyo) Version 5.6.10a Version 2.06 and higher -

Canada

(Central) Version 5.6.10a Version 2.06 and higher -

China (Beijing) - - -

China

(Ningxia) - - -

Europe

(Frankfurt) Version 5.6.10a Version 2.06 and higher -

Europe

(Ireland) Version 5.6.10a Version 2.06 and higher -

Europe

(London) Version 5.6.10a Version 2.06 and higher -

Europe (Milan) - - -

Europe (Paris) Version 5.6.10a Version 2.06 and higher - Europe

(Stockholm) - - -

Middle East

(Bahrain) - - -

South America (São Paulo)

- - -

參考文獻

相關文件

• The memory storage unit holds instructions and data for a running program.. • A bus is a group of wires that transfer data from one part to another (data,

With the proposed model equations, accurate results can be obtained on a mapped grid using a standard method, such as the high-resolution wave- propagation algorithm for a

• Oral interactions are often indivisible from the learning and teaching activities of an English task, and as such, speaking activities can be well integrated into any

According to Shelly, what is one of the benefits of using CIT Phone Company service?. (A) The company does not charge

Second, we replicate the AN+MM and use European options sampling at exercise as control variates (CV-at-exercise). Last, we also replicate the AN+MM and use

• Uses a nested structure to accumulate path data as the simulation is running. • Uses a multiple branch structure to choose the

• This program constructs an instance of the device and prints out its properties, such as detected.. daughterboards, frequency range,

Responsible for providing reliable data transmission Data Link Layer from one node to another. Concerned with routing data from one network node Network Layer