.profile和dbca_raw_config设置

本文介绍了在AIX操作系统环境下配置Oracle 10g及11g数据库的具体步骤,包括环境变量设置、路径定义、库文件路径配置等关键信息,并提供了用于快速创建数据库的dbca_raw_config文件示例。
HP_10g:
export PS1=`hostname`$'[$PWD]'
umask 022
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2/db
export ORACLE_SID=ballontt
export PATH=/usr/bin:/etc/:/usr/sbin:/usr/ucb:/usr/local/bin:$ORACLE_HOME/bin:/usr/bin/X11:/sbin:$PATH
export ORACLE_TERM=xterm
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:$ORACLE_HOME/rdbms/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib/:$ORACLE_HOME/network/jlib

AIX_10g:
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.
export PATH
if [ -s "$MAIL" ] # This is at Shell startup. In normal
then echo "$MAILMSG" # operation, the Shell checks
fi # periodically.
export TERM=vt100
alias ll='ls -l'
set -o vi
if [ "$LOGNAME" = "root" ]
then
  export PS1='$LOGNAME'@"$(hostname)":'$PWD'"# "
else
  export PS1='$LOGNAME'@"$(hostname)":'$PWD'"$ "
fi
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORA_CRS_HOME=$ORACLE_BASE/crs
export ORACLE_SID= ballontt
export ORACLE_TERM=xterm
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:$ORACLE_HOME/rdbms/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib/:$ORACLE_HOME/network/jlib
export PATH=$ORACLE_HOME/jdk/bin:$PATH:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/usr/ccs/bin:$ORACLE_HOME/OPatch
umask 022
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export AIXTHREAD_SCOPE=S
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
export PATH=/oracle/ph:$PATH

AIX_11g:
oracle用户:
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.
#export PATH
if [ -s "$MAIL" ] # This is at Shell startup. In normal
then echo "$MAILMSG" # operation, the Shell checks
fi # periodically.
set -o vi
export TMOUT=0
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export ORACLE_UNQNAME= ballontt
export ORACLE_SID= ballontt1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export OPATCH=$ORACLE_HOME/OPatch
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/share/lib
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/jdbc/lib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
PATH=$PATH:$ORACLE_HOME/bin:$OPATCH
export CLASSPATH
export LD_LIBRARY_PATH
export PATH

grid用户:
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.
#export PATH
if [ -s "$MAIL" ] # This is at Shell startup. In normal
then echo "$MAILMSG" # operation, the Shell checks
fi # periodically.
export TMOUT=0
set -o vi
export ORACLE_SID=+ASM1
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/11.2.0/grid
export OPATCH=$ORACLE_HOME/OPatch
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/share/lib
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/jdbc/lib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
PATH=$PATH:$ORACLE_HOME/bin:$OPATCH
export LD_LIBRARY_PATH
export CLASSPATH
export PATH

dbca_raw_config设置:
oracle@sbddb1:/oracle$ cat dbca_raw_config
system=/dev/rsystem01_4g
sysaux=/dev/rsysaux01_4g
users=/dev/ruser01_1
temp=/dev/rtemp01_5g
undotbs1=/dev/rundotbs1_10g
undotbs2=/dev/rundotbs2_10g
control1=/dev/rcontrol1_128m
control2=/dev/rcontrol2_128m
control3=/dev/rcontrol3_128m
.profile中设置如下环境变量
export DBCA_RAW_CONFIG=/oracle/dbca_raw_config


ballontt
2014/03/26

---The End---
微博: weibo.com/ballontt
如需转载,请标明出处和链接,谢谢!
<think>我们正在解决的是在Ubuntu上静默安装Oracle后,使用DBCA创建数据库时出现的两个问题: 1. ORACLE_BASE 不一致 2. SID已存在 根据引用[1][3][4]中的静默安装步骤,我们通常使用dbca命令并指定响应文件来创建数据库。出现这两个错误的原因可能是: - ORACLE_BASE不一致:在响应文件中指定的ORACLE_BASE与当前环境变量中设置的ORACLE_BASE不一致。 - SID已存在:在响应文件中指定的SID(数据库实例名)在系统中已经存在。 解决方法如下: ### 1. 解决ORACLE_BASE不一致问题 我们需要确保环境变量中的ORACLE_BASE与响应文件(如dbca.rsp)中指定的ORACLE_BASE一致。 **步骤:** 1. 检查当前环境变量ORACLE_BASE的值(以oracle用户身份): ```bash echo $ORACLE_BASE ``` 2. 编辑响应文件(例如:`/u01/app/oracle/product/19.3.0/assistants/dbca/dbca.rsp`),查找并修改以下参数: ``` gdbname=数据库全局名 sid=数据库实例名 oracleHome=ORACLE_HOME路径 systemPassword=系统密码 sysPassword=sys密码 # 特别注意以下两个参数: oracleBase=环境变量中设置的ORACLE_BASE路径 ``` 确保`oracleBase`的值与`echo $ORACLE_BASE`输出的值完全相同。 3. 保存响应文件。 ### 2. 解决SID已存在问题 如果响应文件中指定的SID已经被使用,我们需要更改SID或者清理已存在的SID。 **方法一:更改响应文件中的SID(推荐)** 1. 编辑响应文件,找到`sid`参数,修改为一个新的、未被使用的SID。 2. 同时,确保`gdbname`(全局数据库名)也相应修改(通常gdbname由sid域名组成,但也可以只使用sid)。 **方法二:删除已存在的SID(谨慎使用)** 如果确定该SID对应的实例不再需要,可以删除它。 1. 停止与该SID相关的所有Oracle进程。 2. 删除以下目录文件(假设原SID为`ORCL`): - `$ORACLE_BASE/admin/ORCL` 目录 - `$ORACLE_BASE/cfgtoollogs/dbca/ORCL` 目录 - `$ORACLE_BASE/oradata/ORCL` 目录(如果存在) - `$ORACLE_HOME/dbs/initORCL.ora`、`spfileORCL.ora`、`orapwORCL`等文件 3. 同时,检查`/etc/oratab`文件,删除与旧SID相关的行。 ### 3. 重新运行DBCA 在修改响应文件后,重新运行DBCA命令: ```bash dbca -silent -createDatabase -responseFile /path/to/your_modified_dbca.rsp ``` ### 4. 验证 1. 检查数据库是否创建成功: ```sql sqlplus / as sysdba SQL> select name, open_mode from v$database; ``` 2. 检查监听状态: ```bash lsnrctl status ``` ### 常见问题 - **权限问题**:确保以oracle用户运行dbca命令,并且对响应文件有读取权限。 - **路径错误**:确保响应文件中的路径(如oracleBase, oracleHome)都是正确的且具有写入权限。 ### 相关问题 1. 如何修改Oracle环境变量? 2. 如何彻底删除一个Oracle数据库实例? 3. 如何查看当前系统中存在的Oracle实例? 4. 在静默安装Oracle时如何正确配置响应文件? [^1]: Oracle19C静默安装教程中关于dbca命令的使用 [^3]: ubuntu静默安装oracle11goracle12c中dbca命令的使用 [^4]: Linux静默安装Oracle21C中运行安装程序的命令</think>针对Ubuntu上静默安装Oracle后使用DBCA创建数据库时出现的 **ORACLE_BASE不一致** **SID已存在** 问题,以下是详细解决方法: --- ### **问题1:ORACLE_BASE不一致** #### 原因分析: - 环境变量中的`ORACLE_BASE`与响应文件(如`dbca.rsp`)中的定义不一致 - 多版本Oracle安装导致路径冲突 #### 解决步骤: 1. **检查当前环境变量**: ```bash su - oracle echo $ORACLE_BASE ``` 2. **修改响应文件**: 编辑DBCA响应文件(如`/u01/app/oracle/product/19.3.0/assistants/dbca/dbca.rsp`): ```ini # 确保以下参数与当前环境变量一致: oracleBase=/u01/app/oracle # 修改为实际路径 oracleHome=/u01/app/oracle/product/19.3.0 ``` 3. **验证路径所有权**: ```bash sudo chown -R oracle:oinstall /u01/app/oracle ``` 4. **重新执行DBCA**: ```bash dbca -silent -createDatabase -responseFile /path/to/dbca.rsp ``` --- ### **问题2:SID已存在** #### 原因分析: - 之前安装残留了相同SID的实例 - 环境变量`ORACLE_SID`未清除 #### 解决步骤: 1. **检查现有SID**: ```bash ps -ef | grep pmon # 查看运行中的实例 grep $ORACLE_SID $ORACLE_HOME/network/admin/listener.ora ``` 2. **清理残留文件**: ```bash # 删除旧实例文件 rm -rf $ORACLE_BASE/admin/<旧SID>* rm -rf $ORACLE_BASE/cfgtoollogs/dbca/<旧SID> rm -rf $ORACLE_BASE/oradata/<旧SID> rm $ORACLE_HOME/dbs/init<旧SID>.ora rm $ORACLE_HOME/dbs/spfile<旧SID>.ora ``` 3. **修改响应文件**: 编辑`dbca.rsp`: ```ini sid=NEWSID # 更改为新的唯一SID gdbname=global_NEWSID # 同步修改全局名 ``` 4. **更新环境变量**: ```bash vi ~oracle/.bashrc export ORACLE_SID=NEWSID # 与新SID一致 source ~oracle/.bashrc ``` 5. **重建数据库**: ```bash dbca -silent -createDatabase -responseFile /path/to/dbca.rsp ``` --- ### **验证步骤** 1. **检查数据库状态**: ```sql sqlplus / as sysdba SELECT name, open_mode FROM v$database; ``` 2. **查看监听状态**: ```bash lsnrctl status # 应显示新SID的服务 ``` 3. **日志检查**: ```bash tail -f $ORACLE_BASE/cfgtoollogs/dbca/<新SID>/trace.log ``` --- ### **预防措施** 1. **标准化响应文件**: ```ini # dbca.rsp 关键参数示例 responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v19.0.0 gdbname=orcl.global sid=orcl databaseConfigType=SI templateName=General_Purpose.dbc ``` [^1] 2. **安装前环境检查**: ```bash # 检查SID冲突 grep -r "旧SID" $ORACLE_BASE $ORACLE_HOME ``` 3. **使用干净的用户环境**: ```bash mv ~oracle ~oracle_backup # 备份旧配置 useradd -m -g oinstall oracle ``` --- ### **相关问题** 1. 如何彻底卸载Oracle残留文件? 2. DBCA响应文件中哪些参数必须与环境变量匹配? 3. 如何查询当前系统中已存在的Oracle SID? 4. 静默安装时如何避免路径权限问题? [^1]: Oracle静默安装中响应文件的配置要点 [^2]: SID冲突的检测清理方法 [^3]: ORACLE_BASE环境变量的作用域优先级
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值