oracle linux實現自啟動及sqlplus環境變數的設定,rlwrap的設定

fjzcau發表於2011-04-08

使用/etc/rc.local系統開機啟動指令碼,啟動oracle

配置系統使dbstart和dbshut指令碼起作用:

[@more@]

1)、以root編輯/etc/oratab,類似 orcl:/u01/product/10.2.0/db_1:N 這種格式,其中orcl是你的ORACLE_SID,/u01/product/10.2.0/db_1是ORACLE_HOME,這裡需要把N改為Y,即orcl:/u01/product/10.2.0/db_1:Y這樣。

2)、以oracle編輯$ORACLE_HOME/bin/dbstart,找到其中第78行:ORACLE_HOME_LISTNER=改為你自己的路徑,或者可以改成ORACLE_HOME_LISTNER=$ORACLE_HOME

儲存指令碼,以oracle使用者執行dbshut和dbstart看是否能關閉、啟動資料庫。如果不能,一般是引數設定,根據報錯找到對應位置更改。

經過上一步的配置,可以直接用dbstart命令啟動資料listener、instance、asm instances,但是還沒有啟動oracle10g的EM,ORACLE利用web頁面管理資料庫相當方便,也是10g的一個特色,所以應該一併啟動起該服務來。

$ORACLE_HOME/bin/emctl start dbconsole

因此我們可以用rc.local或者redhat服務都可以實現要求的開機啟動。下面分別說一下:

1)、利用rc.local。直接把dbstart加到rc.local中,實現開機自動啟動。這裡需要注意的是必須以oracle啟動該指令碼。

用root編輯/etc/rc.local,新增下面一行:
# This script. will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style. init stuff.
touch /var/lock/subsys/local
su - oracle -c "/boot/u01/app/oracle/product/11.2.0/bin/dbstart"(使用完整路徑)
su - oracle -c "/boot/u01/app/oracle/product/11.2.0/bin/lsnrctl start"
su - oracle -c "/boot/u01/app/oracle/product/11.2.0/bin/emctl start dbconsole"

這裡/boot/u01/app/oracle/product/11.2.0/需要替換成實際的ORACLE_HOME

儲存並退出後,reboot伺服器測試一下,可以看到,當系統啟動以後oracle監聽、例項和em都已經起來了

[root@localhost ~]# su - oracle
-bash: [oracle=oracle]: command not found
[oracle@localhost ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Fri Jan 4 21:50:15 2002

Copyright (c) 1982, 2009, Oracle. All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

2 sqlplus環境變數的設定
設定SQLPATH變數路徑 找到使用者概要檔案login.sql
也可以使用glogin.sql
設定如下login.sql
set long 80
set newpage 0
set feedback on
set define on
set serveroutput on
set termout on
set time off
set timing on
set verify on
set linesize 80
set pagesize 30
set sqlprompt "_USER'@'_CONNECT_IDENTIFIER _DATE>"
alter session set nls_date_format='YYYY-MM-DD HH24:MI:SS';
3 rlwrap的回顯功能
在使用者的環境變數檔案設定中新增 即 /home/oracle/.bash_profile
alias sqlplus="rlwrap sqlplus"
alias rman="rlwrap rman"

4 su - name 和 su name 的區別 自己觀察

[root@localhost ~]# su - xpj
[xpj@localhost ~]$ su oracle
口令:
[oracle@localhost xpj]$ sqlplus / as sysdba
rlwrap: Cannot execute sqlplus: No such file or directory
[oracle@localhost xpj]$ exit
[xpj@localhost ~]$ su - oracle
口令:
[oracle@localhost ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Sun Apr 3 14:17:35 2011
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Session altered.
Elapsed: 00:00:00.00
SYS@orcl 2011-04-03 14:17:35>

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22661144/viewspace-1048402/,如需轉載,請註明出處,否則將追究法律責任。

相關文章