

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon Aurora MySQL 概觀
<a name="Aurora.AuroraMySQL.Overview"></a>

下列各節提供 Amazon Aurora MySQL 的概觀。

**Topics**
+ [Amazon Aurora MySQL 效能增強功能](#Aurora.AuroraMySQL.Performance)
+ [Amazon Aurora MySQL 和空間資料](#Aurora.AuroraMySQL.Spatial)
+ [Aurora MySQL 8.4 版與 MySQL 8.4 相容](AuroraMySQL.MySQL84.md)
+ [Aurora MySQL 第 3 版與 MySQL 8.0 相容](AuroraMySQL.MySQL80.md)
+ [Aurora MySQL 第 2 版與 MySQL 5.7 相容](AuroraMySQL.CompareMySQL57.md)

## Amazon Aurora MySQL 效能增強功能
<a name="Aurora.AuroraMySQL.Performance"></a>

Amazon Aurora 包括效能增強功能以支援高階商用資料庫多樣化的需求。

## Amazon Aurora MySQL 和空間資料
<a name="Aurora.AuroraMySQL.Spatial"></a>

下列清單彙總主要 Aurora MySQL 空間特性，以及說明它們如何對應至 MySQL 中的空間特性。
+ Aurora MySQL 第 2 版支援與 MySQL 5.7 相同的空間資料類型和空間關聯式函式。如需這些資料類型和函式的詳細資訊，請參閱 MySQL 5.7 文件中的[空間資料類型](https://dev.mysql.com/doc/refman/5.7/en/spatial-types.html)和[空間關聯式函式](https://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html)。
+ Aurora MySQL 第 3 版支援與 MySQL 8.0 相同的空間資料類型和空間關聯式函式。如需這些資料類型和函式的詳細資訊，請參閱 MySQL 8.0 文件中的[空間資料類型](https://dev.mysql.com/doc/refman/8.0/en/spatial-types.html)和[空間關聯式函式](https://dev.mysql.com/doc/refman/8.0/en/spatial-relation-functions-object-shapes.html)。
+ Aurora MySQL 8.4 版支援與 MySQL 8.4 相同的空間資料類型和空間關係函數。如需這些資料類型和函數的詳細資訊，請參閱 MySQL 8.4 文件中的[空間資料類型](https://dev.mysql.com/doc/refman/8.4/en/spatial-types.html)和[空間關聯函數](https://dev.mysql.com/doc/refman/8.4/en/spatial-relation-functions-object-shapes.html)。
+ Aurora MySQL 支援 InnoDB 資料表上的空間檢索。空間檢索可改善大型資料集上對空間資料進行查詢的查詢效能。在 MySQL 中，InnoDB 資料表的空間檢索可用於 MySQL 5.7 和 8.0。

  Aurora MySQL 會使用來自 MySQL 的不同空間檢索策略，以便可以高效能進行空間查詢。Aurora 空間索引實作會在 B 樹狀結構上使用空間填滿曲線，其目的旨在為空間範圍掃描提供比 R 樹狀結構更高的效能。
**注意**  
在 Aurora MySQL 中，資料表上的交易若有空間索引定義在具有空間參考識別符 (SRID) 的資料欄上，則無法插入至另一個交易為了更新而選取的區域。

支援下列資料定義語言 (DDL) 陳述式，可在使用空間資料類型的資料欄上建立索引。

### CREATE TABLE
<a name="Aurora.AuroraMySQL.Spatial.create_table"></a>

您可以在 `SPATIAL INDEX` 陳述式中使用 `CREATE TABLE` 關鍵字，將空間索引新增至新的資料表。以下是範例。

```
CREATE TABLE test (shape POLYGON NOT NULL, SPATIAL INDEX(shape));
```

### ALTER TABLE
<a name="Aurora.AuroraMySQL.Spatial.alter_table"></a>

您可以在 `SPATIAL INDEX` 陳述式中使用 `ALTER TABLE` 關鍵字，將空間索引新增至現有資料表中的資料欄。以下是範例。

```
ALTER TABLE test ADD SPATIAL INDEX(shape);
```

### CREATE INDEX
<a name="Aurora.AuroraMySQL.Spatial.create_index"></a>

您可以在 `SPATIAL` 陳述式中使用 `CREATE INDEX` 關鍵字，將空間索引新增至現有資料表中的資料欄。以下是範例。

```
CREATE SPATIAL INDEX shape_index ON test (shape);
```