Oracle数据库中如何使用nid的修改数据库名_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2392 | 回复: 0   主题: Oracle数据库中如何使用nid的修改数据库名        下一篇 
ab19890824
注册用户
等级:少尉
经验:351
发帖:92
精华:0
注册:2011-11-21
状态:离线
发送短消息息给ab19890824 加好友    发送短消息息给ab19890824 发消息
发表于: IP:您无权察看 2015-4-10 16:43:50 | [全部帖] [楼主帖] 楼主

某些系统是因为Oracle数据库的名称不是很规范,如果你不想对Oracle数据库重新创建的话,你可以使用Oracle自带的工具即nid来修改Oracle数据库的名称。在整个修改过程中,对控制文件和数据文件进行修改,且重置dbid,建议在修改前对数据进行备份。

在本例子中,我们将Oracle数据库中的instance_name和db_name从“oratest”修改为“test”,数据库版本为10.2.0.3。

查看数据库信息。

  1. SQL> show parameter instance_name  
  2. NAME TYPE VALUE  
  3. stance_name string ORATEST  
  4. SQL> show parameter db_name  
  5. NAME TYPE VALUE  
  6. db_name string ORATEST  
  7. SQL>show parameter service_name  
  8. NAME TYPE VALUE  
  9. db_name string ORATEST  
  10. SQL>select dbid from v$database;  
  11. DBID   
  12. 3213300265


修改前Oracle数据库名为"oratest",dbid="3213300265"。接下来修改数据库名称,先停止数据库,然后启动到mount状态下,使用nid工具修改dbname。

  1. SQL> shutdown immediate  
  2. Database closed.  
  3. Database dismounted.  
  4. ORACLE instance shut down.  
  5. SQL> startup mount  
  6. Total System Global Area 268435456 bytes  
  7. Fixed Size 1261272 bytes  
  8. Variable Size 117440808 bytes  
  9. Database Buffers 146800640 bytes  
  10. Redo Buffers 2932736 bytes  
  11. Database mounted.  
  12. SQL> host;  
  13. $ nid target="sys/password" dbname=test 
  14. DBNEWID: Release 10.2.0.3.0 - Production on Wed Feb 4 11:12:36 2009  
  15. Copyright (c) 1982, 2005, Oracle. All rights reserved.  
  16. Connected to database ORATEST (DBID=3213300265)  
  17. Connected to server version 10.2.0  
  18. Control Files in database:  
  19. /u02/oradata/test/control01.ctl  
  20. /u02/oradata/test/control02.ctl  
  21. /u02/oradata/test/control03.ctl  
  22. Change database ID and database name ORATEST to TEST? (Y/[N]) => y  
  23. Proceeding with operation  
  24. Changing database ID from 3213300265 to 1976074532  
  25. Changing database name from ORATEST to TEST  
  26. Control File /u02/oradata/test/control01.ctl - modified  
  27. Control File /u02/oradata/test/control02.ctl - modified  
  28. Control File /u02/oradata/test/control03.ctl - modified  
  29. Datafile /u02/oradata/test/system01.dbf - dbid changed, wrote new name  
  30. Datafile /u02/oradata/test/undotbs01.dbf - dbid changed, wrote new name  
  31. Datafile /u02/oradata/test/sysaux01.dbf - dbid changed, wrote new name  
  32. Datafile /u02/oradata/test/users01.dbf - dbid changed, wrote new name  
  33. Datafile /u02/oradata/test/example01.dbf - dbid changed, wrote new name  
  34. Datafile /u02/oradata/test/temp01.dbf - dbid changed, wrote new name  
  35. Control File /u02/oradata/test/control01.ctl - dbid changed, wrote new name  
  36. Control File /u02/oradata/test/control02.ctl - dbid changed, wrote new name  
  37. Control File /u02/oradata/test/control03.ctl - dbid changed, wrote new name  
  38. NID-00600: Internal Error - [28] [12152] [0] [0]  
  39. Change of database name and ID failed during validation -database is intact.  
  40. DBNEWID - Completed with validation errors.  



--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论