使用 SQLExecuteQueryOperator 操作 Mysql 的方法指南

使用 SQLExecuteQueryOperatorMySql 数据库中执行 SQL 命令。

警告

以前,MySqlOperator 用于执行此类操作。但目前 MySqlOperator 已弃用,并将在未来版本的提供程序中删除。请考虑尽快切换到 SQLExecuteQueryOperator。

使用操作符

使用 conn_id 参数连接到您的 MySql 实例,其中连接元数据结构如下

MySql Airflow 连接元数据

参数

输入

主机:字符串

MySql 主机名

模式:字符串

设置默认情况下执行 Sql 操作的模式

登录名:字符串

MySql 用户

密码:字符串

MySql 用户密码

端口:整数

MySql 端口

以下是 SQLExecuteQueryOperator 的一个用法示例

tests/system/providers/mysql/example_mysql.py[来源]


    drop_table_mysql_task = SQLExecuteQueryOperator(
        task_id="drop_table_mysql", sql=r"""DROP TABLE table_name;""", dag=dag
    )

您还可以使用外部文件来执行 SQL 命令。脚本文件夹必须与 DAG.py 文件位于同一级别。

tests/system/providers/mysql/example_mysql.py[来源]


    mysql_task = SQLExecuteQueryOperator(
        task_id="drop_table_mysql_external_file",
        sql="/scripts/drop_table.sql",
        dag=dag,
    )

注意

可以传递给操作符的参数将优先于 Airflow 连接元数据中已给出的参数(例如 schemaloginpassword 等等)。

此条目有帮助吗?