银河麒麟V10SP1搭建oracle19c(单库)

遇到的坑:1.PRVG-0282问题

解决:在先决条件检查步骤,PRVG-0282:无法检索操作系统分发ID的报错,该问题是由于字符集和环境变量问题,只需在执行安装前:
使用oracle用户登录,不要root跳到oracle用户下 export CV_ASSUME_DISTID
=RHEL7.6 export LANG=en_US
然后刷新环境变量
在执行./runInstaller即可。

2.DBT-05509 failed to connect to the specified database(xxx).

解决:我是因为环境变量配错了

检查环境变量:export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

和图形化 安装选的编码是否一致

 3.Error in invoking target ‘libasmclntsh19.ohso libasmperl19.ohso client_sharedlib’ of makefile

原因:glibc在2.28版本以后不再提供libpthread_nonshared.a文件,而Oracle安装则需要用到此文件,因此报错。

解决办法:从CentOS上或其他服务器上拷贝libpthread_nonshared.a到/usr/lib64目录中,然后重新解压一遍安装包并授权,再清除oraInventory目录下的所有文件,最后重新调用图型界面安装。
下载内容:
oracle https://www.alipan.com/s/VFeR1Ns2xCb 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放

服务器配置 1

1、关闭 iptables 防火墙 1

2、关闭 SELinux 防火墙 1

3/etc/hosts 配置主机名 1

4、修改内核参数 2

5、修改用户系统限制 2

6、修改系统设置 UDP TCP 内核参数 2

7、禁用透明大页、开启大页配置 3

(1) 查看当前 THP 功能状态 3

(2) 修改文件,关闭 THP 功能 3

(3) 修改后重启,确认 THP 功能关闭 3

(4) 开启 HugePages 大页功能 3

8、建立组和用户 3

9oracle 用户配置 bash_profile 4

10、创建目录 4

11、安装依赖包 5

安装数据库 5

1、 安装oracle软件 5

2、 安装监听:netca 10

3、 安装数据库:dbca 14

 

ORACLE介质下载地址https://www.oracle.com/cn/database/technologies/oracle-database-software-downloads.html

 

服务器配置

 

1、关闭 iptables 防火墙

[root@RHEL7U6 ~]# systemctl stop firewalld.service

[root@RHEL7U6 ~]# systemctl disable firewalld.service

 

 

2、关闭 SELinux 防火墙

[root@RHEL7U6 ~]# vi /etc/selinux/config

SELINUX=disabled

 

 

3/etc/hosts 配置主机名

[root@RHEL7U6 /]# vi /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.186.30  alice

 

 

4、修改内核参数

#vi /etc/sysctl.d/99-oracle-database-sysctl.conf 添加如下内容

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152 #该参数是控制共享内存页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。如果一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB = 16777216KB/4KB = 4194304

kernel.shmmax = 1073741824 #内存的 50%,以字节为单位

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

要更改内核参数的当前值:

# /sbin/sysctl --system

确认值设置正确:

# /sbin/sysctl -a

 

 

5、修改用户系统限制

vi /etc/security/limits.d/oracle-database.conf

oracle soft nproc 2047

oracle hard nproc   16384

oracle soft nofile  1024

oracle hard nofile  65536

oracle soft stack   10240

oracle hard stack   32786

oracle hard memlock unlimited

oracle soft memlock unlimited

 

 

6、修改系统设置 UDP TCP 内核参数

设置 TCP / IP 临时端口范围参数,以便为预期的服务器工作负载提供足够的临时端口, Oracle 推荐的是 9000 65500

查看当前的端口范围

[root@RHEL7U6 /]# cat /proc/sys/net/ipv4/ip_local_port_range

9000 65500

如果不是 9000 65500 Oracle 建议您永久保留这些设置。root 使用文本编辑器打开/etc/sysctl.conf,添加或更改以下内容:

net.ipv4.ip_local_port_range = 9000 65500

然后重新启动网络:

# /etc/rc.d/init.d/network restart

 

7、禁用透明大页、开启大页配置

Oracle 建议您在开始安装之前禁用 Transparent HugePages

透明 HugePages 内存与标准 HugePages 内存不同,因为内核 khugepaged 线程在运行时动态分配内存。标准 HugePages 内存在启动时预先分配,并且在运行时不会更改。

Disabling Transparent HugePages, 在/etc/default/grub.conf GRUB_CMDLINE_LINU 的最后,加上 transparent_hugepage=never

(1) 查看当前 THP 功能状态 

[root@RHEL7U4 /]# cat /sys/kernel/mm/transparent_hugepage/enabled

[always] madvise never

[root@RHEL7U4 /]#

 

(2) 修改文件,关闭 THP 功能 

[root@RHEL7U4 /]# vi /etc/default/grub

GRUB_CMDLINE_LINUX="rhgb quiet transparent_hugepage=never"

[root@ RHEL7U4 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg

[root@ RHEL7U4 ~]# reboot

 

(3) 修改后重启,确认 THP 功能关闭 

[root@ RHEL7U4 ~]# cat /sys/kernel/mm/transparent_hugepage/enabled

always madvise [never]

 

(4) 开启 HugePages 大页功能 

计算需要的页数:

linux 一个大页的大小为 2M,开启大页的总内存应该比 sga_max_size 稍稍大一点,比如sga_max_size=180g,则: hugepages > (180*1024)/2 = 92160

 

配置 sysctl.conf 文件,添加:

[oracle@RHEL7U6 ~]$ vi /etc/sysctl.d/99-oracle-database-sysctl.conf

vm.nr_hugepages = 512

要更改内核参数的当前值:

# /sbin/sysctl --system

确认值设置正确:

# /sbin/sysctl -a

 

8、建立组和用户

[root@RHEL7U6 /]# groupadd -g 54321 oinstall

[root@RHEL7U6 /]# groupadd -g 54322 dba

[root@RHEL7U6 /]# groupadd -g 54323 oper

[root@RHEL7U6 /]# groupadd -g 54324 backupdba

[root@RHEL7U6 /]# groupadd -g 54325 dgdba

[root@RHEL7U6 /]# groupadd -g 54326 kmdba

[root@RHEL7U6 /]# groupadd -g 54327 asmdba

[root@RHEL7U6 /]# groupadd -g 54328 asmoper

[root@RHEL7U6 /]# groupadd -g 54329 asmadmin

[root@RHEL7U6 /]# groupadd -g 54330 racdba

 

[root@RHEL7U6/]# /usr/sbin/useradd -u 54321 -g oinstall -G dba,oper,asmdba,backupdba,dgdba,kmdba,racdba oracle

[root@RHEL7U6/]# /usr/sbin/useradd -u 54331 -g oinstall -G dba,asmdba,asmoper,asmadmin,racdba grid

确认用户组信息

$ id oracle

uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba), 54323(oper),54324(backupdba),54325(dgdba),54326(kmdba),54327(asmdba),54330(racdba)

$ id grid

uid=54331(grid) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54327(asmdba),54328(asmoper),54329(asmadmin),54330(racdba)

[root@RHEL7U6/]# passwd oracle

[root@RHEL7U6/]# passwd grid

 

 

9oracle 用户配置 bash_profile

[oracle@RHEL7U6~]$ vi /home/oracle/.bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# User specific environment and startup programs

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_HOSTNAME=alice

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/19.3.0.0.0/dbhome_1

export ORACLE_SID=node(实例名称)

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

export CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

 

[oracle@RHEL7U6~]$ source .bash_profile

 

10、创建目录

 

# mkdir -pv /u01/app/oracle/{oraInventory,product/19.3.0.0.0/dbhome_1}

# chmod -R 755 /u01

# chown -R oracle:oinstall /u01

 

上传LINUX.X64_193000_db_home.zip安装包到/u01/app/oracle/product/19.3.0.0.0/dbhome_1

#chown oracle:oinstall LINUX.X64_193000_db_home.zip

#unzip LINUX.X64_193000_db_home.zip

 

 

11、安装依赖包

#yum install -y bc binutils compat-libcap1 compat-libstdc++ elfutils-libelf elfutils-libelf devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc librdmacm-devel libstdc++ libstdc++-devel libxcb make net-tools nfs-utils python python-configshell python-rtslib python-six targetcli smartmontools sysstat gcc*

#yum install compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm

 

安装数据库(在vm上执行)

1、安装oracle软件

#xhost +

#su - oracle

$export DISPLAY=:0.0

$cd /u01/app/oracle/product/19.3.0.0.0/dbhome_1

$./runInstaller

 

 

 

 

 

 

 

 

 

 

 

2、安装监听:netca

$netca

 

 

 

 

 

 

 

 

 

 

执行lsnrctl status查看监听当前状态

 

 

3、安装数据库:dbca

$dbca

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 进度条走完,实例安装成功,执行lsnrctl status检查实例是否被注册上

 

posted @ 2024-07-14 16:58  老油条666  阅读(198)  评论(0编辑  收藏  举报