(若已啟動oracle實例需要先停止,可以用如下命令:net stop oracleservicemysid)lsnrctl start;oradim ndash;startup ndash;sid
如何為 Oracle 10g XE 創建一個新的數據庫實例 ?
如果是 Windows 平臺, 首先確保沒甚么重要數據在當前的這個 XE 實例中. 然后調用 oradim -delete -sid xe 刪除當前的系統服務(就是 Windows 服務).
然后運行 D:\oracle\app\oracle\product\10.2.0\server\config\scripts 中的 XE.bat 批處理即可.
如果是 Linux,就更容易了, 直接運行 scripts 目錄下的 XE.sh 腳本即可.
以上是網上一位高手提供的,下邊可就是原創了,呵呵。
能否創建 SID 不為 "XE" 的實例 ? 答案是可以的。
具體步驟:
假設要創建sid為mysid的實例,首先cmd 運行oradim -delete -sid xe 然后修改以下文件
----------------------------------------
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\cloneDBCreation.sql :中第(4,22,38,39)行中的XE改為mysid
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\cloneDBCreation.sql(4): Create controlfile reuse set database "mysid"
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\cloneDBCreation.sql(22): Create controlfile reuse set database "mysid"
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\cloneDBCreation.sql(38): alter database "mysid" open resetlogs;
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\cloneDBCreation.sql(39): alter database rename global_name to "mysid";
----------------------------------------
'D:\oracle\app\oracle\product\10.2.0\server\config\scripts\init.ora' :中第(13)行中的XE改為mysid
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\init.ora(13): db_name=mysid
----------------------------------------
'D:\oracle\app\oracle\product\10.2.0\server\config\scripts\initXETemp.ora' : 中第(13)行中的XE改為mysid
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\initXETemp.ora(13): db_name=mysid
----------------------------------------
'D:\oracle\app\oracle\product\10.2.0\server\config\scripts\XE.bat' 中第(14,16,18)行中的XE改為mysid
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\XE.bat(14): set ORACLE_SID=mysid
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\XE.bat(16): D:\oracle\app\oracle\product\10.2.0\server\bin\oradim.exe -new -sid mysid -startmode manual -spfile > D:\oracle\app\oracle\product\10.2.0\server\config\log\XE.bat.log,
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\XE.bat(18): D:\oracle\app\oracle\product\10.2.0\server\bin\oradim.exe -edit -sid mysid -startmode auto -srvcstart system >> D:\oracle\app\oracle\product\10.2.0\server\config\log\XE.bat.log
若你想修改http的監聽端口可修改一下文件
D:\oracle\app\oracle\product\10.2.0\server\config\scripts\postDBCreation.sql中第(9)行中的dems_xdb.sethttpport(9098);
然后運行D:\oracle\app\oracle\product\10.2.0\server\config\scripts\XE.bat。
運行完XE.bat后進入D:\oracle\app\oracle\product\10.2.0\server\database中復制名為PWDXE.ora,initXE.ora的文件,更改文件名分別為PWDMYSID.ora,initMYSID.ora
修改D:\oracle\app\oracle\product\10.2.0\server\NETWORK\ADMIN中listener.ora中
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = D:\oracle\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_mysid))
(ADDRESS = (PROTOCOL = TCP)(HOST = lp)(PORT = 1521))
)
)
DEFAULT_SERVICE_LISTENER = (mysid)
修改D:\oracle\app\oracle\product\10.2.0\server\NETWORK\ADMIN中tnsnames.ora中
mysid=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = lp)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = mysid)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_mysid))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_mysid))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
(listener.ora和tnsnames.ora中的內容我也不清楚是否應該修改,自己去試吧。)
此時sid為Mysid的oracle實例已經安裝完成,但是此時還沒有sid為mysid的監聽。若想連接成功還需要運行cmd,
(若已啟動oracle實例需要先停止,可以用如下命令:net stop oracleservicemysid)
lsnrctl start;
oradim –startup –sid mysid;
OK,現在打開“運行 SQL 命令行” connect system/你設置的密碼@mysid就可連接成功了
小記:若重啟機器listenser是不會自動啟動的,還需要手工運行
lsnrctl start;
oradim –startup –sid mysid;
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com