- PR -

ストアドで・・・

1
投稿者投稿内容
VIVIENNE
常連さん
会議室デビュー日: 2004/08/18
投稿数: 21
投稿日時: 2004-10-21 15:31
こんにちわ。

質問があります。
ストアドから、データベースのバックアップを
行うことってできるのでしょうか?

実際、何をしたいのかというと、
VB.NETのプログラムで、
DBのテーブルのデータを別スキーマのテーブルにコピー
する前に、DBのバックアップを取りたいのですが、
そのバックアップ処理をストアドからキックかけたいと
いうことなのですが、そんなことできるのでしょうか?

また、できるとしたら、コーディング的には、
どうしたらよいのでしょうか?

どうしようもない、質問かもしれませんが
教えてください。

お願いします。
VIVIENNE
常連さん
会議室デビュー日: 2004/08/18
投稿数: 21
投稿日時: 2004-10-21 16:18
補足です。

ちょっと話がまとまってきましたので、
上の文では、話が伝わりにくいと思いますので、
簡単にお話します。

ストアドに、こだわらなくても良くなりました。
とにかく、バックアップを作成する再に、
VB.NETから、エクスポートコマンドの実行方法が知りたいです。

DBの情報は、コマンドプロンプトから"EXP"コマンドを
実行することで、エクスポートできることは、
調べたのですが、実際、VB.NETからそれを実行することは、
できるのでしょうか?

また、できるとしたらどのようにすれば、良いのでしょうか?

話が、わかりづらくて大変申し訳ありません。
nodera
大ベテラン
会議室デビュー日: 2003/09/08
投稿数: 200
投稿日時: 2004-10-21 16:31
こんにちは。

対象としているデータベースは何でしょうか?
データベースによってバックアップやデータをエクスポートする方法は変わってくると思います。

"EXP"コマンドというのが隠されたヒントかも知れませんが。。。。自分の知らないコマンドなので、環境書かれても答えられない可能性大w あとは他の方に任せます。。。
VIVIENNE
常連さん
会議室デビュー日: 2004/08/18
投稿数: 21
投稿日時: 2004-10-21 16:53
引用:

noderaさんの書き込み (2004-10-21 16:31) より:
こんにちは。

対象としているデータベースは何でしょうか?
データベースによってバックアップやデータをエクスポートする方法は変わってくると思います。

"EXP"コマンドというのが隠されたヒントかも知れませんが。。。。自分の知らないコマンドなので、環境書かれても答えられない可能性大w あとは他の方に任せます。。。



データベースは、オラクルです。

ええと、ここまで色々調べてみて、
VB.NETから"EXP.EXE"という、EXEファイルを実行して
上げればよさそうだと思うのですが(あってます?)、
その方法を知っている方いませんか?
いーた
大ベテラン
会議室デビュー日: 2004/07/12
投稿数: 154
お住まい・勤務地: 東京
投稿日時: 2004-10-21 17:04
バージョンがわかりませんが、9iR2(9.2.0)と仮定して...
EXP.EXE(Exportユーティリティー)については下記サイトのマニュアルが参考になると思います。(会員登録が必要です)
http://otn.oracle.co.jp/document/products/oracle9i/920/general.html#sql

Backup対象が固定であればVB.NET等のアプリではなく、バッチファイルやスクリプトでシンプルに作っても良いかもしれません。
てっく
常連さん
会議室デビュー日: 2002/11/05
投稿数: 28
投稿日時: 2004-10-21 17:48
こんにちわ、てっくです。

引用:
VB.NETから"EXP.EXE"という、EXEファイルを実行して
上げればよさそうだと思うのですが(あってます?)、
その方法を知っている方いませんか?


ということですが、
こちらとかはいかがでしょう?

まぁexpを直接叩くかバッチを作ってそれを叩くかは自由に、ということで。
VIVIENNE
常連さん
会議室デビュー日: 2004/08/18
投稿数: 21
投稿日時: 2004-10-21 18:21
お返事ありがとうございます。

Oracleのバージョンについてですが、
DBがOracle8iのクライアントがOracle9.2です。

ここで、ちょっと問題がありまして、
エクスポートの実行をクライアントから行いたいのですが、
できるでしょうか?

クライアントから行うとなると、
サーバにバッチを用意して、そのバッチを起動する
って感じになるんでしょうか?

できれば、クライアントプログラム内でやりたいのですが・・・。
いーた
大ベテラン
会議室デビュー日: 2004/07/12
投稿数: 154
お住まい・勤務地: 東京
投稿日時: 2004-10-21 18:56
引用:

エクスポートの実行をクライアントから行いたいのですが、
できるでしょうか?


クライアントPCに"EXP.EXE"がインストールされていれば可能です。
確か、OracleClientのインストール時に「管理」を選択してインストールすると"EXP.EXE"もインストールされるはずです。

引用:

ここで、ちょっと問題がありまして、
エクスポートの実行をクライアントから行いたいのですが、
できるでしょうか?


結論から言えば「できない」かと。
Versionが異なる場合、Versionが低い方のExportユーティリティーを使う必要がある為です。
この場合、8iでエクスポート/インポートを行う必要があります。
詳しくはマニュアルを参照して下さい。

引用:

クライアントから行うとなると、
サーバにバッチを用意して、そのバッチを起動する
って感じになるんでしょうか?


それが一番簡単な方法だと思います。

引用:

できれば、クライアントプログラム内でやりたいのですが・・・。


その理由はなんでしょうか?
クライアントPCが9.2という事は他に9iのDBサーバがあるのでしょうか?
目的がわかればもっと適切なレスや違った視点での回答も期待できると思います。
1

スキルアップ/キャリアアップ(JOB@IT)