zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

银河麒麟 V10 安装 Oracle 19C 详细步骤 支持远程维护 技术支持

Oracle安装 远程 详细 步骤 支持 维护 麒麟
2023-06-13 09:19:21 时间

服务器操作系统:银河麒麟V10 SP2(Kylin Server 10 SP2 x86_64)
数据库版本:Oracle 19C(19.3.0.0.0)
SSH工具:Mobaxterm v22.1


配置初始参数
1、下载Oracle安装包
打开Oracle官网,然后下载Linux_x86_64的安装包。


2、创建用户及用户组
使用Mobaxterm工具连接到服务器后,使用root用户创建oracle所需的用户和用户组。


创建oracle并将其加入到oinstall组和dba组中
[root@localhost ~]# useradd -g oinstall -g dba -m oracle


设置oracle用户的登录密码
[root@localhost ~]# passwd oracle
3、创建数据库软件存储目录
用户和用户组创建好之后,创建软件存储目录,用来存储Oracle可执行文件及数据文件等。注意,此目录不能是/home/oracle用户家目录。


Oracle基目录授权给oracle用户
[root@localhost home]# chown -R oracle:oinstall /u01/oracle


Oracle产品清单目录授权给oracle用户
[root@localhost home]# chown -R oracle:oinstall /u01/oraInventory
4、安装Oracle必须的依赖包
由于银河麒麟V10对标的应该是CentOS 8的内核,而CentOS 8与redhat完全一致,因此我们根据官方文档上介绍redhat 8所需的依赖包,来安装相应的依赖。


yum install bc binutils elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libXrender libX11 libXau libXi libXtst libgcc librdmacm libstdc++ libstdc+±devel libxcb libibverbs make policycoreutils policycoreutils-python-utils smartmontools sysstat
除上面的这些依赖外,还有一个libnsl依赖没在系统镜像包中。因此,我们通过访问银河麒麟的依赖包下载地址下载它,并上传至服务器中。注意,libnsl必须与glibc依赖的版本一致。


下载地址:https://update.cs2c.com.cn/NS/V10/V10SP2/os/adv/lic/base/x86_64/Packages/


安装libnsl依赖
[root@localhost ~]# rpm -ivh libnsl-2.28-49.p02.ky10.x86_64.rpm
5、临时关闭firewalld、禁用selinux
依赖包安装完成后,我们禁用掉firewalld和selinux。


禁止selinux自启动
[root@localhost ~]# sed -i ‘s#SELINUX=.*#SELINUX=disabled#’ /etc/selinux/config
6、配置内核参数
配置内核参数,避免因参数过小导致的oracle运行异常或性能问题。


[root@localhost ~]# vim /etc/sysctl.conf
这里与CentOS略有不同,银河麒麟默认会帮我们配置一些关于ipv4的参数。


fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
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
参数说明:


fs.file-max 最大打开文件数
kernel.shmall 共享内存的总量,8G内存设置:2097152*4k/1024/1024
kernel.shmmax 最大共享内存的段大小,一般设置为服务器的80%内存总大小
立即生效


[root@localhost ~]# sysctl -p
7、配置用户资源限制
配置以下参数,避免oracle用户受到系统限制,导致数据库在运行中因资源调度而报错。


[root@localhost ~]# vim /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
参数说明:


oracle soft nproc 单个用户可用进程数软限制
oracle hard nproc 单个用户可用进程数硬限制
oracle soft nofile 打开文件描述符软限制
oracle hard nofile 打开文件描述符硬限制
8、配置用户环境变量
[root@localhost ~]# vim /home/oracle/.bash_profile
新增以下参数


export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=/u01/oracle/19.3.0
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=ORACLE_BASE/bin:/usr/sbin:ORACLEB​ASE/bin:/usr/sbin:PATH
export LD_LIBRARY_PATH=$ORACLE_BASE/lib:/lib:/usr/lib
export LANG=C
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
参数说明:


ORACLE_BASE 数据库基目录
ORACLE_HOME 数据库软件目录
ORACLE_SID 数据库SID
ORACLE_TERM 窗口模式安装
PATH 系统环境变量
LD_LIBRARY_PATH 链接库目录
LANG 避免乱码
NLS_LANG 客户端字符集
重加载环境变量


[root@localhost ~]# source /home/oracle/.bash_profile
9、配置X11-forwarding转发
在CentOS上X11转发是默认启动的,而在银河麒麟上,默认是关闭的,因此我们要将它打开,才能以图型界面的形式来安装。


[root@localhost ~]# vim /etc/ssh/sshd_config
将X11Forwarding值修改为yes,修改后保存并退出。


[root@localhost ~]# reboot
10、上传19C安装包并解压
将下载好的19C安装包上传到/u01目录下,然后将其解压到/u01/oracle。


将/u01/oracle授权给oracle用户
[root@localhost u01]# chown -R oracle:oinstall /u01/oracle
安装Oracle软件
1、伪装redhat系统、调用图型界面
Oracle是不支持在银河麒麟上安装的,但由于银河麒麟也属于redhat系,我们就能伪装自己是redhat系统,从而避过Oracle的检测。注意,必须使用oracle用户连接到服务器,而不是使用su oracle 来切换到oracle用户。


调用图型界面
[oracle@localhost 19.3.0]$ ./runInstaller
2、选项配置
调用界面后,首先会询问你怎么安装,提供两种方式:


创建并配置单实例数据库
只安装软件
通常是建议选择第二个【只安装软件】,安装完软件后,我们再手动去配置监听和实例。


单实例数据库安装
Oracle真实应用集群(RAC)安装
如果是单实例,就选择默认选项即可;反之,则选择Oracle集群安装。


4、选择数据库版本
必须选默认选项,如果选择第二个选择,则数据库会缺少一部分功能。


5、选择安装路径
如果oracle用户变量没有配置错误,则该项会根据环境变量来显示,我们仅需要确认路径正确即可。


如果想要在安装时不再弹出提示,让Oracle自动运行的话,就选中选项,然后配置root用户的密码,如此Oracle就会使用root密码自动去执行这些操作。


9、总结
最后,Oracle列出配置的大概信息,如:数据库版本、Oracle base、软件位置等。


10、执行root脚本
这是在没有选中自动执行脚本的情况下,会弹出提示,让你手动去执行这两个shell脚本。


安装监听
1、启动网络配置助手
对于能够调用图型界面来说,肯定是启动Net配置助手更方便。


监听器配置
命名方法配置
目录使用配置
初次安装数据库肯定是要配置一个监听器。


添加监听器
重新配置监听器
删除监听器
重命名监听器
首次肯定是选择【添加监听器】。


6、配置监听器使用的端口
配置监听器使用的端口。如果你认为默认的1521端口所有人都知道,有被攻击的可能,也可以自定义一个端口号。


创建实例
1、启动数据库配置助手
同样,我们使用数据库配置助手来完成实例的创建。(严格来说,我们常说的数据库其实是实例)


[oracle@localhost ~]$ dbca
2、数据库选项
启动数据库配置助手后,首先是询问要执行哪种操作?


创建数据库
配置一个现有的数据库
删除数据库
管理模板
管理插件数据库
Oracle RAC数据库实例管理
我们这里肯定是选择创建数据库。


典型安装
高级安装
我们这里选择高级安装,不建议使用典型安装,除非是测试环境。


Oracle单实例数据库
Oracle 真实应用集群
管理员管理
策略管理
Oracle 真实应用集群单节点
管理员管理
策略管理
其次,还需要选择要部署的业务类型,有三种类型可以选择:


数据仓库
自定义数据库
一般事务型
通常情况下,对于OLAP业务,选择数据仓库类型;对于OLTP业务,则选择一般事务型。自定义数据库适用于那种想自己修改数据库参数的场景,如修改数据库块大小。对于数据库块大小,只有自定义数据库才能修改,其他两种均不能修改。


5、配置数据库标识符
数据库标识符需要指定全局数据库名和SID,并且还需要确定是否要创建成容器数据库。如果没有可插拔数据库的需要,则不需要选中创建成容器数据库。


使用模板中配置的参数
自定义存储,包括存储文件系统类型、数据文件位置等
我这里直接使用模板来配置,一般事务型模板默认会将数据文件等创建在$ORACLE_BASE/目录下。


7、配置快速闪回区
快速闪回区必须指定,指定的位置及文件系统类型,可根据实际情况确定。


8、网络配置
在19C中,监听器可以直接在创建数据库时配置,不过我之前已经配置好了,就直接默认下一步,如果没有配置监听器,则可以在这里创建一个新的监听器。


9、Data Vault选项
这里配置的两个都是与安全有关的,我也没有使用过,就不再启用这两个。


10、数据库参数配置
配置数据库的参数,包括内存、数据库块大小及线程数量、字符集、连接模式、示例方案。


配置内存
19C的内存管理有三类,根据官方文档建议,在内存小于4G时,建议使用自动内存管理(Automatic Memory Management);在内存大于4G时,建议使用自动共享内存管理(Automatic Shared Memory Management);自定义内存需要非常有经验的DBA去手动配置Shared pool、Buffer cache、Java pool、Large pool和PGA大小。


由于我的内存不到4G,就使用自动内存管理去配置大小了。建议,对于只运行单实例的服务器来说,Oracle内存可以配置到服务器的80%左右,再激进点就可以配置到90%


配置Sizing
Oracle 19C的默认线程数量已经改为了300了,但对于生产环境的数据库来说还是有点低了,我们可以根据业务需要去调整大小。


对于数据库块大小,一般事务型和数据仓库型都是不能修改的,只有自定义数据库才能更改数据库块大小。注意,数据库块一旦创建,就不能再修改,想修改只能重新建库导入数据。


使用Unicode(AL32UTF8):使用通用UTF8字符集。
使用默认字符集(Use the default):此字符集是根据你的操作系统的语言设置的。
从列表中选择字符集(Choose from the list of character sets):默认情况下会勾选只列出推荐的字符集,如果没有你想要的,则将下面的选项给取消勾选。
建议字符集根据实际需要选择AL32UTF8和ZHS16GBK两种。如果你确定你的数据库中不会存储像维语、韩语等这种文字,则可以使用ZHS16GBK字符集,否则,请使用AL32UTF8。


国家字符集(National Character Set):此字符集只限制NVARCHAR2类型的字段,换句话说,上面设置的字符集不会影响到NVARCHAR2字段。
默认语言(Default Language):默认即可
默认领土(Default Territory):默认即可
非必要,这三个选项默认即可。


专用服务器模式(Dedicated Server Mode):对于每个客户端连接,数据库都会分配一个资源,专门为该客户端服务。
共享服务器模式(Shared Server Mode):数据库分配一个资源池,几个客户连接会共享这些资源池。使用共享服务器模式时,还需要指定启动实例时要创建的服务器进程数。
建议先预估连接此数据库的客户端情况,如果客户端的连接数量很少,每次连接的时间长,则使用专用服务器模式;如果客户端的连接数量很多,使用共享服务器模式,能够高效的利用系统资源。


配置示例方案
Oracle提供了示例用户,可以根据需求去选择,如果选中,则可能会占用一定空间。对于测试环境可以选中,生产环境不勾选。


配置Enterprise Manager(EM) database express
注册Enterprise Manager(EM) cloud control
不建议使用Enterprise Manager去管理数据库,浪费性能,管理也一般。如需使用管理软件,建议配置Enterprise Manager cloud control。


在数据库创建后自动执行的脚本
保存成数据库模板
生成数据库创建脚本
所有初始化参数修改


配置自启动
数据库安装完毕后,在服务器重启,还需要每次手动启动实例和监听。为了避免这种事情,我们还需要配置Oracle的自启动。


1、修改oratab文件
此文件是由oracle数据库软件安装时执行的root.sh脚本创建的文件,并由数据库创建助手更新。它的参数规则是:
ORACLE_SID:ORACLES​ID:ORACLE_HOME:
冒号用作字段终止符,第一个字段是系统标识符,第二个字段是Oracle主目录,第三个字段控制dbstart是否能随服务器启动而启动。


[root@localhost ~]# vim /etc/oratab
将最后一个冒号后面的N,修改为Y。多个实例的情况下,就修改多行即可。


orcl:/u01/oracle/19.3.0:Y
2、配置rc.local文件
[root@localhost ~]# vim /etc/rc.d/rc.local
在最后新增两行命令,新增后,保存并退出。


su oracle -lc “/u01/oracle/19.3.0/bin/lsnrctl start”
su oracle -lc /u01/oracle/19.3.0/bin/dbstart
3、授权
[root@localhost ~]# chmod +x /etc/rc.d/rc.local
至此,Oracle实例的自启动就配置完毕了,可以自行重启测试。


原因:先决条件检查会报此错误归根结底还是银河麒麟系统不是Oracle官方的支持操作系统,当Oracle检测到当前操作系统不在支持列表内,就会禁止安装。


解决办法:在安装之前先通过参数将操作系统伪装成redhat,来达到欺骗Oracle软件的目的。


[oracle@localhost ~]$ export CV_ASSUME_DISTID=RHEL7.6
2、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目录下的所有文件,最后重新调用图型界面安装。


我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题

本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 银河麒麟 V10 安装 Oracle 19C 详细步骤 支持远程维护 技术支持