Forum Stats

  • 3,815,220 Users
  • 2,258,979 Discussions
  • 7,893,004 Comments

Discussions

How to install Oracle 19c on SuSE Leap 15.1

user2236635
user2236635 Member Posts: 1 Green Ribbon
edited Feb 17, 2020 3:36PM in Generic Linux

Because the way to install Oracle 19c on a SuSE Leap 15.1 is not that easy, I will give this information for other people having similar problem.

1) download SuSE Leap 15.1 from https://software.opensuse.org/distributions/leap?locale=de

2) install SuSE Leap 15.1 on a hard disk (HDD or SDD)  - I preferred to install desktop version)

3) download Oracle 19c (LINUX.X64_193000_db_home.zip - yes only zip is working for SuSE) from

    https://www.oracle.com/database/technologies/oracle-database-software-downloads.html --> "See All"

4) Prerequests (taken out of https://oracle-base.com/articles/19c/oracle-db-19c-installation-on-oracle-linux-7#manual_setup):

The "/etc/hosts" file must contain a fully qualified name for the server.

<IP-address>  <fully-qualified-machine-name>  <machine-name>

For example.

127.0.0.1       localhost localhost.localdomain localhost4 localhost4.localdomain4 
192.168.56.107  suse19.localdomain  suse19

Set the correct hostname in the "/etc/hostname" file.

suse19.localdomain

Add the following lines to the "/etc/sysctl.conf" file, or in a file called "/etc/sysctl.d/98-oracle.conf".

fs.file-max = 6815744 
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
kernel.panic_on_oops = 1
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500

Run one of the following commands to change the current kernel parameters, depending on which file you edited.

/sbin/sysctl -p 
# Or
/sbin/sysctl -p /etc/sysctl.d/98-oracle.conf

Add the following lines to a file called "/etc/security/limits.d/oracle-database-preinstall-19c.conf" file.

oracle   soft   nofile    1024 
oracle   hard   nofile    65536
oracle   soft   nproc    16384
oracle   hard   nproc    16384
oracle   soft   stack    10240
oracle   hard   stack    32768
oracle   hard   memlock    134217728
oracle   soft   memlock    134217728

The following packages are listed as required. Many of the packages should be installed already.

==> I installed them with "yast --> software manager" not with yum - although I added to installed yum

yum install -y bc 
yum install -y binutils
yum install -y compat-libcap1
yum install -y compat-libstdc++-33
#yum install -y dtrace-modules
#yum install -y dtrace-modules-headers
#yum install -y dtrace-modules-provider-headers
yum install -y dtrace-utils
yum install -y elfutils-libelf
yum install -y elfutils-libelf-devel
yum install -y fontconfig-devel
yum install -y glibc
yum install -y glibc-devel
yum install -y ksh
yum install -y libaio
yum install -y libaio-devel
yum install -y libdtrace-ctf-devel
yum install -y libXrender
yum install -y libXrender-devel
yum install -y libX11
yum install -y libXau
yum install -y libXi
yum install -y libXtst
yum install -y libgcc
yum install -y librdmacm-devel
yum install -y libstdc++
yum install -y libstdc++-devel
yum install -y libxcb
yum install -y make
yum install -y net-tools # Clusterware
yum install -y nfs-utils # ACFS
yum install -y python # ACFS
yum install -y python-configshell # ACFS
yum install -y python-rtslib # ACFS
yum install -y python-six # ACFS
yum install -y targetcli # ACFS
yum install -y smartmontools
yum install -y sysstat

Create the new groups and users.

groupadd -g 54321 oinstall 
groupadd -g 54322 dba
groupadd -g 54323 oper
#groupadd -g 54324 backupdba
#groupadd -g 54325 dgdba
#groupadd -g 54326 kmdba
#groupadd -g 54327 asmdba
#groupadd -g 54328 asmoper
#groupadd -g 54329 asmadmin
#groupadd -g 54330 racdba 
useradd -u 54321 -g oinstall -G dba,oper oracle

Set the password for the "oracle" user.

passwd oracle

Set secure Linux to permissive by editing the "/etc/selinux/config" file, making sure the SELINUX flag is set as follows.

(SuSE Leap 15.1 do not support SELINUX in that way that it is working fine) --> I skipped this hole option)

SELINUX=permissive

Once the change is complete, restart the server or run the following command.
# setenforce Permissive

If you have the Linux firewall enabled, you will need to disable or configure it, as shown here or here. To disable it, do the following.

# systemctl stop firewalld # systemctl disable firewalld

if you are not using Oracle Linux and UEK, you will need to manually disable transparent huge pages.

  --> https://oracle-base.com/articles/linux/configuring-huge-pages-for-oracle-on-linux-64#disabling-transparent-hugepages

create directories (my ORACLE_BASE=/opt/oracle, my ORACLE_HOME=/opt/oracle/product/ora19c/db_home1, my ORACLE_SID=ora19c, my oracle-user is "ora19c"

# export ORACLE_BASE=/opt/oracle

# export ORACLE_HOME=/opt/oracle/product/ora19c/db_home1

#

# mkdir $ORACLE_BASE

# chmod 775 $ORACLE_BASE

# chown -R oracle.oinstall $ORACLE_BASE

# xhost +<machine-name>

set ORACLE_BASE and ORACLE_HOME in ~oracle/.profile

( you can take a .profile from another installed user as template)

# su - oracle

<passwd>

$ mkdir -p  $ORACLE_HOME

$ chmod -R 775 $ORACLE_BASE

5) Run the installer as user "oracle"

su - oracle

<passwd>

./runInstaller

--> on SuSE Leap15.1 I got an error:

  Prerequisite checks fails-PRVG-0282 : failed to retrieve the operating system distribution ID

  if you get this error message --> abort installation

  --> edit file "$ORACLE_HOME/cv/admin/cvu_config" and set

       "CV_ASSUME_DISTID=SUSE15" and rerun installer

5) missing packages ( I started ./runInstaller with log and debug: -logLevel finest and -debug )

    --> with debug you can see which packages are loaded and which are expected

  open another terminal and install missing packages with "yast - software manager"

  I ended up with eight missing packages - but only warnings:

  - libstdc++33-3.3.3-62.1 (solved in next option)

  - libjpeg-turbo-1.3.1

  - libjpeg62-32bit-62.1.0

  - libjpeg62-turbo-1.3.1

  - libpcre16-0-8.41 (unsolved but only warning)

  - gcc-c++-32bit-7-1.563

  - JDK-1.8.0.5.151 (unsolved but only warning)

  - libgfortran3-4.8.3 (solved in next option)

6) I found those packages for SuSE Leap 15.1 by google:

  - libgfortran3-gcc48-4.8.5-201.1.x86_64.rpm

    http://download.opensuse.org/repositories/devel:/gcc/SLE-11/x86_64/

  - libstdc++33-3.3.3-63.1.x86_64.rpm ( standalone rpm out of SLE11-Linux)

    http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/libstdc%2B%2B.so.5%28%29%2864bit%29

7) Continue installation via runInstaller. I got an error at Listener configuration - retry and it was solved

8) Disable unused features as user oracle

cd $ORACLE_HOME/bin<br/> chopt disable oaa<br/> chopt disable olap<br/> chopt disable partitioning<br/> chopt disable rat

9) after installation of database you can continue with installation of other Oracle products

  - remember to set  CV_ASSUME_DISTID=SUSE15 " in some cvu_config" files

  --> edit file "$NEW_PRODUCT_PATH/stage/cv/admin/cvu_config" and set

       "CV_ASSUME_DISTID=SUSE15" and rerun installer

best regards

  Harald ARNOLD

User_R9L0A

Comments

  • EdStevens
    EdStevens Member Posts: 28,778 Gold Crown
    edited Feb 17, 2020 3:36PM

    While I like and respect Tim Hall's oracle-base blog, I would suggest you start with the actual 19c Installation Guide.

    Most of what you detailed would have been taken care of in one step by simply installing the PreInstallation RPM. as documented in said guide.

  • I tried to simplify installation of oracle 19c DB on my openSuse 15.2 using PreInstallation Guide, but I found out that PreInstallation RPM is not available for openSuse. So this document is really helpful!

    Thanks to Harald

    tbela
  • User_OEA19
    User_OEA19 Member Posts: 1 Green Ribbon
    edited Jun 12, 2021 9:58AM

    I have issues with Oracle 19c dependencies on OpenSuSE LEAP 15.2.

    Suse has the right packages in place, but Oracle doesn't accept them presumably since they have the "lp" string in the package name. What can I do to make

    INFO: [Jun 11, 2021 11:48:17 PM] ERROR: [Result.addErrorDescription:771] PRVF-7533 : Proper version of package "libX11-6" is not found on node "xxx" [Required = "libX11-6-1.6.5-1.41" ; Found = "libX11-6-1.6.5-lp152.5.12.1"].

    How can I make the Oracle installation script understand that these packages are acceptable? What else can I do?