Oracle教程(1)RHEL8 / CentOS7 图形化安装Oracle19C详细教程

TangLu Oracle | MSSQL 2024-05-09 90 0

一、Oracle数据库版本说明

Oracle作为最出名的商业数据库,其特点是可用性强、扩展性强、安全性强、稳定性强。相比MySQL,更适合高并发的业务。从18c版本开始,Oracle采用年份来对版本进行命名,18代表2018年,后缀c\ai则是指该版本的主要特性。截止2023年底ORACLE已经推出到了23AI版本,但是19C是截止2023年底官方宣称的最稳定本地版本,也是使用最多的版本,之后的版本都倾向于云环境的使用。以下是Oracle各版本说明:

8i:正式向互联网发展的版本

11g:推出企业管理器、自动化诊断工具、自动化性能管理等功能

12c:可扩展数据库、多租户架构、数据重放、混合列存储

18c:自动机器学习、多云管理、自适应优化器

19c:在线迁移、自适应数据共享与自适应扫描,截止2024年最主流的版本

21c:智能化管理、数据共享、大数据支持

23ai:支持js存储过程、支持JSON SCHEMA


二、调整系统环境

1、内核版本

#centos9内核要求
#从 Oracle 19c 19.19开始,要求最低内核版本 5.14.0-70.22.1.el9_0.x86_64
uname -r
  
#centos7内核要求
从 Oracle 19c 19.19开始,要求最低内核版本 3.10.0-862.11.6.el7.x86_64
uname -r


2、安装依赖组件

可以通过官网(https://docs.oracle.com/en/database/oracle/oracle-database/index.html)选择不同版本Oracle以查看所需依赖

yum groupinstall "Development Tools"

#RHEL9依赖
yum install gcc-c++ bc binutils compat-openssl11 elfutils-libelf fontconfig glibc glibc-devel ksh libaio libasan liblsan libX11 libXau libXi libXrender libXtst libxcrypt-compat libgcc libibverbs libnsl librdmacm libstdc++ libxcb libvirt-libs make policycoreutils policycoreutils-python-utils smartmontools sysstat

#RHEL8依赖
yum install bc binutils elfutils-libelf elfutils-libelf-devel glibc glibc-devel ksh libaio libaio-devel libXrender libX11 libXau libXi libXtst libgcc libnsl librdmacm libstdc++ libstdc++-devel libxcb libibverbs make policycoreutils policycoreutils-python-utils smartmontools sysstat

#RHEL7依赖
yum install gcc-c++ bc binutils compat-libcap1 compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc libstdc++ libstdc++-devel libxcb make smartmontools sysstat

# oracle 特需组件下载与安装
# 下载地址 https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/
rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm 
rpm -ivh compat-libcap1-1.10-7.el7.x86_64.rpm


3、调整系统参数

如果没有调整这些参数,在后面的安装过程中无法通过自检,Oracle会根据系统当前情况给出不满足的条件和修改建议

vi /etc/sysctl.conf
	kernel.sem = 250 32000 100 128
	fs.file-max = 6815744
	net.core.rmem_default = 262144
	net.core.rmem_max = 4194304
	net.core.wmem_default = 262144
	net.core.wmem_max = 1048576
	fs.aio-max-nr = 1048576
	
sysctl -p


4、创建Oracle用户和相关组

#创建oracle组
	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 54330 racdba
	
#创建oracle账户
	useradd -u 54321 -g oinstall -G dba,oper,asmdba,backupdba,dgdba,kmdba,racdba oracle

#RAC架构下还需要创建grid账户
    useradd -u 54331 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba grid


5、创建软件和数据目录

 mkdir -p /u01/app/oracle
 mkdir -p /u01/app/oraInventory
 mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1


三、配置图形化

Oracle推荐采用图形化进行安装,所以要先为操作系统安装X11服务来进行图形化转发

1、安装GUI(如果是通过X SHELL或者MobaXstream远程图形化安装,可跳过)

yum groupinstall "Server with GUI"


2、配置图形转发

配置图形转发需要X11的支持,所以需要安装相关工具包

yum install xorg-x11-utils xorg-x11-server-utils -y


3、配置图形转发

#使用root运行查看X SERVER输出所需要的环境变量,输出结果为localhost:11.0这样的格式。系统重启后DISPLAY可能发生变化,此时需要重新执行下面的操作
echo $DISPLAY
cp .Xauthority /home/oracle/    
chown oracle:oinstall /home/oracle/.Xauthority

#x server访问列表设置,+代表所有用户都可以使用
xhost +

#oracle用户	
export DISPLAY=localhost:11.0   #和root一致


4、操作系统开启SSH X11转发,这样才能将图形传输给终端

cat  /etc/ssh/sshd_config
X11Forwarding yes  #修改为yes并且重启sshd服务


5、配置完成后可以使用xclock工具测试,如果本地能正常调出图形就代表成功

xclock.png


四、安装Oracle

Oracle 19C已经支持RPM包安装,官网下载地址:

https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#db_free


1、解压安装包

#下载过程略
cd /u01/app/oracle/product/19.0.0/dbhome_1
chown -R oracle:oinstall /u01/app/oracle
chown -R oracle:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app
unzip /tmp/db_home.zip


2、启动安装程序

# 如果窗口出现中文乱码,请安装下面的字体包
# yum install -y wqy-microhei-fonts wqy-zenhei-fonts

# CV_ASSUME_DISTID 可修改为oracle支持的系统版本,比如RHEL系,否则无法通过oracle自检
export CV_ASSUME_DISTID=RHEL8	./runInstaller


安装程序启动后,根据图形化进行配置,参考选择如下







4、修改参数

安装过程中可能会弹出各种参数不符合要求的提示,由于在前面已经优化过系统环境配置,所以可能不会有这些问题。如果出现的话,按提示修改即可,比如可能会有SWAP调整的要求,根据系统当前SWAP值进行合理设置

7.png


5、切换root执行脚本

最后会弹出提示,需要root用户执行两个脚本,脚本执行后会创建Oracle需要的环境变量、创建 /etc/oratab 文件等

8.png

/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.0.0/dbhome_1/root.sh


五、配置LISTENERj监听器

1、监听器运行在服务器端,属于一种网络服务,用于监听客户端向数据库发出的连接请求。如无特殊需求,配置均使用默认值即可

bin/netca


六、初始化数据库

1、运行dbca工具

通过dbca工具可以快速进行实例初始化,记住创建过程中的SID和密码项,创建完数据库后要设置ORACLE_SID的变量为SID,大小写敏感

bin/dbca


dbca1.png



2、为oracle用户配置环境变量

#切换oracle用户,编辑配置文件
vim ~/.bash_profile
# Get the aliases and functions
 if [ -f ~/.bashrc ]; then
   . ~/.bashrc
 fi
 
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/lib64
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export ORACLE_SID=yncic

#执行命令后生效
source ~/.bash_profile


3、连接测试

#使用oracle用户执行,不需要输入密码,需要注意配置好ORACLE_SID变量
sqlplus / as sysdba



六、安装报错

1、Error in invoking target 'libasmclntsh19.ohso libasmperl19.ohso client_sharedlib' of makefile '/u01/app/oracle/product/19.0.0/db_1/rdbms/lib/ins_rdbms.mk'.

glibc在2.28版本以后不再提供libpthread_nonshared.a文件,而Oracle安装则需要用到此文件,因此报错。 只需要从其他服务器拷贝libpthread_nonshared.a到/usr/lib64目录后重新解压Oracle安装包,然后会自动在oracle/lib下创建相关软连接

评论