在某些不兼容的操作系统上安装Oracle数据库时,经常会遇到各种问题, 如果部署的是测试环境,可以通过打包其他现有环境的数据库, 通过解压、配置环境变量快速完成数据库安装工作。 测试环境:
Oracle 11.2.0.4.0 OS:kylin linux v10
一:打包 将其他相同平台相同版本的oracle软件目录打包
tar -zcvf oracle.tar.gz /oracle
二:上传到目标服务器 1.拷贝oracle.tar.gz文件到目标服务器/目录下
ls -lrth total 2.2G -rw-r--r-- 1 root root 2.2G Nov 13 17:11 oracle.tar.gz
三.解压
cd / tar -zxvf oracle.tar.gz
授权
chown oracle:oinstall /oracle -R
四.添加oracle用户环境变量 su - oracle vi .bash_profile
export ORACLE_BASE=/oracle/app/oracle export ORACLE_HOME=/oracle/app/oracle/product/11.2/db export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 export ORACLE_SID=cjc alias cdo='cd $ORACLE_HOME' alias cdb='cd $ORACLE_HOME/dbs' alias cdn='cd $ORACLE_HOME/network/admin' alias cdal='cd $ORACLE_BASE/diag
source .bash_profile
五.登陆数据库 提前创建好所需要的用户和组。 如遇到如下错误
sqlplus / as sysdba sqlplus: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory
需要安装所需的包
yum install libnsl
登录数据库
sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Tue Nov 14 13:40:48 2023 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL>
可以正常打开到nomount
SQL> startup nomount ORACLE instance started. Total System Global Area 2254802944 bytes Fixed Size 2255232 bytes Variable Size 570427008 bytes Database Buffers 1660944384 bytes Redo Buffers 21176320 bytes
修改控制文件路径,也可以到mount,但无法open,因为没有拷贝/oradata数据文件, 此时可以通过 create database 命令新建数据库。 也可以拷贝/oradata数据文件,拷贝前需要确保原数据库正常关闭。 示例如下: 上传 oradata.tar.gz 文件到/根目录 /根目录下解压
cd / tar -zxvf oradata.tar.gz
登录数据库
su - oracle sqlplus / as sysdba
创建pfile
create pfile from spfile; exit;
修改参数文件
cd /oracle/app/oracle/product/11.2/db/dbs mv spfilecjc.ora spfilecjc.ora.bak vi initcjc.ora
将
*.control_files='/oradata/cjc/control01.ctl','/oracle/app/oracle/fast_recovery_area/cjc/control02.ctl'
修改为
*.control_files='/oradata/cjc/control01.ctl'
保存退出 wq 再次启动数据库
sqlplus / as sysdba startup
查询数据库状态
select name,open_mode from v$database; exit;
文章提到的所有路径以原库实际路径为准。
###chenjuchao 20231118###
