Windows Server 2008 で Oracle 10g サーバーを実行しているマシンがあります。データベースのバックアップを取りたいと考えています。また、ユーザーが私の Web サイトを使用してアップロードした、Oracle サーバーによってハードディスクに保存されたいくつかのファイルのバックアップを取りたいと考えています。
sql developer と sqlplus を使用して Oracle サーバーに接続できます。サーバー上でSQLクエリを実行できます。
データベースのバックアップを取るには、"exp" コマンドを実行する必要があります (これは、私が知っているデータベースのバックアップを取る唯一の方法です)。他の方法があるかもしれませんが、別の問題があるため、dos コマンドを実行する必要があります。その問題は、ファイルのバックアップを取ることです。これらのファイルは c:\mydir に保存されます。いずれにせよ、フォルダー mydir は Web からアクセスできず、共有フォルダーではありません。
「sql>」プロンプトで、Oracleサーバーに接続した後、sqlplusで「host」を実行しようとしました。コマンドは正常に実行されましたが、Oracle サーバーではなくローカル マシンで実行されました。
編集:「ホスト」コマンドはsqlplusによって提供され、Oracleコマンドではありません。つまり、クエリでは使用できません。リモート マシンに接続されている場合でも、Sqlplus はローカル マシンで「host」コマンドを実行します。
ターゲットは、sqlplus にリモート マシンで「host」コマンドを実行させるか、または pl/sql クエリ内から (sqlplus とは無関係に) dos コマンドを実行させることです。