最近学习oracle 的心得

      随着项目进入运行期,工作没有那么忙了。但是工作却变得更有挑战性。比如怎样应付服务器无法响应的问题,大数据量下查询速度变慢的问题,在不影响用户使用的情况下进行项目升级的问题,服务器安全的问题。面对问题自己成长的也比较快,收获颇多。

      在应对大数据量和数据安全方面,oracle 提供了如下功能 

             1. 分区表  ,可以将一个上百万级的大表进行拆分,分别存储于不同的文件中

             2. rman 热备份  , 之前一直在使用exp 进行数据备份,了解到rman 之后才真正知道什么叫做备份,oracle 提供了热备份,增量备份,基于scn和时间戳的不完全恢复。

             3. data guard ,翻译为数据卫士吧,主要功能就是提供一个或多个备份机,备份机和主服务器进行数据同步,在主服务器出现故障时可以将一个备份机切换成主服务器的角色,继续提供服务。data guard 还有一个功能就是可以将备份机用作查询服务器,比如报表的生成。备份机有两种实现方式,主要是物理备份和逻辑备份,可以将逻辑备份服务器打开为只读状态,提供查询服务。

            4. oracle RAC 即oracle 集群, 这部分内容还没有看,等看了再详细解释吧

      这几天一直在做报表,以前的报表只是能够查询出数据,并没有考虑性能问题。随着数据量的加大,以前的报表跑不起了了,所以必须重新设计。为了解决报表的性能问题主要采取了几种策略(1)定时生成报表,项目中是生成月报,也就是说每月生成一个报表。(2)使用存储过程生成报表,报表的数据统计用存储过程,减少数据服务器和应用服务器传输中间数据的网络成本,主要是在报表的生成过程中需要从原始数据中生成很多中间数据,再从中间数据计算生成最终的报表。(3)使用临时表,将报表生成过程中的临时数据存储于临时表中,减少对原始表的访问次数。此外还在报表的调试中第一次使用PL/SQL explain plan 进行查询分析和优化,PL/SQL的功能是如此的强大。

猜你喜欢

转载自xueweichao.iteye.com/blog/2247969
今日推荐