编辑推荐
适读人群:适合初中级数据库专业技术人员阅读参考
《Oracle数据库备份、恢复与迁移》提供了Oracle数据库维护的全面指导,汇集了大型企事业单位的经典案例,是一线数据库专家的经验结晶,值得每一位Oracle数据库管理员仔细阅读。内容简介
《Oracle数据库备份、恢复与迁移》共分为九章。一章介绍了Oracle体系结构,即数据库实例的结构;第二章介绍数据库的物理结构和逻辑结构;第三章介绍Oracle的自动存储技术;第四章深入介绍了事务这个核心概念;第五章介绍数据迁移的常用方法;第六章介绍FLASHBACK技术;第七章介绍常规的备份/恢复方法;第八章介绍如何利用RMAN对数据库进行备份与恢复;第九章介绍RMAN工具的高级用法,如块介质恢复、数据库的跨平台迁移、数据库的复制等。目录
出版说明
前言
第1章Oracle体系结构1
1.1实例的结构2
1.1.1实例的概念2
1.1.2实例的组成3
1.2实例中的内存结构4
1.2.1数据库缓冲区缓存6
1.2.2重做日志缓冲区10
1.2.3共享池11
1.2.4Java池15
1.2.5固定SGA16
1.2.6PGA16
1.3前台进程和后台进程18
1.3.1前台进程19
1.3.2后台进程DBWR19
1.3.3后台进程LGWR20
1.3.4后台进程CKPT23
1.3.5后台进程SMON24
1.3.6后台进程PMON25
1.3.7后台进程ARCH25
1.3.8数据库的实例恢复26
1.4实例的内存空间管理28
1.4.1自动内存管理28
1.4.2自动共享内存管理29
1.4.3手工共享内存管理31
1.5数据库的连接模式32
1.5.1连接与会话32
1.5.2专用服务器连接模式34
1.5.3共享服务器连接模式35
1.5.4如何设置共享连接模式37
1.5.5数据库服务器的远程连接38
第2章数据库的物理结构和逻辑结构44
2.1数据库的逻辑结构44
2.1.1什么是表空间45
2.1.2什么是段46
2.1.3什么是区47
2.1.4什么是数据块47
2.2表空间与数据文件47
2.2.1什么是数据文件47
2.2.2数据库中默认存在哪些表空间48
2.2.3表空间的创建与删除50
2.2.4表空间的扩展52
2.2.5表空间状态的改变55
2.2.6数据文件的移动——一种简单的数据迁移56
2.2.7使用非标准块的表空间58
2.2.8临时表空间的管理59
2.2.9UNDO表空间的管理61
2.3段的空间管理62
2.3.1段的空间分配63
2.3.2段的空间回收66
2.4控制文件67
2.5重做日志文件68
2.5.1重做日志的产生过程69
2.5.2重做日志文件的查询70
2.5.3重做日志文件的创建71
2.5.4重做日志文件的删除72
2.6归档日志文件73
2.6.1归档日志文件的产生73
2.6.2日志模式的切换74
2.6.3归档路径的设置75
2.7数据库中的事务78
2.7.1与事务有关的数据库结构79
2.7.2事务与备份/恢复的关系79
2.8数据库中的其他文件80
2.8.1口令文件80
2.8.2参数文件83
2.8.3警告文件与跟踪文件85
2.9数据字典视图与动态性能视图86
2.9.1数据字典视图86
2.9.2动态性能视图87
2.10数据库服务器的启动和关闭88
2.10.1数据库服务器的启动88
2.10.2数据库服务器的关闭90
2.11Oracle12C在数据库结构方面的变化92
2.11.1什么是CDB93
2.11.2关于CDB中的用户94
2.11.3关于CDB中的数据字典视图95
2.11.4关于CDB中的文件96
2.11.5关于数据库的备份与恢复96
2.11.6关于数据库的迁移97
第3章自动存储管理(ASM)100
3.1ASM实例的管理101
3.1.1ASM实例与ASM磁盘组的关系101
3.1.2ASM实例的创建103
3.1.3ASM实例中的用户105
3.2ASM磁盘组的管理106
3.2.1ASM磁盘组的结构106
3.2.2ASM磁盘组的创建109
3.2.3ASM磁盘组的扩展112
3.2.4ASM磁盘组的重新平衡113
3.2.5ASM磁盘组的挂载和卸载114
3.2.6ASM磁盘组的文件模板管理115
3.2.7ASM磁盘组的目录管理117
3.2.8ASM磁盘组的应用118
3.2.9关于ASM磁盘组的兼容性属性120
3.3自动文件管理121
3.3.1如何激活自动文件管理功能122
3.3.2文件的命名规则122
3.3.3如何创建OMF数据库123
3.3.4如何创建OMF表空间125
3.3.5如何创建OMF控制文件126
3.3.6如何创建OMF重做日志文件126
3.4命令行工具ASMCMD的用法127
3.4.1如何通过ASMCMD管理ASM实例127
3.4.2如何通过ASMCMD管理ASM磁盘组130
3.4.3如何通过ASMCMD管理磁盘组中的文件133
3.5ASM磁盘组中的卷管理135
3.5.1ADVM卷的创建与删除136
3.5.2ADVM卷信息的查询137
3.5.3ADVM卷的扩展138
3.5.4ADVM卷的激活与关闭138
3.6ACFS文件系统管理139
3.6.1ASM磁盘组中文件系统的管理139
3.6.2ACFSUTIL工具的用法141
第4章再议事务143
4.1什么是事务143
4.1.1事务的属性143
4.1.2事务处理方法144
4.2与备份恢复有关的存储结构147
4.2.1快速恢复区148
4.2.2UNDO表空间148
4.3事务一致性的维护151
4.3.1数据库中的锁151
4.3.2事务的隔离级别153
4.3.3系统锁158
4.3.4死锁159
第5章数据库的FLASHBACK技术161
5.1快速恢复区的设置161
5.2回收站在防止误删除方面的作用162
5.3表的FLASHBACK查询165
5.4表的FLASHBACK166
5.5更久远的FLASHBACK——TotalRecall168
5.6数据库的FLASHBACK171
第6章数据库的常规备份与恢复174
6.1备份与恢复的相关概念174
6.1.1冷备份与热备份174
6.1.2物理备份与逻辑备份175
6.1.3完全备份与增量备份175
6.1.4完全恢复与不完全恢复175
6.1.5日志模式对备份与恢复的影响176
6.1.6哪些情况将导致数据丢失176
6.1.7哪些文件需要备份178
6.1前言/序言
前言 随着IT技术的迅猛发展,虚拟化、云计算、大数据等新技术风起云涌。然而,在普通用户眼中,这些高端、大气、上档次的技术似乎离大众很遥远,因为大家只是直观地感觉到,手机、电脑的使用越来越简单和方便,而不是越来越复杂。实际上,大家手里的手机和电脑只是终端设备,它们通过网络调用后台的服务,而云计算等技术就是应用于后台服务的。用户端应用的简单化,将使后台服务的维护难度成倍增加。 无论IT技术如何发展,数据总是一个应用系统的核心,毫不夸张地说,数据就是一个企业的生命。为了保证数据的安全,企业总要采用各种硬件、软件以及新技术,比如把重要的数据存放在磁盘阵列这样的存储设备中,并且对硬盘划分RAID,这样可以防止硬盘损坏;对数据库服务器创建集群,这样可以有效防止服务器本身出现故障;通过防火墙防止外部用户的非法访问;通过DataGuard/GoldenGate软件实现数据库的异地容灾,这样可以防止数据库所在建筑物遭遇水灾、火灾、战争等毁灭性打击。 数据往往被存储在数据库中,所以数据的安全一般都是在数据库这一层面得到保证的。 无论数据库的安全保护措施多么完善,数据的备份都是不能忽略的,它是一种常规的数据容灾措施。备份意味着把重要的数据复制到磁带等存储设备中,而恢复意味着把数据重新复制到它最初所在的存储位置。备份的目的,是防止数据库服务器出现硬件故障、人为破坏等灾难性后果。一旦这样的情况发生,利用备份,管理员可以对数据进行恢复,从而使这些重要的数据重新产生。另外,随着技术的发展以及系统规模的扩展,数据库服务器所在的硬件、软件环境经常面临着升级的要求,例如,把数据从单机环境升级到集群环境,把PC服务器升级为小型机服务器,更换存储设备等。企业在对数据库进行升级改造时,必须对其中的数据进行迁移。数据库的这些维护任务,是数据库管理员们必须完成的。 IT工程师现在有一个诙谐而可爱的绰号——“攻城狮”。然而,在实际的数据库维护过程中,工程师们并不像雄狮那样勇往直前,而是“战战兢兢,汗不敢出”,如果维护过程出现意外,往往“战战兢兢,汗如雨下”。他们之所以这样小心谨慎,是因为数据丢失是任何人都无法承担的严重后果。 Oracle公司提供了多种多样的方法用于数据库的备份、恢复与迁移,但是这些方法如何使用,在什么场合使用,往往令管理员感到困惑。实际情况是,许多数据库管理员每天都非常辛勤地对数据库进行备份,备份并没有经过测试,经不起时间的考验。企业的数据库可能在很长一段时间内并没有出现故障,所以管理员并不知道,手头的备份能不能用来解决实际问题。数据库一旦真的出现各种故障,管理员会悲哀地发现:数据真的丢失了,而且无法恢复。 对于Oracle提供的方法,数据库管理员既要知其然,还要知其所以然,针对数据库制定完善的备份策略,然后按照既定的策略对数据库进行备份,这样才能真正保证数据库的安全,就像宋朝大文豪苏轼所说:“故画竹,必先得成竹于胸中”。 《Oracle数据库备份、恢复与迁移》的编写目的,并不在于简单介绍Oracle所提供的备份、恢复与迁移方法,而是告诉大家,在什么情况下使用什么方法,为什么使用这样的方法。 “工欲善其事,必先利其器”。数据库维护任务并不是单独存在的。为了更好地管理数据库,管理员必须深刻掌握实例和数据库的结构,就像汽车工程师必须熟悉汽车的结构一样。 为此,《Oracle数据库备份、恢复与迁移》用两章篇幅介绍了Oracle体系结构(即实例的结构)以及数据库的物理结构和逻辑结构。同时,管理员需要掌握一些判断数据库故障的有效方法,《Oracle数据库备份、恢复与迁移》在多个章节中对这些方法进行了详细的描述。 从内容安排上来看,《Oracle数据库备份、恢复与迁移》共分为九章。第1章介绍了Oracle体系结构,即数据库实例的结构,同时分析了与备份/恢复有关的内存结构;第2章介绍数据库的物理结构和逻辑结构,同时告诉读者,哪些文件需要进行备份及恢复;第3章介绍Oracle的自动存储技术,即ASM;第4章深入介绍事务这个核心概念,同时分析数据库的备份、恢复与事务的关系;第5章介绍FLASHBACK技术,利用这种技术,能够把数据库恢复到过去的某个时间点;第6章介绍数据库的常规备份/恢复方法,重点介绍与备份/恢复有关的概念;第7章介绍如何利用RMAN对数据库进行备份与恢复,读者只要掌握本章介绍的内容,就能对数据库进行日常的备份与恢复;第8章介绍RMAN工具的高级用法,如块介质恢复、数据库的跨平台迁移、数据库的复制等;第9章介绍数据迁移的常用方法,包括数据泵、外部表、数据库链接以及SQL*Loader。 由于《Oracle数据库备份、恢复与迁移》涉及多个操作系统及多种管理工具,为避免混乱,同时避免重复介绍,在此单独列出常见的命令提示符。 C:\>Windows系统的命令提示符#UNIX/Linux系统中root用户的shell提示符$UNIX/Linux系统中oracle或者grid用户的shell提示符SQL>SQL*Plus工具的提示符RMAN>RMAN工具的提示符ASMCMD>ASMCMD工具的提示符