

# 适用于 MariaDB 数据库引擎的选项
<a name="Appendix.MariaDB.Options"></a>

在下文中，您可以找到适用于运行 MariaDB 数据库引擎的 Amazon RDS 实例的选项或其他功能的说明。要开启这些选项，可以将它们添加到自定义选项组中，然后将选项组与数据库实例相关联。有关使用选项组的详细信息，请参阅[使用选项组](USER_WorkingWithOptionGroups.md)。

Amazon RDS 支持 MariaDB 的以下选项：


| 选项 ID | 引擎版本 | 
| --- | --- | 
|  `MARIADB_AUDIT_PLUGIN`  |  MariaDB 10.3 及更高版本  | 

## MariaDB 审计插件支持
<a name="Appendix.MariaDB.Options.AuditPlugin"></a>

Amazon RDS 支持在 MariaDB 数据库实例上使用 MariaDB 审核插件。MariaDB 审核插件可记录数据库活动，如用户登录数据库、针对数据库运行查询等。数据库活动记录存储在日志文件中。

### 审计插件选项设置
<a name="Appendix.MariaDB.Options.AuditPlugin.Options"></a>

Amazon RDS 支持 MariaDB 审计插件选项的以下设置。

**注意**  
如果您未在 RDS 控制台中配置选项设置，RDS 将使用原定设置。


| 选项设置 | 有效值 | 默认值 | 描述 | 
| --- | --- | --- | --- | 
| `SERVER_AUDIT_FILE_PATH` | `/rdsdbdata/log/audit/` | `/rdsdbdata/log/audit/` |  日志文件的位置。日志文件包含 `SERVER_AUDIT_EVENTS` 中指定的活动记录。有关更多信息，请参阅“[查看和列出数据库日志文件](USER_LogAccess.Procedural.Viewing.md)”和“[MariaDB 数据库日志文件](USER_LogAccess.Concepts.MariaDB.md)”。  | 
| `SERVER_AUDIT_FILE_ROTATE_SIZE` | 1–1000000000 | 1000000 |  达到该字节大小时，会导致文件轮换。有关更多信息，请参阅“[MariaDB 的日志轮换和保留](USER_LogAccess.MariaDB.LogFileSize.md)”。  | 
| `SERVER_AUDIT_FILE_ROTATIONS` | 0–100 | 9 |  当 `server_audit_output_type=file` 时要保存的日志轮换数量。如果设置为 0，则日志文件从不轮换。有关更多信息，请参阅[MariaDB 的日志轮换和保留](USER_LogAccess.MariaDB.LogFileSize.md) 和[下载数据库日志文件](USER_LogAccess.Procedural.Downloading.md)。  | 
| `SERVER_AUDIT_EVENTS` | `CONNECT`, `QUERY`, `TABLE`, `QUERY_DDL`, `QUERY_DML`, `QUERY_DML_NO_SELECT`, `QUERY_DCL` | `CONNECT`, `QUERY` |  要在日志中记录的活动类型。安装 MariaDB 审核插件可自行登录。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/Appendix.MariaDB.Options.html)  | 
| `SERVER_AUDIT_INCL_USERS` | 多个逗号分隔值 | 无 |  仅包括指定用户的活动。默认情况下，会记录所有用户的活动。`SERVER_AUDIT_INCL_USERS` 和 `SERVER_AUDIT_EXCL_USERS` 是相互排斥的。如果将值添加到 `SERVER_AUDIT_INCL_USERS`，请确保未向 `SERVER_AUDIT_EXCL_USERS` 中添加任何值。  | 
| `SERVER_AUDIT_EXCL_USERS` | 多个逗号分隔值 | 无 |  排除指定用户的活动。默认情况下，会记录所有用户的活动。`SERVER_AUDIT_INCL_USERS` 和 `SERVER_AUDIT_EXCL_USERS` 是相互排斥的。如果将值添加到 `SERVER_AUDIT_EXCL_USERS`，请确保未向 `SERVER_AUDIT_INCL_USERS` 中添加任何值。  `rdsadmin` 用户会每秒查询一次数据库，以检查数据库的运行状况。根据您的其他设置，此活动可能导致您的日志文件大小非常快速地增长。如果您不需要记录此活动，请将 `rdsadmin` 用户添加到 `SERVER_AUDIT_EXCL_USERS` 列表。   `CONNECT`会始终为所有用户记录 活动，即使是该选项设置指定的用户。   | 
| `SERVER_AUDIT_LOGGING` | `ON` | `ON` |  日志记录处于活动状态。唯一有效值为 `ON`。Amazon RDS 不支持停用日志记录。如果您要停用日志记录，请删除 MariaDB 审核插件。有关更多信息，请参阅“[删除 MariaDB 审核插件](#Appendix.MariaDB.Options.AuditPlugin.Remove)”。  | 
| `SERVER_AUDIT_QUERY_LOG_LIMIT` | 0–2147483647 | 1024 |  记录中查询字符串的长度限制。  | 

### 添加 MariaDB 审核插件
<a name="Appendix.MariaDB.Options.AuditPlugin.Add"></a>

向数据库实例添加 MariaDB 审核插件的一般过程如下：

1. 创建新的选项组，或者复制或修改现有选项组。

1. 将 选项添加到该选项组。

1. 将选项组与数据库实例相关联。

添加 MariaDB 审核插件后，您无需重新启动数据库实例。一旦选项组处于活动状态，审核便会立即开始。

**添加 MariaDB 审核插件**

1. 确定您想要使用的选项组。您可以创建新的选项组，或使用现有选项组。如果您想使用现有选项组，请跳到下一步。否则，请创建自定义数据库选项组。对于 **Engine**（引擎），请选择 **mariadb**；对于 **Major engine version**（主引擎版本），请选择 **10.3** 或更高版本。有关更多信息，请参阅 [创建选项组](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create)。

1. 将 **MARIADB\$1AUDIT\$1PLUGIN** 选项添加到选项组中，然后配置选项设置。有关添加选项的更多信息，请参阅 [将选项添加到选项组](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption)。有关各项设置的更多信息，请参阅[审计插件选项设置](#Appendix.MariaDB.Options.AuditPlugin.Options)。

1. 将选项组应用到新的或现有的数据库实例。
   + 对于新数据库实例，您可以在启动实例时应用选项组。有关更多信息，请参阅“[创建 Amazon RDS 数据库实例](USER_CreateDBInstance.md)”。
   + 对于现有数据库实例，您可以通过修改数据库实例并附加新的选项组来应用选项组。有关更多信息，请参阅“[修改 Amazon RDS 数据库实例](Overview.DBInstance.Modifying.md)”。

### 查看和下载 MariaDB 审计插件日志
<a name="Appendix.MariaDB.Options.AuditPlugin.Log"></a>

启用 MariaDB 审计插件后，您将以访问其他任何基于文本的日志文件的相同方式来访问日志文件中的结果。审计日志文件位于 `/rdsdbdata/log/audit/`。有关在控制台中查看日志文件的信息，请参阅 [查看和列出数据库日志文件](USER_LogAccess.Procedural.Viewing.md)。有关下载日志文件的信息，请参阅 [下载数据库日志文件](USER_LogAccess.Procedural.Downloading.md)。

### 修改 MariaDB 审计插件设置
<a name="Appendix.MariaDB.Options.AuditPlugin.ModifySettings"></a>

启用 MariaDB 审核插件后，您可以修改插件设置。有关如何修改选项设置的更多信息，请参阅 [修改选项设置](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ModifyOption)。有关各项设置的更多信息，请参阅[审计插件选项设置](#Appendix.MariaDB.Options.AuditPlugin.Options)。

### 删除 MariaDB 审核插件
<a name="Appendix.MariaDB.Options.AuditPlugin.Remove"></a>

Amazon RDS 不支持关闭 MariaDB 审核插件中的日志记录。不过，您可以从数据库实例删除插件。在删除 MariaDB 审核插件时，将自动重新启动数据库实例以停止审核。

要从数据库实例中删除 MariaDB 审核插件，请执行以下操作之一：
+ 从 MariaDB 审核插件选项所属的选项组中删除 MariaDB 审核插件选项。此更改会影响使用该选项组的所有数据库实例。有关更多信息，请参阅“[从选项组中删除选项](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption)” 
+ 修改数据库实例，并指定不包含插件的其他选项组。此更改会影响单个数据库实例。您可以指定默认 (空) 选项组，或指定其他自定义选项组。有关更多信息，请参阅“[修改 Amazon RDS 数据库实例](Overview.DBInstance.Modifying.md)”。