• ベストアンサー

Oracle8iでのSQL履歴

Windows上のOracle8i 8.1.7に、外部の別の市販のアプリからSQLでアクセスされている時に、Oracle8i側で、リアルタイムにどのようなSQLコマンドを受付けていたかを知る方法はないのでしょうか?

  • teo98
  • お礼率27% (68/244)

質問者が選んだベストアンサー

  • ベストアンサー
  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.2

こんにちわ。 #1 のmuyoshid です。 LogMiner についてちょっと補足します。  1) Oracle9i ステップマスターに記載されているのは    Oracle9i のLogMiner です。    Oracle8i のLogMiner と基本的な部分については同じ    ですが、プロシージャのパラメータ等一部違いがあります。  2) LogMiner で使用するプロシージャについては、    「PL/SQL パッケージ・プロシージャリファレンス」の    DBMS_LOGMNR, DBMS_LOGMNR_D パッケージを確認して    下さい。  3) LogMiner は、Redo Log, Archive Log から発行されたSQL 文の    解析を行うためのものですので、解析されたSQL 文は実際に発行    されたSQL 文と若干異なります。  4) LogMiner で解析できるのは、基本的に更新系のSQL 文だけです。    参照系のSQL 文 (Select 文) の解析を行う場合には、    SQL Trace を採取するか、データディクショナリをSelect する    必要があります。  5) マニュアルについては、ユーザ登録 (無料) が必要ですが、    OTN Japan からDownload 可能です。

参考URL:
http://technet.oracle.co.jp/

その他の回答 (1)

  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.1

こんにちわ。 ちょっとリアルタイムにはなりませんが、方法としては、  1) トレースを採取する。  2) データディクショナリ (V$SQLAREA) をSelect する。  3) LogMiner を使用する。 の何れかになると思います。 Oracle8i からの新機能ですので、LogMiner を使われては いかがでしょうか? → LogMiner はArchive Log, Redo Log から発行されたSQL 文を  解析するためのツール (実際はPL/SQL プロシージャ) です。 Oracle に関する情報は、OTN Japan から入手できます。

参考URL:
http://otn.oracle.co.jp/beginner/PAK/ha/redolog.html,http://technet.oracle.co.jp/

関連するQ&A

  • Oracle8iでの集合関数SQL

    Oracle初心者です。お願いいたします。 Oracle8iに、VB6で接続するアプリですが、 番号 列名  ID  概要     金額 0001 品川  10  駅が広い   10000 0002 渋谷  10  繁華街    15000 0003 川崎  12  新開発地   30000 0004 池袋  13  旧市街    18000 0005 神田  12  本屋街    40000 0006 上野  10  食品街     500 ひとつのSQL文で、上記のような表の、同一のID列ごとにまとまった、金額の合計を求めるのですが、番号・列名・概要は、その“番号”のもっとも大きな番号の値を表示したいのです。ACCESSであれば、列に“First”を使用すればできるのですが、Oracle8iだと、わかりません。 欲しい表示は、 番号 列名  ID  概要     金額 0006 上野  10  食品街    25500 0005 神田  12  本屋街    70000 0004 池袋  13  旧市街    18000 同様なSQLが他にもあり、最終的に、3~6個のSQLを、 Unionで一本化するのですが、元になるSQLがつくれません。 どなたか、よろしくお願いいたします。 by mictic

  • oracle8.1iでSQL文処理時間について

    Oracle8.1iでの質問です。 クライアントからサーバへなんらかのSQL文を 投げた場合、サーバで処理をし、クライアントに 結果を返すと思いますが。 サーバ側でのSQL文の処理開始時刻と処理終了時刻を知りたいのですが、どのような システムテーブルを見ればよいのかご存知の方 教えてください。SQL文まで、分かれば助かります。

  • oracle8.1で発行されたSQLをモニタリングする方法

    oracle8.1で発行されたSQLをモニタリングする方法を 教えて下さい。 標準の機能であるのでしょうか? また、市販の製品などであれば、教えて下さい。

  • Oracle8iでテーブルをエクスポートする方法

    Oracle10gを使用しています。Oracle8iから特定のテーブルを抽出してOracle10gに入れようとしましたが、Oracle10gのexpコマンドは互換性の問題で8iに対して使えませんでした。そこでOracle8iのexpコマンドを使用しようかと考えましたが、テーブルごとのエクスポートができないとのことで不可(データベースが大きすぎるため、そもそも8iのExpコマンドを実行できる権限を持っていないのでできませんが)。 仕方がないのでExpコマンドはあきらめて、テーブル定義抽出→データをCSVまたはSQLで抽出という手順でデータを移そうかと考えています。データの抽出はできたのですが、テーブル定義の取得は10gで使えるdbms_metadata.get_ddlが使用できないので取得できずにこまっています。8iでテーブル定義を取得するにはどうしたらいいのでしょうか? なお当方8iのデータベースのSystem/Sys権限を所有していないません。また8iがインストールされているサーバへログインすることもできません。それを考慮した上で実現可能な方法をご提示願います。

  • Oracle10gから8iへのデータ移行について

    Oracle10g(10.1.0.2)のデータをOracle8i(8.1.6)へ移行する方法を教えていただけないでしょうか? Oracle8iからOracle10gのデータベースへアクセスして,そこでエクスポートすればいいのでしょうか?その方法もいろいろ試しているのですが,解決には至っておりません。 よろしくお願いします。

  • oracle9iのDBからoracle9.2でエクスポートするには・・・

    データベースにoracle9iを使用しているのですが クライアントのoracle9.2からexpコマンドを発行してもエラーで 落ちてしまいます。 うまくエクスポートする方法ありましたら宜しくお願いします。

  • Oracle8iのインストール

    Oracle8iの入門書に書いてあるPersonalのトライアル版のインストール手順に従って、製品版のインストールを試みています。素人なものでよく分からりません。 1)トライアル版では、Windowsのスタートアップメニュー上にStart DataBaseとStop DataBaseとが出来るらしく、それが初心者にとってのOracleの起動にもなってくる?ところが、製品版では、そのようなメーニューが出来てきません。DataBase Configurationを行っても出来てきません。インストールは終了していると思うのですが、まず最初に、Oracleを起動させてみるのには、どうすればよいのでしょうか? 2)このインストール作業を繰り返す中で、リモートシステムから自分のPC上のTNSLSNR.EXEを頻繁にアクセスされるようになりました。これは、どんな意図でアクセスしてきているのでしょうか?また、これを止めるにはどうすればよいのでしょう。 3)Windows2000を立ち上げるときに、ログイン画面より先に、java.exeが、メモリをアクセス出来ないとのエラーメッセージを出してきます。これを止めさせるにはどうすれば良いのでしょう?4)Oracle8iの各グレードの製品版のインストール方法や、初心者向けの練習例が豊富に書かれており、今でも大型書店に並んでいそう書籍が御座いましたら、紹介してください。 よろしくお願いいたします。

  • ORACLEでのSQLについて

    SQLについて教えてください。 今、VBからORACLEデータベースにSQLを投げる処理を作っているのですが、 一つわからないことがあります。 例えば、アクセスでは、クエリで新しいテーブルを作成するという考え方がありますが データベースがORACLEでも同じようなことができるのでしょうか? 別に新しいテーブルを作成することに執着するわけではなく、テーブルのデータを削除 してから、そのテーブルにSQLにて引っ張ってきたデータを入れる という ものでもいいと考えています。そのやり方でもかまいませんので教えてください。 宜しくお願いします。 Oracle8.1.6 vb6

  • Access97からOracle8iへのパススルークエリー

    Oracle8iのテーブルで、Key項目が大きくなりすぎて、Access97のテーブルリンクでは見ることができません。 そこで、パススルークエリーを使ったのですが、テーブル内容は見れるのですが、変更ができません。どなたか変更可能にする方法を知っていたら教えてください。

  • Oracle10gExpressをインストールした後、Oracle8iの接続ができなくなった(ORA-12154)

    お世話になります。 Oracle8iクライアントがインストールされている環境に、 Oracle10gExpressをインストールしました。 Oracle8iでインストールした、SQL Plusからは問題なく接続できるのですが、 AccessにODBC接続させていた、Oracleへの接続がうまくいかなくなりました。 よくわかっていないのですが、 どうも、Oracle10gのtnsnamesを参照しにいっているような気がします。 でも、oracle8iのtnsnames.oraの内容をそのまま、 10gのtnsnames.oraにコピーしましたが、だめでした。 何かご存知の方アドバイスいただけないでしょうか? よろしくお願いいたします。 ●8iのtnsnames.oraでうまくいっていた内容を、10gにコピーした内容です。(内容は変更せずにそのままコピーしました) test.xxx.CO.JP = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.xxx.xxx)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = test) ) )