如何修改Oracle 10g XE的SID

php中文网
发布: 2016-06-07 17:00:48
原创
1218人浏览过

(若已启动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;

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号