• 生活小妙招免费各类生活中的小问题知识以及音乐简谱等,是你了解世界未知知识的好地方。

自学Oracle数据库都要包含哪些方面?

十万个为什么 空空 2024-11-08 21:36:11 27次浏览

关于问题自学 Oracle 数据库都要包含哪些方面?一共有 5 位热心网友为你解答:

【1】、来自网友【GavinDjp】的最佳回答:

已经了解了 Oracle 基本语法,存储过程的编写。如果是要从事开发岗位,那再学习下 sql 调优,执行计划分析,分区(分库分表),job,分区基本就能得心应手了。如果是从事 DBA,运维工作,除了上述的外,还要在学习数据闪回,备份恢复,表空间管理,等待事件等。更重要的是要知道 Oracle 的原理,存储结构,机制等。比如进程管理,数据文件,日志文件,控制文件参数文件,知道 undo,redo 以及检查点日志归档原理,知道 SGA 和 PGA 的区别,了解锁机制,等待事件原理,share pool 和硬解析的关联等等,都需要从架构原理去学习。

近些年国家在推行国产化,去 IOE 日渐盛行,相比较于 oracle,MySQL 和 PG 已经部分国产数据,比如 OceanBase 等等已经逐渐成为主流,可以主要从锁机制,事务,备份恢复,分布式,sql 调优方面去学习,这些比较通用。

我是做运维的,以上是我的一些粗见。谢谢

【2】、来自网友【喵大大哩】的最佳回答:

作为一个开发工程师主要是掌握对 SQL 语句的使用,在应用系统开发初期,由于开发数据库数据比较少,对于查询 sql 语句,复杂试图的编写等体会不出 sql 语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要问题之一。系统优化中一个很重要的方面就是 sql 语句的优化。对于海量数据,劣质 sql 语句和优质 sql 语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地能实现其功能就行,而是要写出高质量的 sql 语句,提高系统的可用性。

  Oracle 的 sql 调优第一个复杂的主题,甚至需要长篇概论来介绍 OracleSQL 调优的细微差别。不过有一些基本的规则是每个 OracleDBA 都需要遵从的,这些规则可以改善他们系统的性能。

如果要学会优化 SQL 语句必须知道 SQL 语句在 ORACLE 当中的执行计划这个问题也是一个长篇大论我简要的说一下

通常一条 SQL 有多个执行计划,那我们如何选择?那种执行开销更低,就意味着性能更好,速度更快,我们就选哪一种,这个过程叫做 Oracle 的解析过程,然后 Oracle 会把更好的执行计划放到 SGA 的 Shared Pool 里,后续再执行同样的 SQL 只需在 Shared Pool 里获取就行了,不需要再去分析。

Oracle 提供了 6 种执行计划获取方法,各种方法侧重点不同:

选择时一般遵循以下规则:

1.如果 sql 执行很长时间才出结果或返回不了结果,用方法 1:explain plan for

2.跟踪某条 sql 最简单的方法是方法 1:explain plan for,其次是方法 2:set autotrace on

3.如果相关察某个 sql 多个执行计划的情况,只能用方法

4:dbms_xplan.display_cursor 或方法 6:awrsqrpt.sql4.如果 sql 中含有函数,函数中有含有 sql,即存在多层调用,想准确分析只能用方法 5:10046 追踪

5.想法看到真实的执行计划,不能用方法 1:explain plan for 和方法 2:set autotrace on

6.想要获取表被访问的次数,只能用方法 3:statistics_level = all

学会这些明白 SQL 语句如何执行,遵循怎样的执行计划最为重要。

其次就是要会 oracle 数据泵和 radmin 的使用,冷备、还原,以及常见的故障处理,部署调优,作为一个程序员其实都可以学习

Data Pump 从 oracledatabase 10g 开始引入了 data pump(数据泵)工具,它提供了一种基于服务器的数据导出导入使用程序。所有的 data pump 都作为一个服务器进程,数据不再必须由一个客户程序处理。Data Pump 工具的导出和导入实现 Oracle 数据库之间数据的传输。Data Pump 工具中包含 Data Pump Export 和 Data Pump Import,所使用的命令行客户程序为 expdp 和 impdp。

【注意】在 10g 之前,传统的导出导入分别使用 exp 工具和 imp 工具。从 oracle database 10g 开始,不仅保留了原有的 exp 和 imp 工具,还提供了数据泵导出导入工具 expdp 和 impdp。从 11g 开始,在传统的 export 和 import 应用程序中可用的任何特性在 data pump 中都可用。在使用 expdp 和 impdp 工具时,应该注意以下几点:1 exp 和 imp 是客户端工具程序,它们既可以在客户端使用,也可以在服务器端使用。2 expdp 和 impdp 是服务器工具程序,它们只能在 oracle 服务器端使用,不能再客户端使用。3 imp 只适用于 exp 导出的文件,不适用于 expdp 导出文件;impdp 只适用与 expdp 导出的文件,不适用于 exp 导出文件。data pump 导出导入所得到的文件跟传统的 import/export 应用程序导出导入的文件不兼容。

【pump 特点】

与原有的 export 和 import 使用程序相比,oracle 的 data pump 工具的功能特点如下:

1 在导出或者导入作业中,能够控制用于此作业的并行线程的数量。

2 支持在网络上进行导出导入,而不需要是使用转储文件集。

3 如果作业失败或者停止,能够重新启动一个 data pump 作业。并且能够挂起恢复导出导入作业。

4 通过一个客户端程序能够连接或者脱离一个运行的作业。

5 空间估算能力,而不需要实际执行导出。

6 可以指定导出导入对象的数据库版本。允许对导出导入对象进行版本控制,以便与低版本数据库兼容。

【pump 数据字典】

数据字典

说明 dba_datapump_jobs

显示运行数据泵作业的信息,也可以使用 user_datapump_jobs 变量 dba_datapump_sessions 提供数据泵作业会话级别的信息 datapump_paths

提供一系列有效的对象类型,可以将其与 export 或者 impdp 的 include 或者 exclude 参数关联起来 dba_directories

不过现在 oracle 的口碑也在走下坡路已经进入中国市场 30 年的甲骨文突然开始大裁员,且这波裁员来势极为凶猛,目前已经有 900 余人被迫离职,裁员幅度高达 60%,而且这还只是第一批。虽然因为裁员规模较大引起了人们的注意,但毕竟甲骨文给离职员工的补偿也较为良心,这件事也就慢慢过去了,但没想到不过几天的时间,网上曝出了甲骨文的老板曾经对中国发表过一些偏激的言论,表示中国是美国最大的竞争对手,要遏制中国,不能给中国培养出很多的工程师。

期待阿里、华为这样的大公司都已经优化改良了开源的数据库拥有自己的一套体系,希望能够出比 ORACLE 更加优秀的数据出来。在科技领域工作里面的你我他一起加油吧

【3】、来自网友【弈秋的美好生活】的最佳回答:

自学 Oracle 数据库需要涵盖许多方面,包括:

  1. 数据库基础知识,包括数据库管理系统(DBMS)的概念,数据库模型和数据库设计原则。
  2. Oracle 数据库的架构和功能,包括 Oracle 数据库的组件,如实例、内存结构和进程,以及 Oracle 数据库的基本功能,如数据存储、并发控制和安全管理。
  3. Oracle 数据库的管理与维护,包括数据库的日常管理,如数据库启动和关闭、数据库备份和恢复、监控和性能调优等。
  4. Oracle 数据库的 SQL 语言,包括 SQL 的基本语法、数据操作、数据定义和数据控制语句等。
  5. Oracle 数据库的高级功能,包括数据库的扩展功能,如数据库触发器、存储过程和视图等。
  6. Oracle 数据库的应用开发,包括数据库的应用程序开发方法,如 JDBC 和 ODBC 等,以及常见的应用程序开发工具,如 SQL*Plus 和 PL/SQL 等。

总之,自学 Oracle 数据库需要系统地学习数据库基础知识、Oracle 数据库的架构和功能、Oracle 数

【4】、来自网友【代码接盘侠】的最佳回答:

java 工程师,用的比较多的还是写些 sql,存储过程,触发器等等。看你介绍已经学习了存储过程了,可以看看 sql。包括 sql 的语法,内置的函数,自定义函数,可以根据些小例子试着练习(安装 pl/sql),sql 左连接,右连接,sql 的优化,提高 sql 查询的性能。

后面可以熟悉 oracle 的备份,用户权限管理等等,也是对自己技术提升也是比较有助的。

【5】、来自网友【唐戰杰】的最佳回答:

首先要学会安装卸载 oracl,学习基础的 SQL 编程, PL/SQL 编程

数据库的操作无非是增、删、改、查 多练习即可掌握

最后学习数据库的设计和 SQL 查询优化.和 SQL 基本操作

可编程的 PL_SQL

索引 存储过程 触发器 游标 包 视图 任务等等。这些知识我个人的看法你们有什么需要的还可以学习

以上就是关于问题【自学 Oracle 数据库都要包含哪些方面?】的全部回答,希望能对大家有所帮助,内容收集于网络仅供参考,如要实行请慎重,任何后果与本站无关!

喜欢 (0)