Oracle 的入门心得

oracle|心得

oracle的体系太庞大了,对于初学者来说,难免会有些无从下手的感觉,什么都想学,结果什么都学不好,所以把学习经验共享一下,希望让刚刚入门的人对oracle有一个总体的认识,少走一些弯路。
  
一、定位
oracle分两大块,一块是开发,一块是管理。开发主要是写写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。有点类似于程序员,需要有较强的逻辑思维和创造能力,个人觉得会比较辛苦,是青春饭J;管理则需要对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 Change Number):系统改变号,一个由系统内部维护的序列号。当系统需要更新的时候自动增加,他是系统中维持数据的一致性和顺序恢复的重要标志。
四、深入学习  
管理:可以考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这些),学会如何熟练使用这些工具。

介绍几本oracle入门的好书

oracle官方文档:《concept》上面讲了oracle的体系和概念,很适合初学者看。

OCP的教学用书,也就是STUDY GUIDE(SG)。
Oracle8i 备份恢复手册
Oracle8高级管理与优化
Oracle8i PLSQL程序设计
Oracle8数据库管理员手册
以上书本都是机械工业出版社出版。
  
介绍几个网站
http://tahiti.oracle.com oracle的官方文档
http://metalink.oracle.com/ oracle的技术支持网站。需要购买Oracle服务才能有一个帐号,才能登陆,有大量的Knowledge Base,大量问题解决经验。
http://www.oracle.com oracle的官方网站,可以在这里down oracle的软件、官方文档和获得最新的消息
http://www.dbazine.com/ Oracle的杂志
http://asktom.oracle.com  
http://www.orafaq.net/  
http://www.ixora.com.au/
http://www.oracle-base.com
http://www.dba-oracle.com/oracle_links.htm

时间: 2024-08-02 13:08:05

Oracle 的入门心得的相关文章

Oracle的入门心得

oracle|心得   Oracle的体系太庞大了,对于初学者来说,难免会有些无从下手的感觉,什么都想学,结果什么都学不好,所以把学习经验共享一下,希望让刚刚入门的人对Oracle有一个总体的认识,少走一些弯路. 一.定位     Oracle分两大块,一块是开发,一块是管理.开发主要是写写存储过程.触发器什么的,还有就是用Oracle的Develop工具做form.有点类似于程序员,需要有较强的逻辑思维和创造能力,个人觉得会比较辛苦,是青春饭:管理则需要对Oracle数据库的原理有深刻的认识,

Oracle 的入门心得 强烈推荐_oracle

一.定位 oracle分两大块,一块是开发,一块是管理.开发主要是写写存储过程.触发器什么的,还有就是用Oracle的Develop工具做form.有点类似于程序员,需要有较强的逻辑思维和创造能力,个人觉得会比较辛苦,是青春饭J:管理则需要对oracle数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会down掉整个数据库,相对前者来说,后者更看重经验. 因为数据库管理的责任重大,很少公司愿意请一个刚刚接触oracle的人去管理数据库.对于刚刚毕业的年轻人来说

Web前端新人笔记之jquery入门心得(新手必看)_jquery

本章将为大家介绍以下几点内容: 1.jquery的主要特点: 2.建立jquery的编码环境: 3.简单jquery脚本示例: 4.选择jquery而不是纯javaScript的理由: 5.常用的jquery开发工具:jquery能做什么? ① 取得文档中的元素 $('div.content').find('p'); ② 修改页面的外观 $('ul > li:first').addClass('active'); ③ 改变文档内容 $('#container').append('<a href

【云和恩墨】Oracle初学者入门指南-什么是 Metalink 或 MOS ?

Oracle初学者入门指南-什么是 Metalink 或 MOS ? Oracle | 2016-05-05 19:56 身为一个Oracle DBA,你可能经常看到老DBA们讲Metalink或者MOS,你必须知道这是什么. Metalink是Oracle的官方技术支持站点,其网址为: metalink.oracle.com ,后来变更为变更为:support.oracle.com, 命名为 My Oracle Support, 缩写为MOS,现在大家都称之为MOS了. Metalink的注册

VC++ Oracle开发入门

ORACLE 数据库以其优良的性能得到广泛的称赞.但是 ORACLE 客户端不像 SQL Server 能方便地连接到数据库.首先,要给客户机装一个 ORACLEL OLEDB 通讯软件,该软件可从如下地址获得: www.oracle.com 只有安装了此软件,客户机才可以和 ORACLE 服务器通讯.为什么 SQL Server 可以直接连到数据库呢,因为微软己经把"SQL Server 的通讯软件"集成到 Windows 中了.装好通讯软件,我们要进行配置才可以正确的连接到服务器.

初学Oracle的一点心得

        Oracle database是一款关系型数据库软件,功能很强大,但是涉及的知识面也特别庞杂,如果毫无头绪地扎进去猛冲猛撞,就算不头破血流,也很有可能吃尽苦头.以下是一些个人的心得体会,多是由老师和同学点拨而来.         其一,学会阅读英文文档.大量的第一手资料均是由英文写就,即使翻译水平再高有些技术细节也不没有阅读原文那样通俗易懂,同时随着自身水平的提高,单纯的百度无法满足自身学习和工作需要,如果不学会阅读英文文档,就会陷入一个瓶颈而无法突破.         其二,支

Oracle数据库入门之DDL与数据库对象

数据库对象 常见:表:存放数据的基本数据库对象,由行(记录)和列(字段)组成 约束条件:执行数据校验,保证数据完整性的系列规则 视图:表中数据的逻辑显示 索引:根据表中指定的字段建立起来的顺序,用于提高查询性能 序列:一组有规律的整数值 同义词:对象的别名 命名:必须以字母开头.可以包含字母.数据.下划线.$.# 同一方案(用户)下的对象不能重名.不能使用Oracle的保留字 补充:Oracle数据库中的表分为用户定义的表和数据字典表 用户定义的表:用户自己创建并维护的一组表,包含了用户所需的信

Oracle数据库入门之多表连接与子查询

Oracle表连接 概述:SQL/Oracle使用表连接从多个表中查询数据 格式:select 字段列表 from table1,table2 where table1.column1=table2.column2; 说明:当被连接的多个表中存在同名字段时,必须在该字段前加上"table."作为前缀 如果没有限定where连接条件,否则就会出现笛卡尔集的不现实或没有实用意义的结果 举例:select empno, ename, sal, emp.deptno, dname, loc f

Oracle数据库入门之函数/类型

Oracle主要数据类型 概述:各种数据库所支持的数据类型大同小异,与标准SQL语言中的数据类型可能略有出入 类型:varchar2:可以在声明字段时设置它的长度上限.而且使用它之后,就不必再考虑空格的存在 若插入的字符串的长度低于长度上限,系统就会自动将其缩减为字符串的真实长度 number(m,n):既可以用来表示整型,也可以表示浮点型.但m不可以超过38.如果n为0或者省略n,就代表它是整数 date:用来存放日期和时间 blob:通常是在应用程序中使用到它,而不是在数据库中利用SQL指令