NTNX>日記

個人的な趣味による Nutanix Community Edition 日記。Japanese のみですみません。

NDB で Oracle Database をクローンしてみる。(Non-CDB)

Nutanix Database Service(NDB)で、Oracle Database のクローンを作成してみます。

今回の内容です。

構成のイメージです。

今回の環境

今回のソース DB(クローン元)にする Oracle Database は、下記の投稿でプロビジョニングしたものです。

クローンした DB への接続確認には、NDB とは関係ない Linux マシンを利用します。

[root@lab-linux-02 ~]# cat /etc/oracle-release
Oracle Linux Server release 8.7

DB のクローン

NDB の Web UI で「タイムマシン」画面で、ソース DB(orandb2)に割り当てられているタイムマシン(orandb2_TM)を開きます。

1) 時間/スナップショット

「アクション」→「シングル インスタンス データベース クローンの作成」をクリックします。

この DB では、日時で NDB のスナップショットを取得する SLA である、「DEFAULT_OOB_BRASS_SLA」が割り当てられています。カレンダーで一番直近の 12月13日を選択して、下にスクロールします。

クローン元にする(12月13日に取得された)スナップショットを選択して、「次へ」をクリックします。

2) データベース サーバー VM

データベース サーバー 名を入力して、コンピュート プロファイル、ネットワーク プロファイルを選択して、「次へ」をクリックします。

今回は、パスワードと SSH 鍵は、クローン元のまま(空欄)にしておきます。

3) データベース

データベースの名前(NDB に登録する名前)、SID、SYS と SYSTEM のパスワード、データベース パラメータ プロファイルを選択して、「クローン」をクリックします。

ちなみに、今回は SYS と SYSTEM のパスワードで「nutanix/4u」を設定しています。

クローン処理が開始されたので、ステータスを確認します。

しばらく待つと、クローンが完了します。

「データベース」画面を開くと ORACLE の「クローン済み DB」が「1」に増えているので、そのあたりをクリックします。

クローン DB の名前をクリックします。

クローン DB のインストタンスと仮想マシンの情報が表示されるので、「接続」にある「説明をご覧ください」リンクをクリックします。

表示された DB への接続情報は、このあとの接続確認で利用します。ここでは「TNS 接続文字列の例」をコピー ボタンなどでどこかに控えておきます。

Prism Element でも、DB サーバの仮想マシンが作成されたことが確認できます。

クローン DB への接続確認

Oracle Linux 8 のマシンに、sqlplus をインストールして接続確認してみます。

まず、sqlplus の RPM がある Yum リポジトリをインストールします。

[root@lab-linux-02 ~]# dnf install -y oracle-instantclient-release-el8

sqlplus をインストールします。

[root@lab-linux-02 ~]# dnf install -y oracle-instantclient-sqlplus

sqlplus がインストールされました。DB より新しいバージョンのものですが接続は可能です。

[root@lab-linux-02 ~]# rpm -q oracle-instantclient-sqlplus
oracle-instantclient-sqlplus-21.8.0.0.0-1.el8.x86_64
[root@lab-linux-02 ~]# sqlplus -v

SQL*Plus: Release 21.0.0.0.0 - Production
Version 21.8.0.0.0

それでは、NDB Web UI で確認した「TNS 接続文字列の例」を利用して接続してみます。今回は下記のように接続します。

  • ユーザ:SYSTEM or SYS(SYS の場合は as sysdba 接続)
  • パスワード: nutanix/4u(スラッシュがあるので、ダブルクオートで囲む)
  • DB サーバ: 192.168.11.106
  • ポート: 1521
  • Oracle のサービス名(今回は Oracle SID と同名): orandb2

SYSTEM ユーザで接続する文字列です。

sqlplus 'SYSTEM/"nutanix/4u"'@"(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.106)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orandb2)))"

SYS ユーザで接続する場合は、コマンドラインに「as sysdba」を追記します。

sqlplus 'SYS/"nutanix/4u"'@"(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.106)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orandb2)))" as sysdba

下記のように DB インスタンスに接続できるはずです。

[root@lab-linux-02 ~]# sqlplus 'SYSTEM/"nutanix/4u"'@"(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.106)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orandb2)))"

SQL*Plus: Release 21.0.0.0.0 - Production on Tue Dec 13 07:01:30 2022
Version 21.8.0.0.0

Copyright (c) 1982, 2022, Oracle.  All rights reserved.

Last Successful login time: Tue Dec 13 2022 06:59:25 -05:00

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL>

もっとシンプルに、下記のように接続先を指定(簡易接続/EZCONNECT)できたりします。

[root@lab-linux-02 ~]# sqlplus 'SYSTEM/"nutanix/4u"'@192.168.11.106:1521/orandb2

SQL*Plus: Release 21.0.0.0.0 - Production on Tue Dec 13 08:35:00 2022
Version 21.8.0.0.0

Copyright (c) 1982, 2022, Oracle.  All rights reserved.

Last Successful login time: Tue Dec 13 2022 07:01:30 -05:00

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL>

以上。

 

©2023 gowatana
クリエイティブ・コモンズ・ライセンスこの 作品 は クリエイティブ・コモンズ 表示 4.0 国際 ライセンスの下に提供されています。