如何在 bash 脚本中连接到 Oracle 数据库?

Posted

技术标签:

【中文标题】如何在 bash 脚本中连接到 Oracle 数据库?【英文标题】:how to connect to a oracle db in bash script? 【发布时间】:2017-05-25 19:22:28 【问题描述】:

我有一个脚本需要连接到托管在不同服务器上的 oracle db。我可以使用 sqldeveloper 连接到这个 oracle db。但是我无法在我的 bash 脚本中对其进行配置。 SQLDEVELOPER 4.0 是我用来通过 gui 连接的工具。如何在我的脚本中使用它。还有其他方法吗?我需要任何其他软件(sqlplus)

【问题讨论】:

How do you execute SQL from within a bash script?的可能重复 【参考方案1】:

尝试使用以下一次:

sqlplus db_user_name/password_for_user@DB_schema < Input_file.sql > Output

【讨论】:

【参考方案2】:

您需要 sqlplus 来实现您想要做的事情。您需要放入 shell 脚本的命令的语法应该是这样的:

sqlplus 'USER/PASSWORD@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=DB_HOST)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=SERVICE_NAME_YOU_USE_IN_SQLDEVELOPER)))' 

【讨论】:

【参考方案3】:

在 *nix 系统上,这将创建一个 csv 的结果流到标准输出:

java -Djava.security.egd=file///dev/urandom -jar jdbcsql.jar -d oracledb_SID -h $host -p 1521 -U some_username -m oracle -P "$PW" -f excel -s "," "$1"

请注意,添加 -Djava.security.egd=file///dev/urandom 会大大提高性能

Windows 命令类似:见http://jdbcsql.sourceforge.net/

【讨论】:

以上是关于如何在 bash 脚本中连接到 Oracle 数据库?的主要内容,如果未能解决你的问题,请参考以下文章

Perl 无法在 cronjob 中连接到 Oracle DB

在 Katalon Studio 中连接到 Oracle SQL

如何在 Python 中连接到 MySQL 数据库?

如何在 Python 中连接到 MySQL 数据库?

如何在 Python 中连接到 MySQL 数据库?

如何在 Python 中连接到 MySQL 数据库?