ねら~ITエンジニア雑記

やきうのお兄ちゃんが綴るOracle Databaseメインのブログ

Database

PL/SQL の ネイティブ・コンパイル(PLSQL_CODE_TYPE=NATIVE) でループ処理を高速化してみる。(Oracle Database)

Oracle Database の PL/SQL には ネイティブ・コンパイル という機能があり、計算集中型のプロシージャーを高速化できます。 計算集中型とは DML(SELECT, INSERT, UPDATE, DELETE等)以外のロジック部分、例えばループ処理等で時間が掛かるプログラムの事を指…

V$SQL_PLAN の OTHER_XML列 に格納された XMLデータ を整形して出力してみる(Oracle Database)

V$SQL_PLAN は Oracle Database の実行計画に関する情報が格納されていますが、該当SQLに関連する情報が格納されています。 SET LONG 1000000; SET LONGC 1000000; SET LINESIZE 100; COLUMN OTHER_XML_VALUE FORMAT A100; SELECT OTHER_XML FROM V$SQL_PLAN…

DDLトリガー と イベント属性ファンクション で CREATE されるオブジェクトのオーナー名とオブジェクト名を記録する。(Oracle Database)

表題の通り Oracle Database の DDLトリガー と イベント属性ファンクションで、CREATE されるオブジェクトのオーナー名とオブジェクト名を記録してみますやで。 彡(゚)(゚) 1. 参考マニュアル 以下のマニュアルを参考にしました。イベント属性ファンクション…

OCI GoldenGate(OCI GG) で DBCS SE から DBCS EE にレプリケーションしてみる。(Oracle Cloud Infrastructure)

直近はお仕事で OCI GoldenGate を触ることが多いので、記事を書いてみます。 従量課金なのがエエですね。 表題のとおり OCI GoldenGate で Oracle Database(DBCS) のレプリケーションを設定してみるやで。 彡(^)(^) 下記マニュアルの手順(クイックスタート)…

Autonomous Database で SQLトレース を採取してみる。(Oracle Cloud Infrastructure)

いつの間にか Autonomous Database で SQLトレース を採取できるようになったので、下記のマニュアルを見ながらやってみます。 彡(゚)(゚) Autonomous DatabaseでのSQLトレースの実行 https://docs.oracle.com/cd/E83857_01/paas/autonomous-database/adbsa/ap…

CMAN(Oracle Connection Manager) と ロールベース・サービス/NLB で OCI DBCS Data Guard構成 の Primary接続 をシングル・エンドポイント化してみる。(Oracle Database, Oracle Cloud Infrastructure)

本記事は JPOUG Advent Calendar 2021 および OCI Advent Calendar 2021 の 15日目 の記事となります。 彡(^)(^) JPOUG Advent Calendar 2021 https://adventar.org/calendars/6527 Oracle Cloud Infrastructure Advent Calendar 2021 https://qiita.com/adv…

Private Subnet に作成した DBCS に Public Subnet の Network Load Balancer経由 で接続してみる。(Oracle Cloud Infrastructure)

表題の通り Private Subnet に作成した DBCS に、Public Subnet の NLB経由 で接続してみるやで。 彡(゚)(゚) 1. 接続トポロジー/検証環境 接続トポロジーは以下の通りです。 PC -> (Internet) -> NLB(Public Subnet) ┬-> RAC #1(Private Subnet) └-> RAC #2(…

SQL の再帰WITH句で nPr(n = r)の1桁数値順列を生成してみる。(Oracle Database)

1. やりたい事 2. 順列を生成するSQL 3. SQLの解説 4. 参考サイト 1. やりたい事 表題の通り、再帰WITH句で下記のような数値の順列(重複無し)を生成してみます。 1 ... 1 1, 2 ... 12, 21 1, 2, 3 ... 123, 132, 213, 231, 312, 321 : nPr の公式で n = r …

Oracle Database Enterprise Edition 19c を rpm の yum localinstall で OCI Compute にインストールしてみる。

1. 参考ドキュメント 2. oracle-database-preinstall-19c のインストール 3. oracle-database-preinstall-19c のダウンロードと配置 4. oracle-database-ee-19c の インストール(yum localinstall) 5. インストールの確認と sqlplus の起動 6. まとめ おまけ…

OCI DBCS VM で Data Guard を有効化して、ロールベース・サービスを構成して PRIMARYロール に透過的に接続してみる。(Oracle Cloud Infrastructure)

Oracle Cloud Infrastructure(以下、OCI) の DBCS(VM) で Data Guard を有効化して、 ロールベース・サービスを構成して PRIMARYロール の DB に透過的に接続してみるやで。 彡(^)(^) 1. Data Guard の有効化 in OCI DBCS VM OCI DBCS VM の Data Guard有効…

Autonomous Database で Private IP Address(Private Endpoints)がリリースされたので、早速接続してみる。

1. Private Endopoints のマニュアル記述 2. 検証構成 3. VCN, Subnet, Route Table, Security List, NSG(Network Security Group) の作成 4. Private Subnet に Autonomous Database を作成 5. Walletの配置&解凍 と nslookup、Autonomous Database(Privat…

DBLINKを使用した Oracle Database で、DBLINK元と先のデータを取得して表示するJavaコードのサンプル

DBLINKを使用した Oracle Database で DBLINK元と先のデータを取得して表示するJavaコードのサンプルです。 某チャットの某質問で「ソース(情報源)はありますか?」と聞かれて「ぐぬぬ。」となったので、書いてみますた。 彡(゚)(゚) 1. 環境と構成 下記の構成…

Autonomous Database で DRCP(データベース常駐接続プーリング)が使えるようになったので、お試ししてみる。

表題の通り Autonomous Database で DRCP(データベース常駐接続プーリング)が使えるようになりますた。 使うのも非常に簡単なんで、お試ししてみるやで!彡(゚)(゚) 1. DRCP (データベース常駐接続プーリング)とは? Oracle Database はマルチプロセス型の…

Oracle Database 19c + Oracle Cloud(IaaS, DBCS, ATP/ADW) のマニュアルのマニュアル(※よく使うマニュアルのリンク集)

1. ブック(全マニュアル)のリンク 2. 頻繁に見るマニュアル 3. 言語開発(SQL, PL/SQL, 等)系のマニュアル 4. ユーティリティ、ツール系のマニュアル 5. 性能系(チューニング系)のマニュアル 6. SQL*Net系(tnsnames.oraとか sqlnet.oraとか 簡易接続とか)…

Oracle Databaseの初心者が検証&学習する為の環境5選

1. Oracle Live SQL 2. Oracle Cloud Always Free (Oracle Cloud Free Tier) 3. Oracle Technology Network, Database Virtual Box Appliance / Virtual Machine 4. Docker Image で Oracle Database 19c環境を構築 5. 地道に Oracle Database 19c を インス…

外部表(EXTERNAL TABLE) の ORACLE_DATAPUMPアクセス・ドライバーを使用して、CTAS(CREATE TABLE AS SELECT) でデータをファイル出力(アンロード)してみる。

1. 環境とデータ準備 2. ディレクトリ・オブジェクトの作成&権限付与 3. 隠しパラメータ設定(バッドノウハウ……) 4. 外部表のCTAS(CREATE TABLE AS SELECT)によるファイル出力(アンロード) 5. 作成された外部表定義を抽出(DBMS_METADATA.GET_DDL) 6. 上手く…

OTN の VirtualBoxイメージ で Oracle DB 19c環境 を 楽々構築

1. VirtualBox をインストール 2. Database Virtual Box Appliance / Virtual Machine の ovaイメージをダウンロード 3. ovaイメージのインポート 4. 仮想マシンの起動 5. 仮想マシンへのアクセス(ssh + sqlplus) 6. 仮想マシン上のDBへのアクセス(SQL Devel…

JDK6(Java) + JDBC OCI Driver(type 2) で Autonomous Database に接続してみる。

1. Oracle Instant Client 12.1.0.2 をダウンロード&解凍 2. Autonomous Database のウォレットをダウンロード&解凍 3. Autonomous Database のウォレットのsqlnet.oraを編集 4. テスト用のサンプルコード 5. コードのコンパイルと実行 6. 参考ドキュメン…

JDBC URL(Oracle Database, Thin)の作り方

JDBC URL(Oracle Database, Thin)の作り方を書いてみるやで彡(゚)(゚) 1. JDBCマニュアルの記述 2. リスナーの役割 3. データベース・サービスとは? 4. サンプル1:sqlclでJDBC URLを指定しつつ接続確認 5. サンプル2:OCI DB(DBaaS)のCDBにsqlclでJDBC URLを…

名前付きパイプ(mkfifo)でsqlplusのspool結果を圧縮しながらファイル出力する。(Oracle Database)

表題の通り、名前付きパイプ(mkfifo)でsqlplusのspool結果を圧縮しながらファイル出力してみるやで彡(゚)(゚) 1. 名前付きパイプの作成(mkfifo)とgzipコマンドのバックグラウンド実行 2. ファイル出力のSQL 3. sqlplusでSQLを実行(ファイル出力) 4. 圧縮ファイ…

ADW/ATP(Autonomous DB)でObject StorageにアップロードされたCSVファイル(gzip圧縮済)を外部表(EXTERNAL TABLE)として直接参照する。(OCI, Oracle Cloud Infrastructure)

1. サンプルのCSVファイル(gzip圧縮済み) 2. CSVファイル(gzip圧縮済)をObject Storageにアップロード 3. ADW/ATPにCREDENTIALを作成 4. 外部表の作成(DBMS_CLOUD.CREATE_EXTERNAL_TABLEプロシージャ) 5. 作成した外部表の参照 6. まとめ 表題の通り、ADW/AT…

Autonomous DB(ADW/ATP) に Java の JDBC Thin Driver で接続してみる。(OCI, Oracle Cloud Infrastructure)

1. Autonomous DB(ADW/ATP) とは? 2. Autonomous DB(ADW/ATP) に接続する時のポイント(※ウォレットが必須) 3. ウォレット、JDBC Driver Full版 のダウンロードと展開 4. 方法1:ウォレットのパス(TNS_ADMIN) を JDBC URL に記述 5. 方法2:ウォレットのパス(T…

OCI Database(DBaaS) の PDB に Java の JDBC Thin Driver で接続してみる。(Oracle Cloud Infrastructure)

表題の通り、OCI(Oracle Cloud Infrastructure) Database(DBaaS) の PDB に Java の JDBC Thin Driver で接続してみます。下記の構成で試すやで彡(゚)(゚) Compute(Java, JDBC Thin Driver) ⇒ (Private Subnet) ⇒ DBaaS(PDB) 前回の記事の続きになります。 OCI…

OCI Database(DBaaS) の PDB に sqlplus で接続してみる。(Oracle Cloud Infrastructure)

表題の通り、OCI(Oracle Cloud Infrastructure) Database(DBaaS) の PDB に sqlplus で接続してみます。下記の構成で試すやで彡(゚)(゚) Compute(Oracle Client, sqlplus) ⇒ (Private Subnet) ⇒ DBaaS(PDB) 1. PDB, MTA(Multitenant Architecuture) とは? PDB…

ADW(Autonomous Data Warehouse) に OCI の Object Storage にアップロードした dmp を インポート(impdp)してみる。

1. データのエクスポート(expdp) 2. dmpファイルの Object Storage へのアップロード 3. Object Storage にアップロードしたdmpファイルの Pre-authenticated URL生成 4. OCIユーザーの作成とGROUP設定、Auth Token生成 5. DBMS_CLOUDパッケージで ADW に Cr…

まとめ:Oracle Database or GoldenGate Advent Calendar 2018 を振り返る!【Day 25】

このエントリは Oracle Database or GoldenGate Advent Calendar 2018 の Day 25 の 記事となります。最後も一日遅れてしまいました。本当にスミマセン……:(;゙゚'ω゚'): Oracle Database or GoldenGate Advent Calendar 2018 https://adventar.org/calendars/3525 執…

Oracle Database 18c マニュアルのマニュアル(※よく使うマニュアルのリンク集)【Oracle Database or GoldenGate Advent Calendar 2018 Day 23】

※(追記)19c版も書いたのでご覧くださいね。彡(^)(^) https://qiita.com/ora_gonsuke777/items/5da877698ac681806175 このエントリは Oracle Database or GoldenGate Advent Calendar 2018 の Day 23 の 記事となります。またまた一日遅れてしまいました。ほ…

Oracle DatabaseでSQLの性能計測3(SQLトレース編)【Oracle Database or GoldenGate Advent Calendar 2018 Day 20】

1. SQLトレースとは? 2. SQLトレースの出力先と出力可能サイズの確認 3. DBMS_SESSIONパッケージでセッション単位でSQLトレースを取得 4. 出力されたSQLトレースの確認と整形(tkprof) 5. 整形(tkprof)済みトレースの見方 5-1. 整形(tkprof)済みトレースの抜…

SDW(SQL Developer Web) on DBCS をお試ししてみる。【Oracle Database or GoldenGate Advent Calendar 2018 Day 11】【Oracle Cloud その2 Day 11】

1. SQL Developer Web の有効化 2. SQL Developer Web へのアクセス 3. Worksheetタブをお試し。 4. DBAタブのお試し 5. OSタブのお試し 6. まとめ このエントリは Oracle Database or GoldenGate Advent Calendar 2018 の Day 11 の記事となります。 Oracle…

Oracle DatabaseでSQLの性能計測2(DBMS_XPLAN&DBMS_SQLTUNE編)【Oracle Database or GoldenGate Advent Calendar 2018 Day 8】

1. DBMS_XPLANによるSQL実行時間の計測 1-1. DBMS_XPLAN とは? 1-2. ALLSTATS書式の前提条件 1-3. DBMS_XPLAN.DISPLAY_CURSOR(ALLSTATS書式)の実行サンプル 1-4. 出力された統計の統計の見方(DBMS_XPLAN.DISPLAY_CURSORのALLSTATS書式) 2. DBMS_SQLTUNEによ…