linux設定 讓oracle10g自啟動

2022-05-08 19:06:11 字數 1704 閱讀 4658

在/etc/rc.d/init.d/ 建立oracle10g檔案

touch oracle

chmod a+x oracle

[root@test~]# vi /etc/rc.d/init.d/oracle

#!/bin/bash

#chkconfig:345 51 49

#description:starts the oracle database deamons

#oracle_home=/oracle/product/10.2.0/db_1

oracle_owner=oracle

case "$1" in

start)

echo -n "starting oracle10g:"

su - $oracle_owner -c "$oracle_home/bin/dbstart"

su - $oracle_owner -c "$oracle_home/bin/lsnrctl start"

touch /var/lock/subsys/oracle10g

echo

;;stop)

echo -n "shutting down oracle10g:"

su - $oracle_owner -c "$oracle_home/bin/dbshut"

su - $oracle_owner -c "$oracle_home/bin/lsnrctl stop"

rm -f /var/lock/subsys/oracle10g

echo

;;restart)

echo -n "starting oracle10g:"

$ stop

$ start

echo

;;*)

echo "usage: oracle10g"

exit

;;esac

exit

儲存檔案(按esc,":wq"),退出以後,新增並啟動察看服務。

/sbin/chkconfig --add oracle

/sbin/chkconfig --list oracle

在su下

service oracle10g start //啟動oracle服務

service oracle10g stop //停止oracle服務

注1: /var/lock/subsys目錄的作用

很多程式需要判斷是否當前已經有乙個例項在執行,這個目錄就是讓程式判斷是否有例項執行的標誌,比如說xinetd,如果存在這個檔案,表示已經有xinetd在執行了,否則就是沒有,當然程式裡面還要有相應的判斷措施來真正確定是否有例項在執行。通常與該目錄配套的還有/var/run目錄,用來存放對應例項的pid,如果你寫指令碼的話,會發現這2個目錄結合起來可以很方便的判斷出許多服務是否在執行,執行的相關資訊等等。

實際上,判斷是否上鎖就是判斷這個檔案,所以檔案存在與否也就隱含了是否上鎖。而這個目錄的內容並不能表示一定上鎖了,因為很多服務在啟動指令碼裡用touch來建立這個加鎖檔案,在系統結束時該指令碼負責清除鎖,這本身就不可靠(比如意外失敗導致鎖檔案仍然存在),我在指令碼裡一般是結合pid檔案(如果有pid檔案的話),從pid檔案裡得到該例項的pid,然後用ps測試是否存在該pid,從而判斷是否真正有這個例項在執行,更加穩妥的方法是用程序通訊了,不過這樣的話單單靠指令碼就做不到了。(來自:

注3:若遇到「服務不支援chkconfig」請檢查配置檔案中帶有「#」號的行有沒有寫錯。

Oracle 1 安裝和解除安裝

oracle的環境 將兩個壓縮包一起解壓到電腦某個位置的同乙個資料夾 雙擊setup.exe進行安裝 這裡電子郵件可以不用填,接收安全更新勾選掉 安裝的時候選擇乙個位置,還有口令,接下來基本next就可以完成 1 開始 設定 控制面板 管理工具 服務 停止所有oracle服務。2 開始 程式 ora...

常用SQL語句(oracle)(1)

查詢表結構 select column name,data type,data length from user tab cols where table name test desc 表名 變動表 新增列 alter table table name add column name datatyp...

Oracle 1 啟動資料庫

目錄 一 連線資料庫 二 啟動資料庫 三 關閉資料庫 四 幫助 sqlplus sys password as sysdba conn user password as sysdba2.1 startup nomout mount open force resetrict pfile filenam...