Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20250124_JPOUG_BaseDBを使う上で気を付けたいこと/20250124-jpo...
Search
seigen_chan
February 05, 2025
0
91
20250124_JPOUG_BaseDBを使う上で気を付けたいこと/20250124-jpoug-basedb
seigen_chan
February 05, 2025
Tweet
Share
More Decks by seigen_chan
See All by seigen_chan
20241217_OCIjp_BackupModuleについて/20241217-ocijp-backupmodule
seigen_chan
0
5
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
KATA
mclloyd
29
14k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.3k
A Modern Web Designer's Workflow
chriscoyier
693
190k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
670
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Typedesign – Prime Four
hannesfritz
41
2.5k
How GitHub (no longer) Works
holman
314
140k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Transcript
BaseDBを使う上で気を付けたいこと JPOUG TECH TALK NIGHT #11 佐々木 慎太郎
アジェンダ ・自己紹介 ・BaseDBとは ・BaseDBを使う上で気を付けたいこと(5つピックアップ)
自己紹介 •名前 佐々木 慎太郎 •日本オラクルに中途で入社しました ・2024年9月15日入社 ・カスタマーサポート(いわゆるSR対応) ・現在は主にBaseDB、たまにAutonomous Databaseを担当 ・前職(小さなSIer)で、DBA経験少ない中で独学で勉強して
ORACLE MASTER Platinum DBA 2019を取得 •趣味 ・旅 ・ラヴィット!をTverで見ること
自己紹介 •アウトプット ・Oracle Cloud Infrastructure Advent Calendar 2024 Day 9
「CloudWorld2024の旅記録残しつつCloudWorld2025への目標立ててみた」 ・2024/12/17 OCIjp#57 LT 「Oracle Database Cloud Backup Moduleを使用したRMANバックアップについて」 •X(Twitter) seigen_chan(せいげん) ラヴィット!含めて独り言つぶやいています。 しあわせになりたい!
免責事項 ・本資料の内容は、私自身の個人的な見解となります。会社を代表した立場での発表ではあり ませんのでご了承ください。 ・引用元の資料はOracle/日本オラクルの公式見解を必ずしも反映したものではなく、マニュア ル等で公開されている情報や実際の製品仕様・動作と異なる可能性がありますのでご了承く ださい。
BaseDBとは(1) ・Oracle DatabaseがインストールされたVMを提供 ・SSH接続(TeraTerm等)により、OSレベルから操作可能 ・シスログの確認等、OS管理操作 ・sqlplus / as sysdba; 等、DBAとしての管理操作
・一部操作について、 OCIコンソールから操作可能 ・PDBの作成/削除 ・DataGuardの有効化 ・DBSystem(いわゆるVM)のクローン ・自動バックアップの設定 BaseDB 技術詳細 https://speakerdeck.com/oracle4engineer/basedb-tech- detail?slide=50
BaseDBとは(2) ・オンプレと同様にOS操作から行えるので、ユーザは(極端には)何でも設定作業可能。 ・ただし、原則、OSレベルであってもDBレベルであっても、デフォルト値からの変更は推奨して いない。 ・OCIコンソールから操作可能な操作は、コマンドではなくOCIコンソールから行う。 (実機の状態とOCIコンソール上の画面表示が合わなくなる等、BaseDBとして不整合が起きてし まう) BaseDB 技術詳細 https://speakerdeck.com/oracle4engineer/basedb-tech-
detail?slide=59
気を付けたいこと(1)PDBを手動で作成する ・sqlplusからPDBを手動で作成する SQL> create pluggable database TESTPDB2 admin user pdbadm
identified by XXX; SQL> create pluggable database TESTPDB3 from TESTPDB1 keystore identified by XXX;
気を付けたいこと(1)PDBを手動で作成する ・実機の状態とOCIコンソール上の表示が一致しなくなる。 ⇒OCIコンソール上で可能な操作は、OCIコンソールから実施する。 ※BaseDB(VM)によって、遅延同期することもあるが、OCIコンソールから操作した方が確実
気を付けたいこと(2)sysユーザのパスワードを手動で変更する(NG) ・OSでrootユーザ、oracleユーザになれるため、通常はDBユーザのパスワードは意識しない。 $ sudo su – # su – oracle
$ sqlplus / as sysdba; ・DBユーザのパスワード変更 SQL> alter user sys identified by WelCome_123#; SQL> alter user system identified by WelCome_123#; ⇒検証したところ、バックアップ取得も、PDB作成も、OCIコンソール上から成功。(ただし気持ち 良くない。。)
気を付けたいこと(2)sysユーザのパスワードを手動で変更する(NG) ・OCIコンソールからのパスワード変更方法(OK) ※実機とBaseDB(VM)上のエージェントの状態を一致させる ・その他、主要なOSユーザに対する変更も非推奨(opc、oracle、grid) ※OCIコンソールからの操作等で、どこでエラーになるか分からない。(保証されない) ※デフォルトで用意されているものは変更しない。
気を付けたいこと(3)BaseDBの自動バックアップと、RMAN手動バックアップを併用する(NG) ・RMANから手動でバックアップを取得出来るが、OCIコンソール上のバックアップの一覧に同期 されない。 (手動でバックアップを取得しても、OCIコンソールからのリストアは行えない)
2025/1/21 11:27頃のLevel0 バックアップ 2025/1/21 12:57頃のLevel1 バックアップ 2025/1/24 17:00頃の手動バックアップ 手動バックアップ実行(DISK保存)
BaseDBの自動バックアップ ・バックアップの保存先:オブジェクト・ストレージ(オラクル内部管理のバケット) (例)Media: swiftobjects~.us-phoenix-~.oraclecloud.com~/bivErAohG5WFj3ueYD44 ※自律型リカバリ・サービスも選択可能 ・RMANの設定は意識せずに利用可能。(内部でRMANが動いているとも意識しない) ・自動バックアップのスケジュールはOCIコンソール上から設定可能。 ・完全バックアップ:デフォルトは日曜日 ・差分バックアップ:デフォルトは日曜日以外毎日
Oracle Database Cloud Backup Moduleとは ・RMANの操作によって、ユーザ管理のバケットにバックアップを保存できる機能 ・バックアップの保存先:オブジェクト・ストレージ(ユーザ管理のバケット) (例)Media: swiftobjects~.us-phoenix-~.oraclecloud.com/v1/d~/test_user_bucket ・RMANの設定をカスタマイズして、通常のRMANとして利用可能。
(ご参考) 『RMANを使用してデータベースのバックアップが作成され、Oracle Database Cloud Backup Module によってこれらのバックアップがオフサイト・ストレージのためにネットワーク経由でOracle Database Backup Cloud Serviceに送信されます。』 https://docs.oracle.com/cd/F82042_01/rcmrf/oracle-database-cloud-backup-module.html
Backup Moduleのセットアップ ・Backup Moduleのインストール(詳細割愛) ・インストール後、rmanの設定変更 SBTデバイスを使用し、バックアップ・モジュールのインストール時に作成されたconfigファイルを 指すように、RMANを構成 CONFIGURE CHANNEL DEVICE
TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)'; CONFIGURE DEFAULT DEVICE TYPE TO SBT_TAPE;
Backup実行 ・RMAN> backup database; ⇒OCIコンソールのバケットで、バックアップピースを確認可能。
気を付けたいこと(3)BaseDBの自動バックアップと、RMAN手動バッ クアップを併用する(NG) ・バックアップが自分のバケットに格納されない。 ・Oracle内部管理のバケットに格納されている様子。 ・RMANの設定が元に戻っている。
気を付けたいこと(3)BaseDBの自動バックアップと、RMAN手動バッ クアップを併用する(NG) ・自動バックアップとBackup Moduleによるバックアップは併用してはいけない。 Backup Moduleによるバックアップを行う場合は、自動バックアップはOFFにする。 https://speakerdeck.com/oracle4engineer/basedb-tech-detail?slide=61
気を付けたいこと(4)OMF管理外に データファイルを作成する ・OMF(Oracle Managed Files) データファイル等の場所の管理をOracleに任せる。 ・データファイルはすべてOMF管理(下記例では、+DATA配下にデータファイルを作成する)
気を付けたいこと(4)OMF管理外に データファイルを作成する ・OMF管理外へのデータファイル作成→OCIコンソール上でPDBを作成(結果として成功) OMF管理外(TESTPDB1のUSERSに追加) TESTPDB2ではOMF管理に変わっている
気を付けたいこと(4)OMF管理外に データファイルを作成する ・OMF管理外へのデータファイル作成→OCIコンソール上でBaseDB(VM)のクローンを作成(失 敗)
気を付けたいこと(5)NOARCHIVELOG モードを使用する (基本的な内容ですが・・) ・ARCHIVELOGモード オンラインREDOログをアーカイブして、リカバリ オンラインのまま、バックアップが取得可能 ・NOARCHIVELOGモード オンラインREDOログをアーカイブしない。 オフラインにしないと、バックアップが取得できない ・BaseDBのデフォルトはアーカイブログモード。
気を付けたいこと(5)NOARCHIVELOG モードを使用する ・NOARCHIVELOGモードにしていると、OCIコンソールからのバックアップが取得できない
気を付けたいこと(5)NOARCHIVELOG モードを使用する ・BaseDBでは、OCIコンソール上からGUI操作にて、DataGuardを有効化できる(スタンバイの データベースを作成できる)
気を付けたいこと(5)NOARCHIVELOG モードを使用する ・NOARCHIVELOGモードにしていると、DataGuardを有効化できない(表向きはエラー原因不明)
まとめ(再掲) ・オンプレと同様にOS操作から行えるので、ユーザは(極端には)何でも設定作業可能。 ・ただし、原則、OSレベルであってもDBレベルであっても、デフォルト値からの変更は推奨して いない。 ・OCIコンソールから操作可能な操作は、コマンドではなくOCIコンソールから行う。 (実機の状態とOCIコンソール上の画面表示が合わなくなる等、BaseDBとして不整合が起きてし まう) BaseDB 技術詳細 https://speakerdeck.com/oracle4engineer/basedb-tech-
detail?slide=59
参考資料 BaseDB 技術詳細 https://speakerdeck.com/oracle4engineer/basedb-tech-detail RMANを使用したオブジェクト・ストレージへのデータベースのバックアップ https://docs.oracle.com/ja-jp/iaas/base-database/doc/back-database-object-storage-using- rman.html