oracle初学心得(转)

一篇不错的学习指导文章,大家也来看看。
Oracle的体系太庞大了,对于初学者来说,难免会有些无从下手的感觉,什么都想学,结果什么都学不好,所以把学习经验共享一下,希望让刚刚入门的人对Oracle有一个总体的认识,少走一些弯路。
一、定位
Oracle 分两大块,一块是开发,一块是管理。开发主要是写写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。有点类似于程序员,需要有较强的逻辑思维和创造能力,个人觉得会比较辛苦,是青春饭;管理则需要对Oracle数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会down掉整个数据库,相对前者来说,后者更看重经验。
因为数据库管理的责任重大,很少公司愿意请一个刚刚接触Oracle的人去管理数据库。对于刚刚毕业的年轻人来说,可以先选择做开发,有一定经验后转型,去做数据库的管理。当然,这个还是要看人个的实际情况来定。
二、学习方法
我的方法很简单,就是:看书、思考、写笔记、做实验、再思考、再写笔记。
看完理论的东西,自己静下心来想想,多问自己几个为什么,然后把所学和所想的知识点做个笔记;在想不通或有疑问的时候,就做做实验,想想怎么会这样,同样的,把实验的结果记下来。思考和做实验是为了深入的了解这个知识点。而做笔记的过程,也是理清自己思路的过程。
学习的过程是使一个问题由模糊到清晰,再由清晰到模糊的过程。而每次的改变都代表着你又学到了一个新的知识点。
学习的过程也是从点到线,从线到网,从网到面的过程。当点变成线的时候,你会有总豁然开朗的感觉。当网到面的时候,你就是高手了。
很多网友,特别是初学的人,一碰到问题就拿到论坛上来问,在问前,你有没有查过书,自己有没有研究过,有没有搜索一下论坛?这就叫思维惰性。由别人来回答你的问题,会让你在短时间内不费劲地弄懂这个知识点,然而通过自己的努力去研究它,不但会更深入的了解这个知识点,更重要的是在研究的过程会提高你解决问题和分析问题的能力。总的来说,没有钻研的学习态度,不管学什么东西,都不会成功的。
当然,初学的人很多时候是因为遇到问题时,无从下手,也不知道去哪里找资料,才会到论坛上提问题的。但我认为,在提问的时候,是不是可以问别人是如何分析这个问题?从哪里可以找到相关的资料?而不是这个问题的答案是什么?授人以鱼不如授人以渔。
下面我讲下我处理问题的过程
首先要知道Oracle的官方网站:www.oracle.com 这里有Oracle的各种版本的数据库、应用工具和权威的官方文档。其次,还要知道http://metalink.oracle.com/这里是买了 Oracle服务或是oracle的合作伙伴才可以进去的,里面有很多权威的解决方案和补丁。然后就是一些著名网站:asktom.oracle.com www.orafaq.net, www.dbazine.com。这里有很多经验之谈。
遇到问题了。如果是概念上的问题,第一时间可以找tahiti.oracle.com,这里会给你最详细的解释。如果在运行的过程中出了什么错误。可以去metalink看看。如果是想知道事务的处理的经验之谈。可以去asktom。当然。这里只是相对而言。
三、Oracle的体系
Oracle的体系很庞大,要学习它,首先要了解Oracle的框架。在这里,简要的讲一下Oracle的架构,让初学者对Oracle有一个整体的认识。
1、物理结构(由控制文件、数据文件、重做日志文件、参数文件、归档文件、密码文件组成)
控制文件:包含维护和验证数据库完整性的必要信息、例如,控制文件用于识别数据文件和重做日志文件,一个数据库至少需要一个控制文件.
数据文件:存储数据的文件.
重做日志文件:含对数据库所做的更改记录,这样万一出现故障可以启用数据恢复。一个数据库至少需要两个重做日志文件.
参数文件:定义Oracle例程的特性,例如它包含调整SGA中一些内存结构大小的参数.
归档文件:是重做日志文件的脱机副本,这些副本可能对于从介质失败中进行恢复很必要。
密码文件:认证哪些用户有权限启动和关闭Oracle例程.
2、逻辑结构(表空间、段、区、块)
表空间:是数据库中的基本逻辑结构,一系列数据文件的集合。
段:是对象在数据库中占用的空间.
区:是为数据一次性预留的一个较大的存储空间.
块:ORACLE最基本的存储单位,在建立数据库的时候指定.
3、内存分配(SGA和PGA)
SGA:是用于存储数据库信息的内存区,该信息为数据库进程所共享。它包含Oracle 服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。
PGA:包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA 正相反PGA 是只被一个进程使用的区域,PGA 在创建进程时分配在终止进程时回收.
4、后台进程(数据写进程、日志写进程、系统监控、进程监控、检查点进程、归档进程、服务进程、用户进程)
数据写进程:负责将更改的数据从数据库缓冲区高速缓存写入数据文件
日志写进程:将重做日志缓冲区中的更改写入在线重做日志文件
系统监控:检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复
进程监控:负责在一个Oracle 进程失败时清理资源
检查点进程:负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。
归档进程:在每次日志切换时把已满的日志组进行备份或归档
服务进程:用户进程服务。
用户进程:在客户端,负责将用户的SQL语句传递给服务进程,并从服务器段拿回查询数据。
5、Oracle例程:Oracle例程由SGA内存结构和用于管理数据库的后台进程组成。例程一次只能打开和使用一个数据库。
6、SCN(System ChangeNumber):系统改变号,一个由系统内部维护的序列号。当系统需要更新的时候自动增加,他是系统中维持数据的一致性和顺序恢复的重要标志。
四、深入学习
管理:可以考OCP证书,对Oracle先有一个系统的学习,然后看Oracle Concepts、Oracle online document,对oracle的原理会有更深入的了解,同时可以开始进行一些专题的研究如:RMAN、RAS、STATSPACT、 DATAGUARD、TUNING、BACKUP&RECOVER等等。
开发:对于想做Oracle开发的,在了解完 Oracle基本的体系结构之后,可以重点关注PL/SQL及Oracle的开发工具这一部分。PL/SQL主要是包括怎么写SQL语句,怎么使用 Oracle本身的函数,怎么写存储过程、存储函数、触发器等。 Oracle的开发工具主要就是Oracle自己的Developer Suite(Oracle Forms Developer and Reports Developer这些),学会如何熟练使用这些工具。

posted on 2010-12-30 15:32 山|月 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/helife/archive/2010/12/30/1922171.html

oracle初学心得(转)相关推荐

  1. 学python心得体会500字-Python初学心得体会

    首先分别搭建在Linux和Windows下的python环境,这里有一个小的麻烦,就是在Windows的浏览器使用jupyter时,需要在Linux中python家目录中将防火墙服务打开,否则无法打开 ...

  2. 学python心得体会800字-Python初学心得体会

    首先分别搭建在Linux和Windows下的python环境,这里有一个小的麻烦,就是在Windows的浏览器使用jupyter时,需要在Linux中python家目录中将防火墙服务打开,否则无法打开 ...

  3. Python初学心得体会

    初学程序编程对于一个没学过程序的小白来说是一个很大的挑战! 首先分别搭建在Linux和Windows下的python环境,这里有一个小的麻烦,就是在Windows的浏览器使用jupyter时,需要在L ...

  4. 初学python的体会心得-python初学心得

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! python 是一门编程语言,任何编程语言从一开始就离不开动手实践,光靠看书.看视 ...

  5. Oracle入门心得(2)

    来历:网海拾贝 三.Oracle的体系    Oracle的体系很重大,要进修它,起首要了解Oracle的框架.在这里,扼要的讲一下Oracle的架构,让初学者对Oracle有一个集团的观念. 1.物 ...

  6. PHP基础班初学心得:脑洞实验-JS变量存储函数与return的一些问题

    本人刚参加PHP基础班培训第一天,由于之前毫无基础,分享的心得可能不规范,方法也许也"旁门左道",不能保证质量,只作自己总结学习,也希望能帮助到同样是初学者的朋友们,共同进步. 在 ...

  7. jq 批量删除 php,PHP基础班初学心得:用JQ实现表单的全选、反选、取消和删除功能...

    摘要: 本人刚参加PHP基础班培训,由于之前毫无基础,分享的心得可能不规范,方法也许也"旁门左道",不能保证质量,只作自己总结学习,也希望能帮助到同样是初学者的朋友们,共同进步. ...

  8. oracle讲座心得1000字,教育讲座心得体会(精选8篇)

    教育讲座心得体会(精选8篇) 我们有一些启发后,应该马上记录下来,写一篇心得体会,它可以帮助我们了解自己的这段时间的学习.工作生活状态.怎样写好心得体会呢?以下是小编为大家整理的教育讲座心得体会(精选 ...

  9. 对oracle的心得体会,学习心得征文活动精选一:Oracle学习的心得体会

    详情: 经常遇到朋友问oracle学习难不难,怎么才能成为高手等等,我想结合我的个人经验简单说几点: 1.打好基础,由浅入深 学习Oracle不能急于求成,寄希望于一天成为一个大侠.学习有个过程,应该 ...

  10. mediawiki初学心得及使用方法

    一.mediawiki简介及下载地址 MediaWiki全球最著名的开源wiki程序,运行于PHP+MySQL环境.MediaWiki从2002年2月25日被作为维基百科全书的系统软件,并有大量其他应 ...

最新文章

  1. pandas如何读取一个文件夹下的所有文件
  2. 从美国5家创企看AI创业方向:落地解决问题才是王道
  3. Android面试真题解析火爆全网,薪资翻倍
  4. ant java build_Ant--基于java的build工具
  5. Android应用开发:数据存储和界面展现-1
  6. 数据库时间字段排序问题
  7. 前端学习(1673):前端系列实战课程之最终封装
  8. MySQL 索引底层数据结构实现
  9. python mainloop作用_Tkinter中的mainloop应该如何理解?
  10. Java8新特性:接口
  11. rrt matlab算法,rrt算法matlab代码
  12. ideaIU--2018.2.2安装教程
  13. 《平凡的世界》(书评)
  14. python主进程 子进程_Python关闭主进程时关闭子进程
  15. linux屏幕怎么暗一点,Ubuntu 12.10 调节屏幕亮度经验分享
  16. 台式计算机怎么进入bios,小编告诉大家hp台式机怎么进bios
  17. SMARTS 动态问卷
  18. MASC: Multi-scale Affinity with Sparse Convolution for 3D Instance Segmentation
  19. 用C 绘制实时曲线图
  20. let 连续复制_要在Word中使用“格式刷”对同一个格式进行多次复制时,应先用鼠标()。...

热门文章

  1. linux扫描后台地址,Linux如何查看和控制进程
  2. org.gradle.api.tasks.compile.CompileOptions.setBootClasspath
  3. 世界语言共有4种书写方向
  4. 灵异事件很多,却没有平行宇宙
  5. VS编译NPAPI:error C2733:不允许重载函数 “NP_Initialize的第二个参数
  6. 编译OpenJDK12:a microsoft compiler is required
  7. 可以使用TrafficMonitor查看本机的网速情况
  8. fenking是什么意思?
  9. nginx php 5.5 安装,Nginx1.5与PHP5.5安装文档
  10. vs 配置 .pdb