麒麟armv10-sp3安装oracle19c
- 创业
- 2025-09-02 07:36:01

项目需要用arm的操作系统安装oracle,未找到一个完整的安装文档,dbca无法图形问题解决,特此整理
一、环境信息CPU
操作系统
兼容性信息
二、安装准备 1、软件下载及兼容性信息麒麟系统兼容性官网网站:麒麟生态
oracle安装包: .oracle /webapps/redirect/signon?nexturl= download.oracle /otn/linux/oracle19c/190000/LINUX.X64_193000_db_home.zip
oracle-database-preinstall-19c:Oracle Linux 7 (x86_64) Latest | Oracle, Software. Hardware. Complete.
oracle硬件要求:Server Hardware Checklist for Oracle Database Installation
2、设置hosts###START-ORACL19C### `hostname -I` `hostname` `hostname` ###END-ORACL19C### EOF
3、规划swap内存大于16G,swap要16G
dd if=/dev/zero of=/mnt/central/swapfile bs=1024 count=16M mkswap /mnt/central/swapfile # 格式化 swap chown root:root /mnt/central/swapfile chmod 0600 /mnt/central/swapfile swapon /mnt/central/swapfile # 激活 swap swapon -s # 查看是否生效 vi /etc/fstab /mnt/central/swapfile swap swap defaults 0 0
##最好重启一下机器
4、关闭防火墙systemctl status firewalld systemctl stop firewalld systemctl disable firewalld
5、关闭 selinuxsed -i 's/enforcing/disabled/' /etc/selinux/config
6、配置环境变量cat <<EOF >>~/.bash_profile
export ORACLE_HOSTNAME=`hostname`
export ORACLE_UNQNAME=myodb
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
export ORA_INVENTORY=/u01/app/oraInventory
export ORACLE_SID=myodb
export PATH=/usr/bin:/usr/sbin:/usr/local/bin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
EOF
7、配置yummount /usr/local/src/Kylin-Server-V10-SP3-General-Release-2303-ARM64.iso /mnt/cdrom/
cd /etc/yum.repos.d/
mkdir bak
mv kylin_aarch64.repo bak/
vi local.repo
[LocalRepo] name=Local Repository baseurl=file:///mnt/cdrom enabled=1 gpgcheck=0
yum makecache
yum clean all
yum list
三、软件安装 1、上传传软件mkdir /soft
#上传软件
sha256sum LINUX.ARM64_1919000_db_home.zip
#检查与官网是否一样
Oracle Database 19c for LINUX ARM (aarch64)
2、安装preinstalloracle-database-preinstall-19c 这个工具会自动配置系统参数,创建 oracle 用户和组
rpm -ivh oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
安装提示的依赖
安装完如果提示有/etc/release我们强制安装
rpm -ivh oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm --nodeps
3、创建目录授权mkdir -p /u01/app/oracle/product/19.3.0/dbhome_1
mkdir -p /data/oradata ### 数据的存储目录
chown -R oracle:oinstall /u01 /soft /data
chmod -R 775 /u01 /soft /data
passwd oracle#设置密码
4、图形化准备第一步:安装软件包
yum install –y xorg-x11-xauth
yum install –y xterm # xterm是一款终端模拟器
第二步:修改配置文件
修改/etc/ssh/ssh_config, 将 ForwardX11 由no修改为yes
修改/etc/ssh/sshd_config,将 X11Forwarding 由no修改为yes
重启SSH服务:service sshd restart
5、设置编译工具Oracle软件relink时,会到指定位置找ar和as工具,在CentOS 8上,虽然有这两个工具,但是位置不对,在Orace软件引用的位置创建符号链接: mkdir -p /opt/rh/devtoolset-8/root/usr/bin/ cd /opt/rh/devtoolset-8/root/usr/bin/ ln -s /usr/bin/ar ar ln -s /usr/bin/as as
6、配置libnsl.so.1的软连接启动图形时会报缺失,详细了解可以参考:rhel8安装Oracle19c缺少libnsl如何解决 - 墨天轮
cd /usr/lib64
ln -s /u01/app/oracle/product/19.3.0/dbhome_1/lib/stubs/libnsl.so.2 libnsl.so.1
7、设置CV_ASSUME_DISTID参数export CV_ASSUME_DISTID=OEL7.6
#由于在该版本的cvu_prereq.xml文件中只是写了oel支持,现在的操作系统是Kylin Linux Advanced Server,不在他的列表里面,因此提示该错误,解决方案参考:19.x:Database software installation failed with ” PRVG-0282 : failed to retrieve the operating system distribution ID ” (Doc ID 2894095.1),设置CV_ASSUME_DISTID解决该问题
8、解压软件su - oracle
cd /soft
unzip LINUX.ARM64_1919000_db_home.zip -d $ORACLE_HOME
9、执行安装[oracle@localhost dbhome_1]$ ./runInstaller
安装比较简单,按如上设置基本不会出问题,附上一张安装图
四、数据库创建安装中遇到最大的问题就是创建数据库了,dbca图形启动一直卡住,静默安装直接闪退
日志报错,libsrvm19.so在link时异常
1、dbca安装#备份home/lib目录下的libsrvm19.so
mv $ORACLE_HOME/lib/libsrvm19.so $ORACLE_HOME/lib/libsrvm19.so_bak
#拷贝oui目录下libsrvm19.so导lib目录
cp $ORACLE_HOME/oui/lib/aarch64/libsrvm19.so $ORACLE_HOME/lib/libsrvm19.so
dbca启动图形
#安装完成后避免环境异常替换回libsrvm19.so
rm -rf $ORACLE_HOME/lib/libsrvm19.so
mv $ORACLE_HOME/lib/libsrvm19.so_bak $ORACLE_HOME/lib/libsrvm19.so
整体创建与x86一样,不在截图赘述,附上一张安装完成截图
2、手工建库dbca用如上可以解决,dbca如实在解决不了,或者体验手工建库可参考
1.1、创建目录su - oracle
mkdir -p /u01/app/oracle/admin/myodb/adump
mkdir -p /u01/app/oracle/flashback
mkdir -p /data/oradata/myodb/datafile
mkdir -p/data/oradata/myodb/tempfile
mkdir -p/data/oradata/myodb/onlinelog
1.2、创建密码文件cd $ORACLE_HOME/dbs orapwd file=orapwhefeidb password=oracle
1.3、创建pfilevi myodb.ora
myodb.__db_cache_size=754974720 myodb.__java_pool_size=16777216 myodb.__large_pool_size=16777216 myodb.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment myodb.__pga_aggregate_target=2248146944 myodb.__sga_target=4194304000 myodb.__shared_io_pool_size=0 myodb.__shared_pool_size=3321888768 myodb.__streams_pool_size=33554432 *.audit_file_dest='/u01/app/oracle/admin/myodb/adump' *.audit_trail='db' * patible='11.2.0.0.0' *.control_files='/data/oradata/myodb/control01.ctl','/data/oradata/myodb/control02.ctl' *.db_block_size=8192 *.db_domain='' *.db_files=1000 *.db_name='myodb' *.db_recovery_file_dest='/u01/app/oracle/flashback' *.db_recovery_file_dest_size=107374182400 *.diagnostic_dest='/u01/app/oracle' *.dispatchers='(PROTOCOL=TCP) (SERVICE=myodbXDB)' *.event='28401 TRACE NAME CONTEXT FOREVER, LEVEL 1' *.memory_target=6442450944 *.open_cursors=300 *.processes=2000 *.remote_login_passwordfile='EXCLUSIVE' *.sessions=2205 *.undo_tablespace='UNDOTBS1'
1.4、启动实例sqlplus / as sysdba
#用pfile启动实例导nomount
startup nomount pfile='/home/oracle/myodb.ora';
#创建spfile
create spfile from pfile;
1.5、创建数据库CREATE DATABASE myodb USER SYS IDENTIFIED BY oracle USER SYSTEM IDENTIFIED BY oracle LOGFILE GROUP 1 ('/data/oradata/myodb/onlinelog/redo01a.log') SIZE 200M BLOCKSIZE 512, GROUP 2 ('/data/oradata/myodb/onlinelog/redo02a.log') SIZE 200M BLOCKSIZE 512, GROUP 3 ('/data/oradata/myodb/onlinelog/redo03a.log') SIZE 200M BLOCKSIZE 512 MAXLOGHISTORY 1 MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 8192 CHARACTER SET AL32UTF8 NATIONAL CHARACTER SET AL16UTF16 EXTENT MANAGEMENT LOCAL DATAFILE '/data/oradata/myodb/datafile/system01.dbf' SIZE 700M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED SYSAUX DATAFILE '/data/oradata/myodb/datafile/sysaux01.dbf' SIZE 550M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED DEFAULT TABLESPACE users DATAFILE '/data/oradata/myodb/datafile/users01.dbf' SIZE 5M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED DEFAULT TEMPORARY TABLESPACE temp TEMPFILE '/data/oradata/myodb/tempfile/temp01.dbf' SIZE 20M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED UNDO TABLESPACE UNDOTBS1 DATAFILE '/data/oradata/myodb/datafile/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED;
1.6、脚本执行@?/rdbms/admin/catalog.sql @?/rdbms/admin/catproc.sql @?/rdbms/admin/utlrp.sql @?/sqlplus/admin/pupbld.sql #脚本说明: #catalog.sql创建数据字典表的视图、励态性能视图和许多视图的公共同义词。授予PUBLIC对同义词的访问权限。 #catproc.sql运行PL/SQL 所需或与PL/SQL一起使用的所有脚本。 #utlrp.sql重新编译所有处于无效状态的PL/SQL模块,包括包、过程和类型。 #pupbld.sql SQL*Plus 需要,启用SQL*Plus以禁用用户命令。 #也可以用catctl.pl使用脚本运行catpcat.sql代替catalog.sql与catproc.sql #catpcat.sql构建数据字典。 #该脚本使用catctl.pl程序运行(而不是使用SQL*Plus)并在内部运行脚本catalog.sql和catproc.sql并行进程,从而提高建数据字典的性能。
五、其他使用Oracle11.2客户端连接Oracle 19c的时候,报错: ORA-28040: No matching authentication protocol ORA-28040: 没有匹配的验证协议 问题原因 原因客户端与服务器的没有匹配的认证协议 解决方案
1、在数据库服务器上的$ORACLE_HOME/network/admin/sqlnet.ora文件添加相应参数
SQLNET.ALLOWED_LOGON_VERSION_SERVER=11
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=11
重启监听
2、升级客户端版本
麒麟armv10-sp3安装oracle19c由讯客互联创业栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“麒麟armv10-sp3安装oracle19c”