丢失所有初始化参数文件后如何恢复

Posted elaine-lan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了丢失所有初始化参数文件后如何恢复相关的知识,希望对你有一定的参考价值。

 

 如果丢失所有初始化参数文件,但是有参数文件的备份可以用的情况下如何处理:

1.模拟问题发生

备份spfile

技术分享图片

去dbs下面把所有初始化参数文件都删掉

技术分享图片

2.如果实例并没有关闭,那么所有参数都还存储在内存中,就可以用

create pfile from spfile;  

来创建pfile,之后再用

create spfile=‘/home/oracle/spfileorcl.ora‘ from pfile;  

 来创建spfile

3.如果实例是关闭掉的,或者是迁移到新的环境上的,可以先手工创建一个简单的pfile:

技术分享图片

然后启动到nomount

技术分享图片

然后进入rman,用spfile的备份文件恢复出一个spfile来:

技术分享图片

检查是否生成:

技术分享图片

然后关闭数据库重新启动

技术分享图片

 4.总结

数据库的初始化参数大多数都设置了默认值,作为数据库的标准配置,所以即使pfile只定义了一个db_name,其他数据库运行必要的参数,在实例启动的时候都是会给配上的。

在一个用spfile启动的数据库中,我们可能会发现v$parameter里面的值会跟v$spparameter的值不一样,v$spparameter很多内容是空的:

技术分享图片

而v$parameter的值填的会满得多:

技术分享图片

这是因为v$spparameter中的变量是来自磁盘上存储的spfile<SID>.ora的,而v$parameter的参数是来自当前运行的实例(内存)的。

改动静态参数,只会写到spfile里面,不会写入内存,SMON从spfile里面读到了这个参数,才会写入内存。

以上是关于丢失所有初始化参数文件后如何恢复的主要内容,如果未能解决你的问题,请参考以下文章

盘符丢失的文件如何寻回

dll文件丢失怎么恢复

win7一体机分区不见的文件如何恢复

易语言源码丢失,用啥恢复软件恢复后可以用?

急救!!!!!使用Easycode Boy Plus!加密后bak文件丢失,怎样才能恢复加密文件(再次正常打开)?

Apple 开发者攻击后:如何恢复丢失的 App ID/证书/配置文件?