oratab文件生成环境变量? P27 2.1.3
Pro Oracle Database 12c Administration 中有利用 /etc/oratab 生成oracle 环境变量的例子。
实践之后发现,/etc/oratab 是由run.sh生成,而件初始值为空。只有手动添加或者dbca建库时才会向其中添加条目。从run.sh生成的log中可以看到这点。
Running Oracle 11g root.sh script…
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1Creating /etc/oratab file…
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
因此书中oraset.sh脚本使用有限制: 1. 选择dbca建库后执行oraset.sh 2. 手动添加条目后执行oraset.sh 这种通过解析 oratab 文件生成环境变量的方法,将 export 隐藏在 oraset 脚本中,个人认为可读性不好,但是减少了手动添加带来的风险。特别是存在多个数据库且需要在某个时刻选择其中一个的时候。