PR

Oracle Database sqlplusからOSコマンドを実行する方法

スポンサーリンク
Linux

sqlplusプロンプト上からは通常だとSQLを発行すると思いますが、OSコマンドを実行する方法があるので紹介します。

sqlplusでOracleに接続

[dekien@cent77 ]$ sqlplus dekien
パスワードを入力してください:

SQL>

sqlplus上でOSコマンドを実行

“!”に続けて実行したいOSコマンドを指定します。

SQL>!ls -l /usr/local
合計 48
drwxr-xr-x  2 root root 4096 10月 22 04:53 2018 arc
drwxr-xr-x. 2 root root 4096  9月 23 20:50 2011 bin
drwxr-xr-x. 2 root root 4096  9月 23 20:50 2011 etc
drwxr-xr-x. 2 root root 4096  9月 23 20:50 2011 games
drwxr-xr-x. 2 root root 4096  9月 23 20:50 2011 include
drwxr-xr-x. 2 root root 4096  9月 23 20:50 2011 lib
drwxr-xr-x. 2 root root 4096  9月 23 20:50 2011 lib64
drwxr-xr-x. 2 root root 4096  9月 23 20:50 2011 libexec
drwxr-xr-x. 2 root root 4096  9月 23 20:50 2011 sbin
drwxr-xr-x. 5 root root 4096 10月 19 05:59 2018 share
drwxr-xr-x. 2 root root 4096  9月 23 20:50 2011 src

実行されるOSコマンドは自サーバでの結果となります。

tnsnames.ora等、SQL*NetでリモートでOracle Databaseサーバに接続しても、リモート先ではOSコマンドは発行できないことに注意してください。

(セキュリティ上当たり前なことなのですが)