Oradim工具的用法,详细点 谢谢

[复制链接]
查看11 | 回复1 | 2008-4-28 15:05:12 | 显示全部楼层 |阅读模式
给你讲的详细点:1、什么是oradim=============ORADIM工具是Oracle在Windows上的一个命令行工具,用于手工进行Oracle服务的创建、修改、删除等工作。ORADIM的使用很简单,通过帮助文件可以看到常用的命令示例,此处不再赘述。ORADIM在数据库恢复中也常被用到,很多朋友都问过这样的问题:在Windows上,如果系统崩溃了,可能数据库软件丢掉了,但是数据文件、控制文件、日志文件等都还在,该怎样来恢复Oracle数据库?其实过程很简单,通常只要按原来的目录结构重新安装Oracle软件,然后通过ORADIM工具重建服务,就可以启动实例、加载数据库(当然相关的参数文件和口令文件等需要在$ORACLE_HOME\database目录存在)。来看以下过程,通过ORADIM创建一个服务后,实例会随之启动:C:\>oradim -new -sid eygle实例已创建。用net命令可以查看系统启动了哪些服务,看到Oracle的服务已经启动:C:\>net start已经启动以下 Windows 服务:............... OracleServiceeygle Plug and Play Print Spooler命令成功完成。如果你的系统装了一些UNIX增强工具,那么可以通过grep过滤一下:C:\>net start |grep Oracle OracleServiceeygle使用ORADIM工具后,会在$ORACLE_HOME\database目录下生成一个日志文件。2、Oradim工具的用法================创建例程: -NEW -SID sid | -SRVC 服务 [-INTPWD 口令] [-MAXUSERS 数量] [-STARTMODE a|m] [-PFILE 文件] [-TIMEOUT 秒] 编辑例程: -EDIT -SID sid [-NEWSID sid] [-INTPWD 口令] [-STARTMODE auto|manual] [-PFILE 文件名]
[-SHUTMODE a|i|n]
[-SHUTTYPE srvc|inst|srvc,inst] [-TIMEOUT 秒] 删除例程:
-DELETE -SID sid | -SRVC 服务名称启动服务和例程:
-STARTUP -SID sid [-USRPWD 口令] [-STARTTYPE srvc|inst|srvc,inst] [-PFILE 文件名]关闭服务和例程:
-SHUTDOWN -SID sid [-USRPWD 口令] [-SHUTTYPE srvc|inst|srvc,inst] [-SHUTMODE a | i | n]查询帮助:
-? | -h | -help相关说明:-SID
sid
指定要启动的实例名称-SRVC
服务
指定要启动的服务名称-USRPWD 口令
指定内部用户的口令,如果作为NT管理员登录,不用此参数-PFILE
文件名
为实例指明初始化参数文件,如果参数文件在Oracle的默认位置,则不需要此命令-STARTTYPE srvc|inst|srvc,inst表示要启动什幺srvc—只启动服务inst—启动实例,服务必须已经启动并开始工作了srvc,inst —服务和实例都启动-SHUTTYPE srvc|inst|srvc,inst 表示要终止什幺,参数选项同上 -STARTMODE a|m 表示启动实例所使用的模式a—auto方式(自动)m—manual方式(手动)-SHUTMODE a|i|n 表示终止实例所使用的关闭模式a—abort方式i—immediate方式n—normal方式例子:1.在服务里生成一个新的实例管理服务,启动方式为手工
oradim -NEW -SID test -STARTMODE manual -PFILE "D:\Oracle\admin\test\pfile\inittest.ora
oradim -NEW -SRVC OracleServicetest -STARTMODE manual -PFILE "D:\Oracle\admin\test\pfile\inittest.ora注:有效的服务名为 “OracleService” 后跟“ SID”
-SID test 与 -SRVC OracleServicetest 等价
2.删除此实例或服务oradim -DELETE -SID testoradim -DELETE -SRVC OracleServicetest3.编辑此实例,启动方式改为手动oradim -EDIT -SID test -STARTMODE manual4.编辑此实例,启动方式改为自动 oradim -EDIT -SID test -STARTMODE auto5. 启动test oradim -STARTUP -SID test oradim -STARTUP -SID test -STARTTYPE srvc,inst 6.只启动test服务 oradim -STARTUP -SID test -STARTTYPE srvc7.只启动test实例 oradim -STARTUP -SID test -STARTTYPE inst8. 关闭test
oradim -SHUTDOWN -SID test
oradim -SHUTDOWN -SID test -SHUTTYPE srvc,inst3、举一个windows的例子助于理解===================在Windows上如果系统崩溃了,数据文件、控制文件、日志文件等都还在,怎样来恢复Oracle数据库?前几天重新安装了系统,正好需要恢复一下数据库。如果软件也损失了,那么需要重新安装一下数据库软件,以恢复Windows相关环境变量等信息。很多人抱怨我的新书很少关于Windows的内容,实际上,Windows和Linux/Unix上的操作没有什么不同,Windows本身就是一个仿Unix的系统。那么好吧,我还是用一个系列的文章介绍一下我所使用的Windows系统,以及我所认为的数据库系统无关性。大家可以跟随我看一下这样一个过程。首先开启一个cmd命令行窗口。开始->运行->cmd我的Oracle软件安装在D:oracle :D:>dir oracle 驱动器 D 中的卷是 PRIVAT 卷的序列号是 94B0-FD3B D:oracle 的目录2006-08-1614:14
.2006-08-1614:14
..2006-08-1614:14
ora10gR2
0 个文件
0 字节
3 个目录
941,744,128 可用字节我的数据文件位于D:oradata下:D:>dir d:oradata 驱动器 D 中的卷是 PRIVAT 卷的序列号是 94B0-FD3B d:oradata 的目录2006-08-1614:25
.2006-08-1614:25
..2005-09-1216:40
flash_recovery_area2005-09-1216:40
EYGLE
0 个文件
0 字节
4 个目录
941,744,128 可用字节现在让我们用oradim创建一个实例,实际上也就是创建一个Windows服务:C:>oradim -new -sid eygle实例已创建。我们用net命令可以查看系统启动了哪些服务,我们看到Oracle的服务已经启动:C:>net start已经启动以下 Windows 服务:............... O&O Defrag OracleServiceeygle Plug and Play Print Spooler...............命令成功完成。如果你的系统装了一些Unix增强工具,那么可以通过grep过滤一下:C:>net start |grep Oracle OracleServiceeygle Unix命令工具可以在Sourceforge (http://sourceforge.net/projects/gnuwin32/) 下载. 此时我们就可以通过启动实例,挂接原有数据库,启动Oracle数据库了。当然你可能还有一些其他工作需要完成,比如重建口令文件等。如果你想删除这个服务,那么也很简单:C:>oradim -delete -sid eygle实例已删除。 当然做好备份仍然是最重要的,我见过有的企业将文件分散在很多逻辑分区上,结果随系统崩溃丢失了部分文件,损失也是相当惨重的。在Linux/Unix上不需要服务来启动实例,也就不存在这样类似的操作。不过在命令行操作,一切都是类似的。系列文章参考:http://www.eygle.com/archives/2006/08/oracle10g_on_windows.html
回复

使用道具 举报

千问 | 2008-4-28 15:05:12 | 显示全部楼层
创建例程:
-NEW -SID sid | -SRVC 服务 [-INTPWD 口令] [-MAXUSERS 数量] [-STARTMODE a|m] [-PFILE 文件] [-TIMEOUT 秒]
编辑例程:
-EDIT -SID sid [-NEWSID sid] [-INTPWD 口令] [-STARTMODE auto|manual] [-PFILE 文件名]
[-SHUTMODE a|i|n]
[-SHUTTYPE srvc|inst|srvc,inst] [-TIMEOUT 秒] 删除例程:
-DELETE -SID sid | -SRVC 服务名称 启动服务和例程:
-STARTUP -SID sid [-USRPWD 口令] [-STARTTYPE srvc|inst|srvc,inst] [-PFILE 文件名] 关闭服务和例程:
-SHUTDOWN -SID sid [-USRPWD 口令] [-SHUTTYPE srvc|inst|srvc,inst] [-SHUTMODE a | i | n] 查询帮助:
-? | -h | -help相关说明:-SID sid
指定要启动的实例名称-SRVC 服务
指定要启动的服务名称-USRPWD 口令
指定内部用户的口令,如果作为NT管理员登录,不用此参数-PFILE 文件名 为实例指明初始化参数文件,如果参数文件在Oracle的默认位置,则不需要此命令-STARTTYPE srvc|inst|srvc,inst表示要启动什幺srvc—只启动服务inst—启动实例,服务必须已经启动并开始工作了srvc,inst —服务和实例都启动-SHUTTYPE srvc|inst|srvc,inst 表示要终止什幺,参数选项同上-STARTMODE a|m 表示启动实例所使用的模式a—auto方式(自动)m—manual方式(手动)-SHUTMODE a|i|n 表示终止实例所使用的关闭模式a—abort方式i—immediate方式n—normal方式例子:1.在服务里生成一个新的实例管理服务,启动方式为手工
oradim -NEW -SID test -STARTMODE manual -PFILE "D:\Oracle\admin\test\pfile\inittest.ora
oradim -NEW -SRVC OracleServicetest -STARTMODE manual -PFILE "D:\Oracle\admin\test\pfile\inittest.ora注:有效的服务名为 “OracleService” 后跟“ SID”
-SID test 与 -SRVC OracleServicetest 等价
2.删除此实例或服务oradim -DELETE -SID testoradim -DELETE -SRVC OracleServicetest3.编辑此实例,启动方式改为手动oradim -EDIT -SID test -STARTMODE manual4.编辑此实例,启动方式改为自动 oradim -EDIT -SID test -STARTMODE auto5. 启动test oradim -STARTUP -SID test oradim -STARTUP -SID test -STARTTYPE srvc,inst6.只启动test服务 oradim -STARTUP -SID test -STARTTYPE srvc7.只启动test实例 oradim -STARTUP -SID test -STARTTYPE inst8. 关闭test
oradim -SHUTDOWN -SID test
oradim -SHUTDOWN -SID test -SHUTTYPE srvc,inst参考资料:http://dev.csdn.net/article/50/50656.shtm

已赞过已踩过<
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行