使用 SQLExecuteQueryOperator 操作 Mysql 的操作指南

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

之前,使用 MySqlOperator 执行此类操作。但被弃用后,它被移除了。请改用 SQLExecuteQueryOperator。

使用操作符

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

MySql Airflow 连接元数据

参数

输入

主机:字符串

MySql 主机名

模式:字符串

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

登录:字符串

MySql 用户

密码:字符串

MySql 用户密码

端口:整数

MySql 端口

以下是 SQLExecuteQueryOperator 的使用示例

tests/system/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/mysql/example_mysql.py[源代码]


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

注意

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

此条目是否有帮助?