おらくるのいる生活

OracleのDBAとしての、障害対応やらパフォーマンス・チューニングやらの日々を綴っています

RHEL 8にOracle19cをインストールする方法(1)

とある案件でRHEL 8上にOracle19cをインストールする事になりました。

RHEL 7の時とは異なる制約がいくつかあるので、以下にインストール方法を記載します。

検証に使用した環境は以下の通りです。

Oracle Restart(SIHA) EE 19.9

RHEL 8.3

まずVM上の仮想サーバにRHEL 8をインストールします。

RHEL 8上にOracle19cをインストールする際の必要な追加パッケージは以下の通りです。

bc
binutils
elfutils-libelf
elfutils-libelf-devel
fontconfig-devel
glibc
glibc-devel
ksh
libaio
libaio-devel
libXrender
libX11
libXau
libXi
libXtst
libgcc
libnsl
librdmacm
libstdc++
libstdc++-devel
libxcb
libibverbs
make
smartmontools
sysstat

rpm -qaコマンドで必要なパッケージがインストールされているか確認したところ、以下のパッケージが不足していました。

elfutils-libelf-devel
fontconfig-devel
glibc-devel
ksh
libaio-devel
libnsl
libstdc++-devel
make
sysstat

isoファイルのマウント先をyumリポジトリに設定し、追加パッケージをインストールしていきます。

 

設定ファイルは/etc/yum.repos.d/の直下、.repoがついていれば名前は任意です。

設定ファイル内のnameも任意の名前を付けます。

baseurl=file: の後の「/」は3つ必要です。

repodataディレクトリが存在するパスを指定するので、実際にrpmファイルが存在するのは/run/media/a/RHEL-8-3-0-BaseOS-x86_64/BaseOS/Packages配下になります。

[root@myhost]# cat /etc/yum.repos.d/dvd.repo
[dvd]
name=dvd
baseurl=file:///run/media/a/RHEL-8-3-0-BaseOS-x86_64/BaseOS/

まず、yum searchで存在を確認。

今回、使用しているOSは30日間試用版なので、未登録のワーニング(?)が出ています。

[root@myhost]# yum search fontconfig-devel
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.

メタデータの期限切れの最終確認: 0:02:01 時間前の 2021年05月31日 00時57分41秒 に実施しました。
= 名前 完全一致: fontconfig-devel============
fontconfig-devel.i686 : Font configuration and customization library

 

リポジトリの用意が出来たので、インストールしていきます。

yumだと依存パッケージまで勝手にインストールしてくれるので楽ですね。

rpmコマンドだと、一つ一つ自分で依存パッケージをインストールしなければならないので、泣きたくなりますが…

[root@myhost]# yum install fontconfig-devel*
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.

メタデータの期限切れの最終確認: 0:02:13 時間前の 2021年05月31日 00時57分41秒 に実施しました。
依存関係が解決しました。
======================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
======================================================
インストール:
fontconfig-devel x86_64 2.13.1-3.el8 dvd 151 k
依存関係のインストール:
bzip2-devel x86_64 1.0.6-26.el8 dvd 224 k
expat-devel x86_64 2.2.5-4.el8 dvd 55 k
freetype-devel x86_64 2.9.1-4.el8 dvd 464 k
libpng-devel x86_64 2:1.6.34-5.el8 dvd 328 k
libuuid-devel x86_64 2.32.1-24.el8 dvd 96 k

トランザクションの概要
======================================================
インストール 6 パッケージ

合計サイズ: 1.3 M
インストール済みのサイズ: 4.4 M
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
トランザクションの確認を実行中
トランザクションの確認に成功しました。
トランザクションのテストを実行中
トランザクションのテストに成功しました。
トランザクションを実行中
(中略)
Installed products updated.

インストール済み:
bzip2-devel-1.0.6-26.el8.x86_64 expat-devel-2.2.5-4.el8.x86_64 fontconfig-devel-2.13.1-3.el8.x86_64
freetype-devel-2.9.1-4.el8.x86_64 libpng-devel-2:1.6.34-5.el8.x86_64 libuuid-devel-2.32.1-24.el8.x86_64

完了しました!

以下同様でパッケージをインストールしていったところ、ksh,sysstat,libstdc++-devel はBaseOSではなくAppStreamディレクトリにあったので、リポジトリ設定を変更して続行したところ…

[root@myhost]# yum install sysstat
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.

メタデータの期限切れの最終確認: 0:29:46 時間前の 2021年05月31日 01時26分45秒 に実施しました。
エラー:
問題: conflicting requests
- nothing provides libsensors.so.4()(64bit) needed by sysstat-11.7.3-5.el8.x86_64
(インストール不可のパッケージをスキップするには、'--skip-broken' を追加してみてください または、'--nobest' を 追加して、最適候補のパッケージのみを使用しないでください)

ksh,libstdc++-devel は無事インストール出来たもののsysstatの依存パッケージであるlibsensors.so.4()(64bit)が不足しています。

リポジトリに存在していない物は自分で用意しなければならないので、Redhatのサイトからダウンロードしました。

DBサーバの作業ディレクトリにrpmファイルを配置し、localinstallでインストールします。

[root@myhost]# yum localinstall /work/lib64lm_sensors4-3.4.0-3.mga6.x86_64.rpm

この後、sysstatのインストールも無事終わり、必須パッケージは揃いました。

 

RHEL 8にOracle19cをインストールする方法(2)」に続きます。