- 浏览: 55972 次
- 性别:
- 来自: 北京
最近访客 更多访客>>
最新评论
-
yvonxiao:
这个的确好用,我记得我以前是自己写了个存储过程来解决这种递归问 ...
Oracle Start With Connect By
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、oracleonlinedocument,对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的教学用书,也就是STUDYGUIDE(SG)。Oracle8i 备份恢复手册Oracle8高级管理与优化Oracle8i PLSQL程序设计Oracle8数据库管理员手册以上书本都是机械工业出版社出版。
介绍几个网站http://tahiti.oracle.com oracle的官方文档
http://metalink.oracle.com/oracle的技术支持网站。需要购买Oracle服务才能有一个帐号,才能登陆,有大量的Knowledge Base,大量问题解决经验。
http://www.oracle.comoracle的官方网站,可以在这里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
一、定位
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、oracleonlinedocument,对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的教学用书,也就是STUDYGUIDE(SG)。Oracle8i 备份恢复手册Oracle8高级管理与优化Oracle8i PLSQL程序设计Oracle8数据库管理员手册以上书本都是机械工业出版社出版。
介绍几个网站http://tahiti.oracle.com oracle的官方文档
http://metalink.oracle.com/oracle的技术支持网站。需要购买Oracle服务才能有一个帐号,才能登陆,有大量的Knowledge Base,大量问题解决经验。
http://www.oracle.comoracle的官方网站,可以在这里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
发表评论
-
oracle 命令
2009-02-05 20:30 976一、ORACLE的启动和关闭 ... -
通过dbms_flashback找回误删除的数据收藏
2009-01-21 11:35 1342在使用DBMS_FLASHBACK时要首先注意以下几个事项: ... -
优化Oracle数据库性能收藏
2009-01-21 11:35 857优化策略 为了保 ... -
Oracle Start With Connect By
2009-01-21 11:33 1558Start With Connect By 是用来实现在一个 ... -
Oracle 表空间操作收藏
2009-01-21 11:32 997创建表空间: 1、递增 ... -
移动数据文件收藏
2009-01-21 11:32 726移动数据文件: 1、首先使要移动数据文件的表空间离线. ... -
Oracle 死锁会话处理收藏
2009-01-21 11:31 1137--查询所有的死锁: SELECT * FROM V$LOCK ... -
Oracle 9i 打开autotrace on 查看执行计划收藏
2009-01-21 11:31 13181.创建表,通过utlxplan脚本 SQL> @? ... -
如何启用sqlplus的AutoTrace功能收藏
2009-01-21 11:31 831通过以下方法可以把Autotrace的权限授予Everyone ... -
user和schema的区别:
2009-01-21 11:30 1016说穿了其实user是控制权限的,而schema是个容器,非所有 ... -
解决Oracle数据文件和日志文件丢失的问题收藏
2009-01-21 11:29 2079今天不小心误删除了数据库的数据文件和日志文件,在启动数据库时报 ... -
Oracle表段中的高水位线HWM收藏
2009-01-21 11:28 2600在Oracle数据的存储中, ... -
深入了解oracle的高水位(HWM)收藏
2009-01-21 11:26 2263说到HWM,我们首先要简要的谈谈ORACLE的逻辑存储管理.我 ... -
ORACLE 日志文件相关查询收藏
2009-01-21 11:25 11821.查询系统使用的是哪一组日志文件: select * fro ... -
ORACLE热备份恢复手册收藏
2009-01-21 11:22 2312概要 1.1. 本文的目的 为了模拟测试oracle热备份的 ... -
(转)windows命令行下启动oracle
2009-01-21 09:56 1500--总结启动命令如下: lsnrctl [start|stop ... -
小议分析函数中排序对结果的影响(一)
2009-01-12 13:24 895分析函数中经常会包括O ... -
ORACLE10g新特性——全局HASH分区索引
2009-01-12 13:23 1752在10g以前,Oracle的全局索引分区方法只有一种,即范围分 ... -
深入认识Oracle Supplemental logging
2008-12-22 18:35 3130对于有过逻辑standby,streams搭建体验的朋友,肯定 ... -
深入分析Oracle数据库日志文件
2008-12-22 15:19 971深入分析Oracle数据库日志文件 作者:程永新 发文时间: ...
相关推荐
Oracle DBA(数据库管理员)认证是Oracle公司提供的一项专业资格认证,旨在证明持证者具有管理和维护Oracle数据库系统的专业知识和技能。这个题库包含了Oracle DBA认证考试中可能遇到的各种问题,涵盖了数据库管理的...
Oracle DBA,全称为Oracle Database Administrator,是Oracle数据库系统的管理员,负责数据库的规划、安装、配置、维护和...记住,实践是最好的老师,理论知识结合实际操作才能让你真正成长为一名出色的Oracle DBA。
《大牛白鳝作品 老白Oracle DBA日志三部曲》是关于Oracle数据库管理的珍贵资料,由资深DBA“老白”撰写,旨在帮助读者深入理解和掌握Oracle数据库的核心技术。Oracle DBA(Database Administrator)是数据库管理的...
这个两日速成课程旨在让你快速掌握Oracle DBA的基本技能,但请记住,Oracle数据库管理是一个深度和广度都相当大的领域,真正的精通需要时间和实践经验的积累。在实践中不断学习和成长,你将成为一名出色的Oracle DBA...
Oracle DBA,即Oracle数据库管理员,是管理和维护Oracle数据库系统的...不过,需要注意的是,Oracle DBA是一个深度和广度都非常大的领域,两天的速成课程只能触及皮毛,真正精通Oracle DBA还需要大量的实践和时间积累。
在Oracle DBA两日速成课程中,虽然时间紧凑,但旨在为初学者提供一个快速掌握Oracle数据库基础和管理技能的平台。 在两天的课程中,你可能会接触到以下几个核心知识点: 1. **Oracle数据库基础知识**:了解Oracle...
"Oracle之DBA教程"是一个为新手量身定制的学习资源,旨在帮助初学者从零开始掌握Oracle数据库管理系统的各个方面,逐渐成长为一名合格的DBA(Database Administrator,数据库管理员)。本教程将覆盖安装、配置、性能...
Oracle DBA教程旨在帮助初学者理解Oracle数据库管理...通过实际操作数据库,处理各种问题,才能真正成为一名合格的Oracle DBA。在学习过程中,不断探索和实践,配合相关资源和社区的支持,将有助于深化理解和提升技能。
这个"Oracle DBA入门手册"显然旨在为初学者提供一个清晰的学习路径,帮助他们快速掌握Oracle数据库管理的基础知识。下面,我们将深入探讨Oracle DBA的核心职责以及相关的重要概念和技术。 首先,Oracle数据库是世界...
本书内容更涉及Oracle数据库的多个版本8i/9i/10g/11g 将Oracle的版本变化和功能改进 一以贯之地展现出来 让大家看到这些变革的真正原因以及Oracle的不断技术创新 通过真实案例的学习 更可以加深大家对现实环境的...
Oracle_Applications_DBA 系统概要及安装,真正掌握更多的知识
*以oracle公司提供的建议为主、关系型数据库的理论为辅,学习oracle数据库的工作原理。 *真正熟悉sga的内涵,进而提升oracle服务器的性能。 *像协奏曲那样,让oracle数据库相关文件彼此正常且有效率地分工协作。 *...
Oracle Universal Installer(简称OUI)是Oracle公司提供的一个图形用户界面工具,用于安装、更新和卸载Oracle产品。通过OUI,你可以轻松地管理安装在你的计算机上的所有Oracle软件,包括数据库服务器、应用服务器、...
### Oracle DBA 培训...通过上述内容的学习,读者不仅能够深入了解Oracle数据库的基本概念和技术细节,还能够掌握Oracle数据库安装配置、日常管理和故障排除等方面的知识,这对于成为一名合格的Oracle DBA至关重要。
- `|`:这是管道符号,用于连接两个命令,使前一个命令的输出作为后一个命令的输入。这样可以实现数据流的传递,便于命令间的复杂组合。 - `grep "ora_"`:这是一个文本搜索工具,用于从`ps -ef`的输出中筛选出包含...
Oracle 9i数据库管理员(DBA)是Oracle公司推出的一款重要的数据库管理系统,它在2001年发布,是Oracle数据库产品线中的一个重要版本。Oracle 9i DBA旨在提供高性能、高可用性和可伸缩性的数据库解决方案,适用于...
总之,Oracle 9i DBA的学习和实践是一个深度和广度并重的过程,需要扎实的理论基础,丰富的实践经验,以及不断适应新技术的敏捷思维。对于英语能力强的人来说,这份英文资料将是一份宝贵的资源,有助于提升在Oracle...
这个"Oracle学习资料包"显然为初学者提供了一个很好的起点,帮助他们踏入Oracle DBA(数据库管理员)的世界。Oracle DBA的工作主要包括数据库的设计、安装、配置、性能优化、备份与恢复等。 在Oracle的学习过程中,...
例如,书中给出的一个示例命令 `ps -ef | grep "ora_" | grep -v grep | awk '{print $2}' | xargs kill -9` 就是用来杀死所有 Oracle 进程的一个复合命令。 - **ps -ef**:列出系统上所有进程的信息。 - **grep ...