

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# SQL 扩展连接缓存
<a name="sagemaker-sql-extension-features-connection-caching"></a>

SQL 扩展默认为缓存连接，以防止为同一组连接属性创建多个连接。缓存连接可使用 `%sm_sql_manage` 神奇命令进行管理。

以下主题介绍了如何管理缓存连接。

**Topics**
+ [

# 创建缓存连接
](sagemaker-sql-extension-features-create-cached-connection.md)
+ [

# 列出缓存连接
](sagemaker-sql-extension-features-list-cached-connection.md)
+ [

# 清除缓存连接
](sagemaker-sql-extension-features-clear-cached-connection.md)
+ [

# 禁用缓存连接
](sagemaker-sql-extension-features-disable-cached-connection.md)

# 创建缓存连接
<a name="sagemaker-sql-extension-features-create-cached-connection"></a>

通过在连接字符串的 `--connection-name` 参数中指定连接名称，可以创建缓存连接。当针对特定使用场景重载多个连接属性，并且需要重复使用相同属性而无需重复输入时，这一点尤其有用。

例如，下面的代码使用名称 `--connection-name my_athena_conn_with_schema` 保存了一个带有重载模式连接属性的 Athena 连接，然后在另一个单元格中重复使用：

```
%%sm_sql --connection-name my_athena_conn_with_schema --connection-properties '{"schema_name": "sm-sql-private-beta-db"}' --metastore-id sm-sql-private-beta-athena-connection --metastore-type GLUE_CONNECTION 
SELECT * FROM "covid_table" LIMIT 2
```

```
%%sm_sql --connection-name my_athena_conn_with_schema
SELECT * FROM "covid_table" LIMIT 2
```

# 列出缓存连接
<a name="sagemaker-sql-extension-features-list-cached-connection"></a>

运行以下命令即可列出缓存连接：

```
%sm_sql_manage --list-cached-connections
```

# 清除缓存连接
<a name="sagemaker-sql-extension-features-clear-cached-connection"></a>

要清除所有缓存连接，请运行以下命令：

```
%sm_sql_manage --clear-cached-connections
```

# 禁用缓存连接
<a name="sagemaker-sql-extension-features-disable-cached-connection"></a>

要禁用连接缓存，请运行以下命令：

```
%sm_sql_manage --set-connection-reuse False
```