※ 本記事は、Martin Bachによる”Starting Oracle Database 23ai Free at boot time“を翻訳したものです。

2024年11月6日


ブート時にOracle Database 23ai Freeデータベース・インスタンスを起動する方法」に関する質問は、最近フォーラムで発表されました。その方法を短い記事にするのはいい思い出になります。

この記事は以下のような方にお勧めです

  • カスタム仮想マシンを使用 (VirtualBox用のOracleの事前構築済仮想アプライアンスではありません)
  • 仮想マシン(コンテナではありません)で使用するOracle Database 23ai Free RPMをダウンロードしてインストール
  • Linux x86-64またはaarch64を使用

その場合は、この先をお読みください! この投稿は、Oracle Database Enterprise Edition、Standard Edition 2、またはOracle Database 23ai Free以外のエディションには適用されません

Oracle Database 23ai Free (RPMバージョン)のインストール

最初のステップは、O/Sをインストールすることです。この記事では、2024年9月24日に更新された、x86-64上のOracle Linux 9.4用のOracle Database 23ai FreeデータベースRPMのインストールについて説明します。パッケージ名などのごく小さな違いを除けば、OracleLinux 8やその他のサポートされているLinuxディストリビューションにも適用されます。

まず、GUIまたはお気に入りの自動化ツールを使用して、組織内の手順と標準に従って、常にO/Sをインストールすることから始めます。システムをインストールしてリブートしたら、sudo対応のユーザーまたはrootとしてログインします。

RPMの事前インストール

推奨される次のステップは、プリインストールRPMをインストールすることです。システムに取り込むために必要なすべての依存関係を処理し、それらが存在することを確認するもっとも簡単な方法です。プリインストールRPMは、データベース・ソフトウェアをどのようにインストールすべきかについての意見を表したものであり、Database Freeのインストールではあまり問題にならないかもしれませんが、プリインストールPRMが行った設定について承認を得るために、必ずエンジニアリング部門に相談してください。

プリインストールRPMには、OracleのYUMサーバーから直接アクセスできます。RedHatや他のRH互換ディストリビューションを使用している場合は、OracleのWebサイトからプリインストールRPMを入手することができます。

[vagrant@oraclefree ~]$ sudo dnf install -y oracle-database-preinstall-23ai.x86_64
Last metadata expiration check: 0:10:40 ago on Tue 24 Sep 2024 06:00:59 AM UTC.
Dependencies resolved.
========================================================================================================================
 Package                                Architecture  Version                            Repository                Size
========================================================================================================================
Installing:
 oracle-database-preinstall-23ai        x86_64        1.0-2.el9                          ol9_appstream             35 k
Installing dependencies:
 avahi-libs                             x86_64        0.8-20.el9                         ol9_baseos_latest         73 k
 bc                                     x86_64        1.07.1-14.el9                      ol9_baseos_latest        135 k

...

  smartmontools-1:7.2-9.el9.x86_64                             sssd-nfs-idmap-2.9.4-6.0.1.el9_4.1.x86_64                
  sysstat-12.5.4-8.0.1.el9_4.x86_64                            tar-2:1.34-6.el9_4.1.x86_64                              
  xml-common-0.6.3-58.el9.noarch                               xorg-x11-utils-7.5-40.el9.x86_64                         
  xorg-x11-xauth-1:1.1-10.el9.x86_64                          

Complete!

Oracle Database 23ai Freeのインストール

次に、開始ページからも取得できるデータベースRPMが必要です。Linuxディストリビューションに適したバージョンをダウンロードしてください。RPMをダウンロードすると、次のようにインストールできます:

[vagrant@oraclefree ~]$ sudo dnf install -y oracle-database-free-23ai-1.0-1.el9.x86_64.rpm 
Last metadata expiration check: 0:04:31 ago on Tue 24 Sep 2024 06:11:45 AM UTC.
Dependencies resolved.
========================================================================================================================
 Package                                  Architecture          Version               Repository                   Size
========================================================================================================================
Installing:
 oracle-database-free-23ai                x86_64                1.0-1                 @commandline                1.3 G

Transaction Summary
========================================================================================================================
Install  1 Package

Total size: 1.3 G
Installed size: 3.5 G
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                1/1 
  Running scriptlet: oracle-database-free-23ai-1.0-1.x86_64                                                         1/1 
  Installing       : oracle-database-free-23ai-1.0-1.x86_64                                                         1/1 
  Running scriptlet: oracle-database-free-23ai-1.0-1.x86_64                                                         1/1 
[INFO] Executing post installation scripts...
[INFO] Oracle home installed successfully and ready to be configured.
To configure Oracle Database Free, optionally modify the parameters in '/etc/sysconfig/oracle-free-23ai.conf' 
and then run '/etc/init.d/oracle-free-23ai configure' as root.

  Verifying        : oracle-database-free-23ai-1.0-1.x86_64                                                         1/1 

Installed:
  oracle-database-free-23ai-1.0-1.x86_64                                                                                

Complete!

データベースの作成と構成

データベースのインストールはほぼ完了です。前述のRPM出力のINFOに従って、LISTENER_PORTなどの/etc/sysconfig/oracle-free-23ai.confのデフォルトを変更し、Transparent Data Encryption (TDE)を有効にするか、単に先に進んで構成ステップを実行したりすることができます。データベースをクラウドに移動する予定の場合、またはTDEを使用する場合、TDE (/etc/sysconfig/oracle-free-23ai.confCONFIGURE_TDE)を構成すると便利です。

ファイルをレビューして編集し、データベースを構成します:

[vagrant@oraclefree ~]$ sudo /etc/init.d/oracle-free-23ai configure
Specify a password to be used for database accounts. Oracle recommends that the password entered should be at least 8 characters in length, 
contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. 
Note that the same password will be used for SYS, SYSTEM and PDBADMIN accounts:
Confirm the password:
Configuring Oracle Listener.
Listener configuration succeeded.
Configuring Oracle Database FREE.

...

100% complete
Database creation complete. For details check the logfiles at:
 /opt/oracle/cfgtoollogs/dbca/FREE.
Database Information:
Global Database Name:FREE
System Identifier(SID):FREE
Look at the log file "/opt/oracle/cfgtoollogs/dbca/FREE/FREE.log" for further details.

Connect to Oracle Database using one of the connect strings:
     Pluggable database: oraclefree/FREEPDB1
     Multitenant container database: oraclefree
[vagrant@oraclefree ~]$ 

データベースは稼働中であり、すでに操作を開始できます。ただし、VMからは自動的には開始されませんが、これは次に設定したものです。

Oracle Database 23ai Freeの自動起動

データベースRPMには、使用可能な起動/停止スクリプトが付属しています。まず、systemdをリロードして、新しくインストールされたファイルが表示されていることを確認します:

[vagrant@oraclefree ~]$ sudo systemctl daemon-reload
[vagrant@oraclefree ~]$ sudo systemctl status oracle-free-23ai
○ oracle-free-23ai.service - SYSV: This script is responsible for taking care of configuring the RPM Oracle FREE Databa>
     Loaded: loaded (/etc/rc.d/init.d/oracle-free-23ai; generated)
     Active: inactive (dead)
       Docs: man:systemd-sysv-generator(8)

スクリプトは有効化も起動もされていないことがわかります。これを変更します:

[vagrant@oraclefree ~]$ sudo systemctl enable oracle-free-23ai && sudo systemctl start oracle-free-23ai
oracle-free-23ai.service is not a native service, redirecting to systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable oracle-free-23ai

データベース・サービスが有効化され、アクティブになりました:

[vagrant@oraclefree ~]$ sudo systemctl status oracle-free-23ai
● oracle-free-23ai.service - SYSV: This script is responsible for taking care of configuring the RPM Oracle FREE Databa>
     Loaded: loaded (/etc/rc.d/init.d/oracle-free-23ai; generated)
     Active: active (exited) since Tue 2024-09-24 06:35:47 UTC; 15s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 49778 ExecStart=/etc/rc.d/init.d/oracle-free-23ai start (code=exited, status=0/SUCCESS)
        CPU: 10ms

Sep 24 06:35:47 oraclefree systemd[1]: Starting SYSV: This script is responsible for taking care of configuring the RPM Ora>
Sep 24 06:35:47 oraclefree oracle-free-23ai[49778]: The Oracle Database instance FREE is already started.
Sep 24 06:35:47 oraclefree systemd[1]: Started SYSV: This script is responsible for taking care of configuring the RPM Orac>
lines 1-10/10 (END)

この設定により、VMのブート時にOracle Database 23aiも自動的に起動されます。

ハッピー・テスト!