设为首页 收藏本站
查看: 956|回复: 0

[经验分享] Oracle 10g 读书笔记之数据库常用文件

[复制链接]

尚未签到

发表于 2016-8-2 22:31:16 | 显示全部楼层 |阅读模式
一、参数文件和服务器参数文件
参数文件(Parameter File)通常称为初始文件(init file),或 init.ora 文件。默认名称为 init<ORACLE_SID>.ora 文本文件。
SPFILE 生成 PFILE:create pfile='/tmp/initorcl.ora' from spfile;
服务器参数文件(Server Parameter File),或简称 SPFILE。默认名称为 spfile<ORACLE_SID>.ora 二进制文件,可通过 RMAN 备份。
PFILE 转换为 SPFILE :create spfile from pfile
修改SPIFLE参数:alter system set parameter=value <comment='text'> <deferred> <scope=memory|spfile|both> <sid='sid|*'>
其中,deferred 指定系统修改是否只对以后的会话生效,默认情况下,alter system 命令会立即生效。
可以使用以下查询确认哪些参数要求必须使用 deferred:
select name from v$parameter where ISSYS_MODIFIABLE='DEFFERRED';
取消 SPFILE 中的值设置:alter system reset parameter <scope=memory|spfile|both> sid='sid|*'
SID 是站点标识符(Site Identifie)。在 UNIX 中,SID 和 ORACLE_HOME 一同进行散列运算,创建一个唯一的键名从而附加到 SGA。
如果 ORACLE_SID 或 ORACLE_HOME 设置不当,就会得到 ORACLE NOT AVAILABLE 错误,因为无法附加到这个唯一键所标识的共享内存段。
查看参数:show parameter <name> 或查询视图 v$parameter
修改参数:alter system set <name>=<value>

二、跟踪文件
文件位置:USER_DUMP_DEST(专用服务器连接) 和 BACKGROUND_DUMP_DEST (共享服务器连接)
查询文件位置:select name, value from v$parameter where name like '%dump_dest%';
如果使用共享服务器连接,就会使用一个后台进程;如果使用专用服务器连接,则会使用一个用户或前台进程与 oracle 交互。
如果出现严重的 oracle 内部错误,或者如果 oracle support 要求生成一个跟踪文件来得到额外的调试信息,CORE_DUMP_DEST 则定义了文件的位置。
查询跟踪文件:
select c.value || '/' || d.instance_name || '_ora_' || a.spid || '.trc' trace
from v$process a, v$session b, v$parameter c, v$instance d
where a.addr=b.paddr and b.audsid=userenv('sessionid') and c.name='user_dump_dest'
标准格式:<ORACLE_SID>_ora_<PROCESS_ID>

三、数据文件
表空间是 oracle 中的一个逻辑存储容器,位于存储层次的顶层,包括一个或多个数据文件。
段就是占用存储空间的数据库对象,如表、索引、回滚段、临时段等。
段本身又由一个或多个区段组成。区段是文件中一个逻辑上连续分配的空间。每个段至少有一个区段,回滚段需要两个。
区段进一步由块组成。它是 oracle 中最小的空间分配单位。数据行、索引条目或临时排序结果就存在块中。块大小有 2、4、8、16 K等。
一个数据库允许有多种块大小,目的是为了可以在更多的情况下使用可传输的表空间。所以一个表空间中的所有块大小都相同。
块结构:
1、首部,包含块类型的有关信息、块上发生的活动事务和过去事务的相关信息,以及块在磁盘上的地址。
2、表目录,如果有则会包含把行存储在这个块上的表的有关信息(可能一个块上存储多个表的数据)。
3、行目录,包含块中行的描述信息。这是一个指针数据,指向块中数据部分中的行。
4、空闲空间。5、数据。6、尾部。

四、临时文件(临时数据文件)
临时文件是一种特殊类型的数据文件。oracle 使用临时文件来存储大规模排序操作和散列操作的中间结果。
oracle 以一种特殊的方式处理临时文件。一般你对对象所做的每个修改都会存储在重做日志中,临时文件不包括在这个重放过程内。
对临时文件并不生成 redo 日志,不过可以生成 undo 日志。由于 undo 总是受 redo 的“保护”,因此这就会生成使用临时表的 redo 日志。

五、控制文件
参数文件告知实例控制文件的位置,控制文件则告知实例数据库和在线重做日志文件的位置。

六、重做日志文件
它们是数据库的事务日志。包括在线重做日志和归档重做日志。
从一个日志文件组切换到另一个日志文件组的动作称为日志切换。它可能会导致临时性“暂停”,数据库确保将缓存中的数据安全的写入磁盘。
在填满日志文件 A 并切换到日志文件 B 时,oracle 就会启动一个检查点。此时 DBWn 开始将日志文件组 A 所保护的所有脏块写至磁盘。

七、密码文件
它是一个可选的文件,允许远程 SYSDBA 或者管理员访问数据库。

八、修改跟踪文件
它是一个可选的文件,是 10g 企业版中新增的。它唯一的目的是跟踪自上一个增量备份以来哪些块已经修改。这样 RMAN 备份时就不必读取整个数据库。
创建修改跟踪文件命令如下:
alter database enable block change tracking using file 'c:/oracle/changed_blocks.bct';
关闭和删除修改跟踪文件:
alter database disable block change tracking;

九、闪回日志文件
简称为闪回日志,这是 oracle 10g 中为支持 FLASHBACK DATABASE 命令而引入的。包含已修改数据库块的“前镜像”,可用于将数据库返回到该时间点之前的状态。
恢复步骤如下:
1、关闭数据库。
2、启动并装载数据库,可以使用 SCN、Oracle 时钟或时间戳发出闪回数据库命令。
3、以 RESETLOGS 选项打开数据库。
要使用这个特性,必须采用 ARCHIVELOG 模式,而且必须配置为支持 FLASHBACK DATABASE 命令。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-252184-1-1.html 上篇帖子: 解决问题:Asianux3下Oracle 10g无法启动 下篇帖子: 针对 Eclipse DTP 的 Oracle 数据库插件入门
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表