airflow.providers.google.cloud.operators.cloud_sql

此模块包含 Google Cloud SQL operators。

属性

SETTINGS

SETTINGS_VERSION

CLOUD_SQL_CREATE_VALIDATION

CLOUD_SQL_EXPORT_VALIDATION

CLOUD_SQL_IMPORT_VALIDATION

CLOUD_SQL_DATABASE_CREATE_VALIDATION

CLOUD_SQL_DATABASE_PATCH_VALIDATION

CloudSQLBaseOperator

Google Cloud SQL operators 的抽象基类 operator。

CloudSQLCreateInstanceOperator

创建一个新的 Cloud SQL 实例。

CloudSQLInstancePatchOperator

更新 Cloud SQL 实例的设置。

CloudSQLDeleteInstanceOperator

删除一个 Cloud SQL 实例。

CloudSQLCloneInstanceOperator

将一个实例克隆到目标实例。

CloudSQLCreateInstanceDatabaseOperator

在 Cloud SQL 实例中创建一个新数据库。

CloudSQLPatchInstanceDatabaseOperator

使用 patch 语义更新包含数据库信息的资源。

CloudSQLDeleteInstanceDatabaseOperator

从 Cloud SQL 实例中删除一个数据库。

CloudSQLExportInstanceOperator

将数据从 Cloud SQL 实例导出到 Cloud Storage 存储桶。

CloudSQLImportInstanceOperator

将数据从 Cloud Storage 导入到 Cloud SQL 实例。

CloudSQLExecuteQueryOperator

在现有 Cloud Sql 实例上执行 DML 或 DDL 查询。

模块内容

airflow.providers.google.cloud.operators.cloud_sql.SETTINGS = 'settings'[源]
airflow.providers.google.cloud.operators.cloud_sql.SETTINGS_VERSION = 'settingsVersion'[源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_CREATE_VALIDATION: collections.abc.Sequence[dict][源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_EXPORT_VALIDATION[源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_IMPORT_VALIDATION[源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_DATABASE_CREATE_VALIDATION[源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_DATABASE_PATCH_VALIDATION[源]
class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLBaseOperator(*, instance, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[源]

Bases: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

Google Cloud SQL operators 的抽象基类 operator。

参数:
  • instance (str) – Cloud SQL 实例 ID。不包含项目 ID。

  • project_id (str) – 可选的,Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 用于连接 Google Cloud 的连接 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链式列表,该账号将在请求中被模拟。如果设置为字符串,则该账号必须向发起账号授予 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向紧接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

project_id = None[源]
instance[源]
gcp_conn_id = 'google_cloud_default'[源]
api_version = 'v1beta4'[源]
impersonation_chain = None[源]
execute(context)[源]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLCreateInstanceOperator(*, body, instance, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

创建一个新的 Cloud SQL 实例。

如果存在同名实例,则不会采取任何行动,operator 将会成功。

另请参阅

有关如何使用此 operator 的更多信息,请参阅指南: CloudSQLCreateInstanceOperator

参数:
  • body (dict) – Cloud SQL insert API 所需的 body,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/instances/insert #request-body 中所述

  • instance (str) – Cloud SQL 实例 ID。不包含项目 ID。

  • project_id (str) – 可选的,Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 用于连接 Google Cloud 的连接 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • validate_body (bool) – 如果应验证 body 则为 True,否则为 False。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链式列表,该账号将在请求中被模拟。如果设置为字符串,则该账号必须向发起账号授予 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向紧接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[源]
ui_color = '#FADBDA'[源]
body[源]
validate_body = True[源]
execute(context)[源]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLInstancePatchOperator(*, body, instance, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

更新 Cloud SQL 实例的设置。

注意:这是一个部分更新,因此只会更新 settings 中包含的值。

在请求 body 中,根据 patch 语义规则提供实例资源的相应部分。 https://cloud.google.com/sql/docs/mysql/admin-api/how-tos/performance#patch

另请参阅

有关如何使用此 operator 的更多信息,请参阅指南: CloudSQLInstancePatchOperator

参数:
  • body (dict) – Cloud SQL patch API 所需的 body,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/instances/patch#request-body 中所述

  • instance (str) – Cloud SQL 实例 ID。不包含项目 ID。

  • project_id (str) – 可选的,Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 用于连接 Google Cloud 的连接 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链式列表,该账号将在请求中被模拟。如果设置为字符串,则该账号必须向发起账号授予 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向紧接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[源]
ui_color = '#FBDAC8'[源]
body[源]
execute(context)[源]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLDeleteInstanceOperator(*, instance, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

删除一个 Cloud SQL 实例。

另请参阅

有关如何使用此 operator 的更多信息,请参阅指南: CloudSQLDeleteInstanceOperator

参数:
  • instance (str) – Cloud SQL 实例 ID。不包含项目 ID。

  • project_id (str) – 可选的,Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 用于连接 Google Cloud 的连接 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链式列表,该账号将在请求中被模拟。如果设置为字符串,则该账号必须向发起账号授予 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向紧接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'gcp_conn_id', 'api_version', 'impersonation_chain')[源]
ui_color = '#FEECD2'[源]
execute(context)[源]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLCloneInstanceOperator(*, instance, destination_instance_name, clone_context=None, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

将一个实例克隆到目标实例。

另请参阅

有关如何使用此 operator 的更多信息,请参阅指南: CloudSQLCloneInstanceOperator

参数:
  • instance (str) – 要克隆的数据库实例 ID。不包含项目 ID。

  • destination_instance_name (str) – 要创建的数据库实例 ID。不包含项目 ID。

  • clone_context (dict | None) – 其他 clone_context 参数,如 https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/instances/clone 中所述

  • project_id (str) – 包含实例的项目的项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 用于连接 Google Cloud 的连接 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链式列表,该账号将在请求中被模拟。如果设置为字符串,则该账号必须向发起账号授予 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向紧接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'destination_instance_name', 'gcp_conn_id', 'api_version')[源]
destination_instance_name[源]
clone_context[源]
execute(context)[源]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLCreateInstanceDatabaseOperator(*, instance, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

在 Cloud SQL 实例中创建一个新数据库。

另请参阅

有关如何使用此 operator 的更多信息,请参阅指南: CloudSQLCreateInstanceDatabaseOperator

参数:
  • instance (str) – 数据库实例 ID。不包含项目 ID。

  • body (dict) – 请求 body,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/databases/insert#request-body 中所述

  • project_id (str) – 可选的,Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 用于连接 Google Cloud 的连接 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • validate_body (bool) – 是否应验证 body。默认为 True。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链式列表,该账号将在请求中被模拟。如果设置为字符串,则该账号必须向发起账号授予 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向紧接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#FFFCDB'[source]
body[source]
validate_body = True[source]
execute(context)[source]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLPatchInstanceDatabaseOperator(*, instance, database, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, **kwargs)[source]

Bases: CloudSQLBaseOperator

使用 patch 语义更新包含数据库信息的资源。

参见: https://cloud.google.com/sql/docs/mysql/admin-api/how-tos/performance#patch

另请参阅

有关如何使用此运算符的更多信息,请参阅指南: CloudSQLPatchInstanceDatabaseOperator

参数:
  • instance (str) – 数据库实例 ID。不包含项目 ID。

  • database (str) – 要在实例中更新的数据库名称。

  • body (dict) – 请求正文,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/databases/patch#request-body 中所述

  • project_id (str) – 可选,Google Cloud 项目 ID。

  • gcp_conn_id (str) – 用于连接 Google Cloud 的连接 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • validate_body (bool) – 是否应验证 body。默认为 True。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链式列表,该账号将在请求中被模拟。如果设置为字符串,则该账号必须向发起账号授予 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向紧接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'database', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#ECF4D9'[source]
database[source]
body[source]
validate_body = True[source]
execute(context)[source]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLDeleteInstanceDatabaseOperator(*, instance, database, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[source]

Bases: CloudSQLBaseOperator

从 Cloud SQL 实例中删除一个数据库。

另请参阅

有关如何使用此运算符的更多信息,请参阅指南: CloudSQLDeleteInstanceDatabaseOperator

参数:
  • instance (str) – 数据库实例 ID。不包含项目 ID。

  • database (str) – 要在实例中删除的数据库名称。

  • project_id (str) – 可选的,Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 用于连接 Google Cloud 的连接 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链式列表,该账号将在请求中被模拟。如果设置为字符串,则该账号必须向发起账号授予 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向紧接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'database', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#D5EAD8'[source]
database[source]
execute(context)[source]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLExportInstanceOperator(*, instance, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), poke_interval=10, **kwargs)[source]

Bases: CloudSQLBaseOperator

将数据从 Cloud SQL 实例导出到 Cloud Storage 存储桶。

导出的格式可以是 SQL dump 文件或 CSV 文件。

注意:此运算符是幂等的。如果使用相同的导出文件 URI 多次执行,GCS 中的导出文件将被简单地覆盖。

另请参阅

有关如何使用此运算符的更多信息,请参阅指南: CloudSQLExportInstanceOperator

参数:
  • instance (str) – Cloud SQL 实例 ID。不包含项目 ID。

  • body (dict) – 请求正文,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/instances/export#request-body 中所述

  • project_id (str) – 可选的,Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 用于连接 Google Cloud 的连接 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • validate_body (bool) – 是否应验证 body。默认为 True。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链式列表,该账号将在请求中被模拟。如果设置为字符串,则该账号必须向发起账号授予 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向紧接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

  • deferrable (bool) – 在可推迟模式下运行运算符。

  • poke_interval (int) – (仅限可推迟模式)调用之间等待检查运行状态的时间(秒)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#D4ECEA'[source]
body[source]
validate_body = True[source]
deferrable = True[source]
poke_interval = 10[source]
execute(context)[source]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

execute_complete(context, event=None)[source]

当触发器触发时,作为回调函数立即返回。

依赖触发器抛出异常,否则假定执行成功。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLImportInstanceOperator(*, instance, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, **kwargs)[source]

Bases: CloudSQLBaseOperator

将数据从 Cloud Storage 导入到 Cloud SQL 实例。

CSV 导入

对于 CSV 导入,此运算符不是幂等的。如果多次导入同一个文件,导入的数据将在数据库中重复。此外,如果存在任何唯一约束,重复导入可能会导致错误。

SQL 导入

如果导入的 SQL 文件也是由 Cloud SQL 导出的,则此运算符对于 SQL 导入是幂等的。导出的 SQL 包含所有要导入的表的“DROP TABLE IF EXISTS”语句。

如果导入文件以不同方式生成,则不保证幂等性。必须在 SQL 文件级别确保幂等性。

另请参阅

有关如何使用此运算符的更多信息,请参阅指南: CloudSQLImportInstanceOperator

参数 instance:

Cloud SQL 实例 ID。不包括项目 ID。

参数 body:

请求正文,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/instances/import#request-body 中所述

参数 project_id:

可选,Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认项目 ID。

参数 gcp_conn_id:

用于连接 Google Cloud 的连接 ID。

参数 api_version:

使用的 API 版本(例如 v1beta4)。

参数 validate_body:

是否应验证正文。默认为 True。

参数 impersonation_chain:

可选的服务账号,用于使用短期凭据进行模拟,或者获取列表中最后一个账号的 access_token 所需的账号链列表,最后一个账号将在请求中被模拟。如果设置为字符串,该账号必须授予发起账号 Service Account Token Creator IAM 角色。如果设置为序列,列表中的身份必须授予其直接前一个身份 Service Account Token Creator IAM 角色,列表中的第一个账号将此角色授予发起账号(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#D3EDFB'[source]
body[source]
validate_body = True[source]
execute(context)[source]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLExecuteQueryOperator(*, sql, autocommit=False, parameters=None, gcp_conn_id='google_cloud_default', gcp_cloudsql_conn_id='google_cloud_sql_default', sql_proxy_binary_path=None, ssl_server_cert=None, ssl_client_cert=None, ssl_client_key=None, ssl_secret_id=None, **kwargs)[source]

Bases: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

在现有 Cloud Sql 实例上执行 DML 或 DDL 查询。

它可以选择使用 cloud-sql-proxy 与数据库建立安全连接。

另请参阅

有关如何使用此运算符的更多信息,请参阅指南: CloudSQLExecuteQueryOperator

参数:
  • sql (str | collections.abc.Iterable[str]) – 要运行的 SQL 查询或查询列表(应为 DML 或 DDL 查询 - 此运算符不从数据库返回任何数据,因此传递 DQL 查询没有用处。请注意,查询作者有责任确保查询是幂等的。例如,您可以使用 CREATE TABLE IF NOT EXISTS 创建表)。

  • parameters (collections.abc.Iterable | collections.abc.Mapping[str, Any] | None) – (可选)用于渲染 SQL 查询的参数。

  • autocommit (bool) – 如果为 True,每个命令都会自动提交。(默认值:False)

  • gcp_conn_id (str) – 用于连接 Google Cloud 进行 cloud-sql-proxy 身份验证的连接 ID。

  • gcp_cloudsql_conn_id (str) – 用于连接 Google Cloud SQL 的连接 ID,其方案应为 gcpcloudsql://。有关如何定义 gcpcloudsql:// 连接的详细信息,请参阅 CloudSQLDatabaseHook

  • sql_proxy_binary_path (str | None) – (可选)指向 cloud-sql-proxy 二进制文件的路径。如果未指定或二进制文件不存在,则会自动下载。

  • ssl_cert – (可选)使用 SSL 时用于身份验证的客户端证书路径。覆盖连接字段 sslcert

  • ssl_key – (可选)使用 SSL 时用于身份验证的客户端私钥路径。覆盖连接字段 sslkey

  • ssl_root_cert – (可选)使用 SSL 时用于身份验证的服务器证书路径。覆盖连接字段 sslrootcert

  • ssl_secret_id (str | None) –

    (可选)Google Cloud Secret Manager 中存储 SSL 证书的密钥 ID,格式如下

    {‘sslcert’: ‘’,

    ’sslkey’: ‘’, ‘sslrootcert’: ‘’}

    覆盖连接字段 sslcertsslkeysslrootcert。请注意,根据 Secret Manager 的要求,提到的字典应保存为字符串,并使用 base64 编码。请注意,此参数与参数 ssl_certssl_keyssl_root_cert 不兼容。

template_fields: collections.abc.Sequence[str] = ('sql', 'gcp_cloudsql_conn_id', 'gcp_conn_id', 'ssl_server_cert', 'ssl_client_cert',...[source]
template_ext: collections.abc.Sequence[str] = ('.sql',)[source]
template_fields_renderers[source]
ui_color = '#D3DEF1'[source]
sql[source]
gcp_conn_id = 'google_cloud_default'[source]
gcp_cloudsql_conn_id = 'google_cloud_sql_default'[source]
autocommit = False[source]
parameters = None[source]
gcp_connection: airflow.models.Connection | None = None[source]
sql_proxy_binary_path = None[source]
ssl_server_cert = None[source]
ssl_client_cert : str | tuple[str, str] | None = None[source]
ssl_client_key = None[source]
ssl_secret_id = None[source]
cloud_sql_proxy_context(hook)[source]
execute(context)[source]

在创建 operator 时派生。

Context 与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

property hook[source]
get_openlineage_facets_on_complete(_)[source]

本条目是否有帮助?