我正在尝试运行行动手册以执行Oracle脚本。
---
- hosts: localhost
- tasks:
- set_fact:
execute_command: "sqlplus {{ Oracle_Username }}/{{ Oracle_Password }} @{{ sqlfile.sql }}"
- name: Get Object_details
shell: "echo exit | {{ execute_command }} >> ./Oracle_Output.csv"
environment:
ORACLE_HOME: "{{ Oracle_DBServer }}"
ORACLE_SID: "{{ Oracle_SID }}"
我已经声明了变量中的所有变量。当我执行它的时候,我得到错误“set_fact是一个播放的无效属性”。使用Ansible运行SQL脚本的最好方法是什么?我必须声明变量中的所有连接细节。
4条答案
按热度按时间idv4meu81#
使用上面的代码,我们将能够直接连接到Oracle主机并执行sql脚本。如果Oracle环境变量未默认定义,我们也可以在行动手册任务本身中进行设置。下面是相应的示例:
avkwfej42#
您忘记声明
tasks
节:另外,我不知道任务的
wait
属性。kq0g1dla3#
首先需要导出ORACLE_HOME,然后才能从oracle的bin文件夹调用sqlplus。
s4n0splo4#
我这样做,它的罚款!