如何更改 Oracle XE 实例的 SID [英] How can I change the SID of an Oracle XE instance

查看:125
本文介绍了如何更改 Oracle XE 实例的 SID的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要更改 Oracle XE 数据库的 SID(不是服务名称)以匹配生产数据库.

I needed to change the SID of an Oracle XE database (not the Service Name) to match a production database.

当我尝试在线搜索时,大多数页面都在描述通过 tnsnames.ora 更改或添加服务名称;这不是我需要做的.

When I tried searching online, most of the pages were describing changing or adding a service name through tnsnames.ora; that's not what I needed to do.

推荐答案

asktom 文章给出了答案,但格式和冗长使得它难以理解,所以这里是一个总结:

The asktom article has the answer, but the formatting and verbosity makes it hard to follow, so here's a summary:

[XE_HOME] 表示 Oracle XE 的安装位置.通常这是C:\oraclex\app\oracle\product\10.2.0\server.

[XE_HOME] means where Oracle XE is installed. Normally this is C:\oraclexe\app\oracle\product\10.2.0\server.

请确保您具有管理员权限,否则程序将失败.

Make sure you have Administrator privileges or the procedure will fail.

  1. 配置 SPFILE(如果需要,可以删除旧文件)
  1. Configure the SPFILE (you can remove the old file if you want)
  1. 复制 [XE_HOME]\dbs\spfileXE.ora [XE_HOME]\dbs\spfileNEW_SID_NAME.ora
  2. 复制[XE_HOME]\database\initXE.ora [XE_HOME]\database\initNEW_SID_NAME.ora
  3. 编辑[XE_HOME]\database\initNEW_SID_NAME.ora:它应该包含如下一行:SPFILE='[XE_HOME]\server\dbs/spfileNEW_SID_NAME.ora'代码>
  1. copy [XE_HOME]\dbs\spfileXE.ora [XE_HOME]\dbs\spfileNEW_SID_NAME.ora
  2. copy [XE_HOME]\database\initXE.ora [XE_HOME]\database\initNEW_SID_NAME.ora
  3. Edit [XE_HOME]\database\initNEW_SID_NAME.ora: It should contain a single line like this: SPFILE='[XE_HOME]\server\dbs/spfileNEW_SID_NAME.ora'

  • 关闭并用新服务替换旧服务:

  • Shutdown and replace the old service with a new:

    1. sqlplus/as sysdba 并执行shutdown
    2. lsnrctl 停止
    3. oradim -new -sid NEW_SID_NAME -startmode auto -pfile [XE_HOME]\database\initNEW_SID_NAME.ora
    4. oradim -delete -sid XE
    5. lsnrctl start

  • 更新 ORACLE_SID 环境属性(系统设置 > 高级 > 环境)
  • 强制 Oracle 向侦听器注册
    • sqlplus/as sysdba 并执行alter system register;
    • 您可以通过执行以下查询来验证 SID 是否已更改:select instance_name from v$instance;

      You can verify that the SID was changed by executing the following query: select instance_name from v$instance;

      这篇关于如何更改 Oracle XE 实例的 SID的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

  • 查看全文
    登录 关闭
    扫码关注1秒登录
    发送“验证码”获取 | 15天全站免登陆