oracle学习篇:二、参数文件

2 参数文件

2.1 参数文件的获取

oracle的初始化参数可以通过查询v$parameter视图得到,在SQL*PLUS中,可以用过show parameter命令来显示某些参数的设置值。

2.2 参数文件

初始化参数文件:pfile

服务器参数文件:spfile

视图v$spparamter记录spfile参数的设置。

没啥好说的,直接学习一下案例分析。

2.3 诊断案例

问题描述:数据库在重新启动时无法正常启动,检查发现undo表空间丢失。

2.3.1 检查alert日志文件

警报日志文件由按时间排序的消息和错误的记录组成。下列信息会记录在警报日志文件中:

(1)内部错误和块损坏

(2)影响数据库结构和参数的操作

(3)例程启动时所有非缺省的初始化参数值

控制警报日志文件位置的初始化参数为:background_dump_dest,缺省文件名为alertorcl.log

查看oracle错误含义:oerr ora 30012(今天才发现oracle错误可以这么查,授人以鱼不如授人以渔啊)

检查警报日志,发现报错原因ora-30012:undo表空间不存在。

2.3.2 尝试重新启动 数据库,检查问题是否仍然存在

startup

启动失败,问题仍然存在

2.3.3 检查数据文件,看undo表空间是否存在

ls -ltr

undotbs.dbf

文件存在

2.3.4 启动数据库到mount状态,检查系统参数

select * from v$datafile;

show parameter undo;

show parameter spfile;

发现系统没有使用spfile,而初始化参数设置的undo表空间为undotbs1,数据库中登记的undo文件为undotbs2.dbf。

2.3.5 检查参数文件

检查pfile文件中的设置

vi initorcl.ora

发现undo表空间参数设置的是undotbs1,参数设置可能和数据库的实际情况不符。

2.3.6 再次检查alert文件

警告日志文件中记录了对于数据库重要操作的信息,可以从中查找undo表空间的操作。

(1)创建数据库时的信息

(2)发现创建undotbs02的记录信息

(3)新的undo表空间被应用

alter system set undo_tablespace=‘UNDOTBS2‘ scope=memory;

可以发现问题就在这里,创建了新的undo表空间以后,因为使用的是pfile文件,切换表空间的修改只对当前实例生效,操作人员忘记了修改pfile文件。

(4)删除了undotbs1的信息

这样再次重新启动数据库的时候,问题出现了,pfile中定义的undotbs1找不到了,而且操作是在很久以前,没人能回忆起来。

2.3.7 修正pfile

修改pfile参数文件,就可以启动数据库。

2.3.8 启动数据库

重新启动数据,启动成功。

第二章完

这个案例发生的比较早,现在没人会用pfile去修改参数吧,也很少从pfile启动数据库吧。不过既然是很久以前的操作,alert日志找得到相关的操作记录吗?

原文地址:https://www.cnblogs.com/myheart-new/p/11751188.html

时间: 2024-08-04 03:52:26

oracle学习篇:二、参数文件的相关文章

Swift学习笔记(二)参数类型

关于参数类型,在以前的编程过程中,很多时间都忽视了形参与实参的区别.通过这两天的学习,算是捡回了漏掉的知识. 在swift中,参数有形参和实参之分,形参即只能在函数内部调用的参数,默认是不能修改的,如果想要修改就需要在参数前添加var声明. 但这样的声明过后,仍旧不会改变实参的值,这样就要用到inout了,传递给inout的参数类型必须是var类型的,不能是let类型或者字面类型,(字面类型是在swift中常提的一个术语,个人认为就是赋值语句,也不能修改)而且在传递过程中,要用传值符号"&

Oracle学习(二)_多表操作

--第一部分:SQL基础 --ch1 简单查询 --ch2 查询基本概念 --ch3 数据过滤 --第二部分:多表操作 --ch4 集合理论 --ch5 内连接 --ch6 外连接 --ch7 子查询 --第三部分:数据分组 --ch8 简单统计 --ch9 数据分组 --ch10 分组数据过滤 --第四部分:SQL函数 --ch11 内置函数 --ch12 case表达式 --第五部分:DML语句 --ch13 插入数据 --ch14 修改数据 --ch15 删除数据 ------------

8.15_Linux之bash shell脚本编程入门篇(二)以及文件查找和压缩的使用

bash shell脚本编程入门篇(二) read命令的使用 作用: 使用read来把输入值分配给一个或多个shell变量: -p指定要显示的提示 -t TIMEOUT read从标准输入中读取值,给每个单词分配一个变量,所有剩余单词都被分配给最后一个变量 EX.read -p "Enter a filename:" FILE 条件选择之if的使用 if的作用:选择执行(注意:if语句可嵌套) 单分支 if 判断条件;then 条件为真的分支代码 fi EX.单分支案例 双分支 if

ORACLE 11G没有备份文件参数文件在异机通过rman备份恢复找回被误删的数据

背景:          同事误删除线上数据,所以需要从备份中找回数据恢复.真实屋漏偏逢连夜雨.船迟又遇打头风,前两天备份的磁盘坏块,现在只有rman全备的.bak文件,没有控制文件和参数文件,所以现在需要考虑的是如何根据bak文件在备份数据库上恢复数据,从中找出被误删的数据. 1 通过catalog start with''的方式来恢复 1.1手动创建控制文件 CREATE CONTROLFILE REUSE set DATABASE"powerdes" RESETLOGS ARCH

oracle学习篇十二:索引

索引: 查询User_indexes可以获取有关用户已创建的索引的详细信息. 查询User_ind_partitions可以获取有关用户已创建的分区索引的详细信息. 查询User_ind_columns可以获取有关列(用户的索引是基于这些列创建的)的详细信息. 索引类型:唯一索引.组合索引.反向键索引.位图索引和基于函数的索引. 索引在逻辑上物理上都独立于关联表中的数据,在任何时候都可以创建或删除索引,而不会影响基表或其它索引. 1.创建普通索引的语法:Create INDEX index_na

ajax学习篇(二)XMLHttpRequest的创建和使用

前言:上篇我们介绍了ajax是什么和ajax的执行流程本篇我们介绍实现ajax的对象XMLHttpRequest对象 1.如何使用XMLHttpRequest做ajax请求? 首先我们要先创建XMLHttpRequest对象,按标准new XMLHttpRequest()即可得到,但是如果考虑到低版本的ie那么我们可以new Window.ActiveXObject(Mircosoft.XMLHttp); 下面我们写一个版本兼容函数来创建我们的XMLHttpRequest对象. 1 functi

oracle学习篇:六、重做(Redo)

重做(Redo)和撤销(Undo)是oracle的重要特性,用以保证事务的可恢复性和可撤销性. 6.1 Redo的作用 在数据库中,Redo的功能主要通过3个组件来实现:Redo Log Buffer.LGWR后台进程和Redo Log File(在归档模式下,Redo Log File最终会写出为归档日志文件). 6.2 Redo的内容 改变向量:表示对数据库内某一个数据块所做的一次变更. 重做记录:通常由一组改变向量组成,是一个改变向量的集合,代表一个数据库的变更,构成数据库变更的最小恢复单

oracle学习笔记(二)

1. Oracle字符串操作 1.1. 字符串类型 1.1.1. CHAR和VARCHAR2类型 CHAR和VARCHAR2类型都是用来表示字符串数据类型,用来在表中存放字符串信息, 比如姓名.职业.地址等. CHAR存放定长字符,如果数据存不满定长长度,则补齐空格: VARCHAR2存放变长字符,实际数据有多少长度则占用多少. 如保存字符串'HELLOWORLD',共10个英文字母: CHAR(100): 10个字母,补齐90个空格,实际占用100个字节. VARCHAR2(100) :10个

oracle 学习笔记(二)

1.清屏 windows:host cls; linux:host clear; 2.对日期的处理 1)系统默认的类型: select sysdate from  dual;-->注:sysdate 是系统的当前时间 系统默认格式为:日-月-年 2)to_char()的用法 语法:TO_CHAR(date,'format_model') 格式: 日期格式的元素 格式 说明 举例 YYYY Full year in numbers 2011 YEAR Year spelled out(年的英文全称