Install Oracle 11gR2 on RHEL8

NeilZhang
NeilZhang
管理员
140
文章
106.8千
浏览
Oracle评论3,8772字数 549阅读1分49秒阅读模式

First of all, I do not recommend to install Oracle 11gR2 on RHEL8, especially in the production environments.

While if you have to do such installation for test or data migration, then you could refer this post.

Last year I saw a task on Upwork to do such installation, and at the beginning I thought such thing would not be so tough and I should be able to finish it soon. To confirm I could finish it I installed RHEL8 on my VM and tried to install Oracle 11gR2 no it. I encountered several different errors and even I tried to downgrade the GCC version. I could not remember how many days I spent on it before I completed it finally.

I forgot to write down all the issues while I did upgrade my Oracle installation preparing script to support RHEL8.

In last month, I found another similar task also on Upwork and I did the same test again, and this time I finished it quite smoothly. While I still could not earn the fee as the owner did not award this task to me. Install Oracle 11gR2 on RHEL8

It is better as now I could share this experience without much concern.

Three key things should be done here:

1. Install the required packages.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
if [ -f /etc/redhat-release ]; then
if uname -a | grep 'x86_64' >/dev/null; then
grep -E '(release 6|release 7|release 8)' /etc/redhat-release >/dev/null
if [ $? -eq 0 ]; then
bit32=i686
grep 'release 8' /etc/redhat-release >/dev/null && DNFOPT='--setopt=strict=0'
else
bit32=i386
fi
yum -y $DNFOPT install tar bzip2 gzip install bc nscd perl-TermReadKey unzip zip parted openssh-clients bind-utils wget nfs-utils smartmontools \
binutils.x86_64 compat-db.x86_64 compat-libcap1.x86_64 compat-libstdc++-296.${bit32} compat-libstdc++-33.x86_64 compat-libstdc++-33.${bit32} \
elfutils-libelf-devel.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.x86_64 glibc.${bit32} glibc-devel.x86_64 glibc-devel.${bit32} ksh.x86_64 libaio.x86_64 net-tools.x86_64 \
libaio-devel.x86_64 libaio.${bit32} libaio-devel.${bit32} libgcc.${bit32} libgcc.x86_64 libgnome.x86_64 libgnomeui.x86_64 libstdc++.x86_64 libstdc++-devel.x86_64 \
libstdc++.${bit32} libstdc++-devel.${bit32} libXp.${bit32} libXt.${bit32} libXtst.x86_64 libXtst.${bit32} make.x86_64 pdksh.x86_64 psmisc.x86_64 sysstat.x86_64 unixODBC.x86_64 \
unixODBC-devel.x86_64 unixODBC.${bit32} unixODBC-devel.${bit32} xorg-x11-utils.x86_64 libnsl.x86_64
else
yum -y install bc nscd perl-TermReadKey unzip zip parted openssh-clients bind-utils wget nfs-utils smartmontools binutils compat-db compat-libcap1 compat-libstdc++-296 \
compat-libstdc++-33 elfutils-libelf-devel gcc gcc-c++ glibc glibc-devel ksh libaio net-tools libaio-devel libgcc libgnome libgnomeui libstdc++ libstdc++-devel \
libXp libXt libXtst make pdksh sysstat unixODBC unixODBC-devel xorg-x11-utils
fi
elif [ -f /etc/SuSE-release ]; then
if uname -a | grep 'x86_64' >/dev/null; then
zypper -n in -l --no-recommends binutils gcc gcc48 glibc glibc-32bit glibc-devel glibc-devel-32bit \
mksh libaio1 libaio-devel libcap1 libstdc++48-devel libstdc++48-devel-32bit libstdc++6 libstdc++6-32bit \
libstdc++-devel libstdc++-devel-32bit libgcc_s1 libgcc_s1-32bit make sysstat xorg-x11-driver-video \
xorg-x11-server xorg-x11-essentials xorg-x11-Xvnc xorg-x11-fonts-core xorg-x11 xorg-x11-server-extra xorg-x11-libs xorg-x11-fonts
fi
fi
if [ -f /etc/redhat-release ]; then if uname -a | grep 'x86_64' >/dev/null; then grep -E '(release 6|release 7|release 8)' /etc/redhat-release >/dev/null if [ $? -eq 0 ]; then bit32=i686 grep 'release 8' /etc/redhat-release >/dev/null && DNFOPT='--setopt=strict=0' else bit32=i386 fi yum -y $DNFOPT install tar bzip2 gzip install bc nscd perl-TermReadKey unzip zip parted openssh-clients bind-utils wget nfs-utils smartmontools \ binutils.x86_64 compat-db.x86_64 compat-libcap1.x86_64 compat-libstdc++-296.${bit32} compat-libstdc++-33.x86_64 compat-libstdc++-33.${bit32} \ elfutils-libelf-devel.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.x86_64 glibc.${bit32} glibc-devel.x86_64 glibc-devel.${bit32} ksh.x86_64 libaio.x86_64 net-tools.x86_64 \ libaio-devel.x86_64 libaio.${bit32} libaio-devel.${bit32} libgcc.${bit32} libgcc.x86_64 libgnome.x86_64 libgnomeui.x86_64 libstdc++.x86_64 libstdc++-devel.x86_64 \ libstdc++.${bit32} libstdc++-devel.${bit32} libXp.${bit32} libXt.${bit32} libXtst.x86_64 libXtst.${bit32} make.x86_64 pdksh.x86_64 psmisc.x86_64 sysstat.x86_64 unixODBC.x86_64 \ unixODBC-devel.x86_64 unixODBC.${bit32} unixODBC-devel.${bit32} xorg-x11-utils.x86_64 libnsl.x86_64 else yum -y install bc nscd perl-TermReadKey unzip zip parted openssh-clients bind-utils wget nfs-utils smartmontools binutils compat-db compat-libcap1 compat-libstdc++-296 \ compat-libstdc++-33 elfutils-libelf-devel gcc gcc-c++ glibc glibc-devel ksh libaio net-tools libaio-devel libgcc libgnome libgnomeui libstdc++ libstdc++-devel \ libXp libXt libXtst make pdksh sysstat unixODBC unixODBC-devel xorg-x11-utils fi elif [ -f /etc/SuSE-release ]; then if uname -a | grep 'x86_64' >/dev/null; then zypper -n in -l --no-recommends binutils gcc gcc48 glibc glibc-32bit glibc-devel glibc-devel-32bit \ mksh libaio1 libaio-devel libcap1 libstdc++48-devel libstdc++48-devel-32bit libstdc++6 libstdc++6-32bit \ libstdc++-devel libstdc++-devel-32bit libgcc_s1 libgcc_s1-32bit make sysstat xorg-x11-driver-video \ xorg-x11-server xorg-x11-essentials xorg-x11-Xvnc xorg-x11-fonts-core xorg-x11 xorg-x11-server-extra xorg-x11-libs xorg-x11-fonts fi fi
  1. if [ -f /etc/redhat-release ]; then
  2. if uname -a | grep 'x86_64' >/dev/null; then
  3. grep -E '(release 6|release 7|release 8)' /etc/redhat-release >/dev/null
  4. if [ $? -eq 0 ]; then
  5. bit32=i686
  6. grep 'release 8' /etc/redhat-release >/dev/null && DNFOPT='--setopt=strict=0'
  7. else
  8. bit32=i386
  9. fi
  10. yum -y $DNFOPT install tar bzip2 gzip install bc nscd perl-TermReadKey unzip zip parted openssh-clients bind-utils wget nfs-utils smartmontools \
  11. binutils.x86_64 compat-db.x86_64 compat-libcap1.x86_64 compat-libstdc++-296.${bit32} compat-libstdc++-33.x86_64 compat-libstdc++-33.${bit32} \
  12. elfutils-libelf-devel.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.x86_64 glibc.${bit32} glibc-devel.x86_64 glibc-devel.${bit32} ksh.x86_64 libaio.x86_64 net-tools.x86_64 \
  13. libaio-devel.x86_64 libaio.${bit32} libaio-devel.${bit32} libgcc.${bit32} libgcc.x86_64 libgnome.x86_64 libgnomeui.x86_64 libstdc++.x86_64 libstdc++-devel.x86_64 \
  14. libstdc++.${bit32} libstdc++-devel.${bit32} libXp.${bit32} libXt.${bit32} libXtst.x86_64 libXtst.${bit32} make.x86_64 pdksh.x86_64 psmisc.x86_64 sysstat.x86_64 unixODBC.x86_64 \
  15. unixODBC-devel.x86_64 unixODBC.${bit32} unixODBC-devel.${bit32} xorg-x11-utils.x86_64 libnsl.x86_64
  16. else
  17. yum -y install bc nscd perl-TermReadKey unzip zip parted openssh-clients bind-utils wget nfs-utils smartmontools binutils compat-db compat-libcap1 compat-libstdc++-296 \
  18. compat-libstdc++-33 elfutils-libelf-devel gcc gcc-c++ glibc glibc-devel ksh libaio net-tools libaio-devel libgcc libgnome libgnomeui libstdc++ libstdc++-devel \
  19. libXp libXt libXtst make pdksh sysstat unixODBC unixODBC-devel xorg-x11-utils
  20. fi
  21. elif [ -f /etc/SuSE-release ]; then
  22. if uname -a | grep 'x86_64' >/dev/null; then
  23. zypper -n in -l --no-recommends binutils gcc gcc48 glibc glibc-32bit glibc-devel glibc-devel-32bit \
  24. mksh libaio1 libaio-devel libcap1 libstdc++48-devel libstdc++48-devel-32bit libstdc++6 libstdc++6-32bit \
  25. libstdc++-devel libstdc++-devel-32bit libgcc_s1 libgcc_s1-32bit make sysstat xorg-x11-driver-video \
  26. xorg-x11-server xorg-x11-essentials xorg-x11-Xvnc xorg-x11-fonts-core xorg-x11 xorg-x11-server-extra xorg-x11-libs xorg-x11-fonts
  27. fi
  28. fi

2. Add the needed library link

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
ln -s /lib64/libnsl.so.1 /lib64/libnsl.so 2>/dev/null
ln -s /lib64/libnsl.so.1 /lib64/libnsl.so 2>/dev/null
  1. ln -s /lib64/libnsl.so.1 /lib64/libnsl.so 2>/dev/null

3. Downgrade the libaio* to RHEL7 version

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
F:\Database\rh76-libaio>dir /b
libaio-0.3.109-13.el7.i686.rpm
libaio-0.3.109-13.el7.x86_64.rpm
libaio-devel-0.3.109-13.el7.i686.rpm
libaio-devel-0.3.109-13.el7.x86_64.rpm
F:\Database\rh76-libaio>dir /b libaio-0.3.109-13.el7.i686.rpm libaio-0.3.109-13.el7.x86_64.rpm libaio-devel-0.3.109-13.el7.i686.rpm libaio-devel-0.3.109-13.el7.x86_64.rpm
  1. F:\Database\rh76-libaio>dir /b
  2. libaio-0.3.109-13.el7.i686.rpm
  3. libaio-0.3.109-13.el7.x86_64.rpm
  4. libaio-devel-0.3.109-13.el7.i686.rpm
  5. libaio-devel-0.3.109-13.el7.x86_64.rpm

Then you can install Oracle 11gR2 on RHEL8 just like on RHEL7!

 最后更新:2020-7-11
  • 本文由 NeilZhang 发表于09/07/2020 00:10:34
  • Repost please keep this link: https://www.dbcloudsvc.com/blogs/oracle/install-oracle-11gr2-on-rhel8/
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定