Gblog

おもにTips

リアルタイムSQL監視レポートとDBMS_XPLAN.DISPLAY_CURSOR

リアルタイムSQL監視レポートは非常に便利。Predicate information もみたいので、DBMS_XPLAN.DISPLAY_CURSOR と使うことが多いです。 リアルタイムSQL監視レポート set linesize 1000 pages 1000 set long 1000000 longchunksize 1000000 select dbms_sqltu…

外部表、内部表

いつも忘れるので。実行計画でみたとき、上の表が外部表=駆動表=先にアクセスする表。下の表が、内部表、アクセスされる表。

LEADING ヒントの練習

表を作成して、leading ヒントを付与した場合の挙動を確認。

表レベルのサプリメンタルロギングは有効なのか?

DBA_LOG_GROUPS で確認できる。 SQL> select LOG_GROUP_NAME, TABLE_NAME, LOG_GROUP_TYPE from DBA_LOG_GROUPS where OWNER='G'; LOG_GROUP_NAME TABLE_NAME LOG_GROUP_TYPE ------------------- ----------------- ---------------------------- GGS_XXXXX…

alert log の timestamp を各行の先頭に付与してファイル出力する

python です。 python はド素人です。 import os import re import sys args = sys.argv # ファイル名を引数に指定 alert_log = args[1] # timestamp の初期値 timstr = '------------------------' # エンコーディング(in/out 共通) encode = "shift-jis"…

Application Express のインストール

最近は、クラウドで Application Express (APEX) が簡単に使えるみたいです。 オンプレミス環境で使いたかったのでとりあえず手元の環境で構築したので、その時のメモ。 ちなみに 19c 環境ですが、あいかわらず非マルチテナントです。 マニュアルはこちらが…

Virtual Box のゲストOSにネットワークアダプタを追加すると起動できなくなる

ホストオンリーアダプタを追加してゲストOS を起動しようとしたところ、以下のようなエラーが発生してゲストOS が起動できなくなりました。 仮想マシン "xxx" のセッションを開けませんでした。 ちなみに、Windows 10 の、VirtualBox 6.1 です。 詳細を見て…

リファレンスマニュアルにある初期化パラメータのデフォルト値を CSV出力する pythonスクレイピング

python はド素人ですが、楽したいので python にお願いしてます。 マニュアルは zip をダウンロードしてローカルに保存、展開するケースを想定しています。(マニュアルが書き換わっても確認できるように)

Database Server インストール時の

インストール時に使うコマンド。19c用。 もはや自分専用ですが。

create database link

create database link 文も、毎回調べているのでメモ。。。 using句ベタ書きのパターン

サイレントでDB作成

Google 先生にきいてみても、なかなかマニュアルを教えてくれない。 ドキュメントは、以下がよさそう。 docs.oracle.com 2日で~、だとサイレントなことは書いていない。 コマンドは、こんな感じ。 dbca -silent -createDatabase -templateName General_Purp…

よく使う環境変数

自分が作った環境にはいつも環境変数ファイルを作っておく。 人が作った環境は環境変数がセットされていなかったりする。へこむのでメモ。

ストレージの機能を使用したバックアップ

12c のマニュアルから、サード・パーティのスナップショット・テクノロジを使用したバックアップについて言及されていました。 docs.oracle.com

UNDO がエクステントを割り当てる際の優先順位

表領域の空きがあれば使う。 オフラインの UNDO セグメントから、期限切れのエクステントがあれば使う。 オンラインの UNDO セグメントから、期限切れのエクステントがあれば使う。 表領域が拡張できれば、拡張 オフラインの UNDO セグメントから、期限切れ…

DB_SECUREFILE

マニュアルの記載がわかりにくく、PERMITTED を設定した場合の挙動について認識齟齬があったので動作確認。12.2.0.1 を使っています。(19c まではどうせ同じでしょ?) DB_SECUREFILE 以下の SQL を使用。 alter system set db_securefile='NEVER'; create …

ANYDATA 型

ANYDATAは、TYPEオブジェクトです。列の型にも定義できますが、データを操作するファンクションなども定義されています。 STS触ったついでに、サンプルを。

STS のバインド値

STS (SQL Tuning Set) のバインド値は、DBA_SQLSET_BINDS のVALUE 列から確認が可能です。 ただ、これ、ANYDATA 型。。。 SQL> DESC DBA_SQLSET_BINDS Name Null? Type ----------------------------------------- -------- ---------------------------- SQ…

LOB に対する I/O

すっかり buffer cache 経由でアクセスするものと思ってましたが、CACHE / NOCACHE で制御ができるらしい。 しかもデフォルト NOCACHE 。direct path read が一般的なよう。

CLOB にデータを詰める

ちょっとテスト用にデータを詰めたのでメモ。忘れる自信があるので。

インスタンスの中から、リスナーを作ってみる(SYSが怖い話)

特権ユーザでインスタンスに接続できると、どれぐらいのことができるかという話。インスタンスの中からリスナーを作ってみました。 (もともとは、OS には入れないけどリモートからSYSで接続できる場合に、どれぐらいまずいのか?を説明するために試してみま…

よくつかう tkprof のオプション

よく使うのに忘れる。 AGGREGATE = { YES | NO } SYS = { YES | NO } そもそも、tkprof をたまにしか使わないから。

Virtualbox で disk を拡張するときのコマンド(のメモ)

またやろうとすると、どうせ忘れて google 先生に聞く羽目になるので。 仮想ディスク(VDI)を拡張してから、linux で実行するコマンドのメモ。

NULL は、「= NULL」 では抽出できない。

※ 12.2 で動作確認

コレクション型は苦手

SET MARKUP CSV ON が使える件

12.2 の SQL*Plus の新機能ですが、SET MARKUP CSV ON で、CSV 出力ができるようになっています。 3.5.1.6 MARKUPオプション いままで、列が長いと、col ... for a10, col ... for a10 と一生懸命列を整形していましたが、CSV 出力ならそんな心配はないです。…

SYS_NC00004$

列名です。 GoldenGateのフィジビリティチェックで、SYS_NC00004$ なる列があったので調べてみたところ、どうやらファンクション索引を付けた場合に自動で仮想列ができるようです。

Data Pump の各モードで対象になるオブジェクト

アホのようにマニュアルにリストがないか探していました。 オリジナル export / import はリストがあります。。。 オリジナルのエクスポート オリジナルのインポート Data Pump ではディクショナリビューで管理されていました。。。 DATABASE_EXPORT_OBJECTS…

MVIEW と Data Pump

MVIEW (Materialized View) と Data Pump の組み合わせで小ネタ。 移行時に、「MVIEW は移行先で作成すればいいや」ってことで適当なオブジェクトを作って Pump の exclude の動作確認をしてみました。

サンプルスキーマのインストール

12.2 のテスト環境にサンプルスキーマを入れてます。 昔は Companion CD だった気がしますが、今は Github にあるんですね。。。 サンプル・スキーマのインストール

セグメント管理 [ AUTO | MANUAL ] / エクステント管理 [ LOCAL | DICTIONARY ]

表領域の話。忘れるのでメモ。