当前位置:文档之家› oracle的基表指南

oracle的基表指南

oracle的基表指南
oracle的基表指南

dba_开头

dba_users 用户信息

dba_segments 表段信息

dba_extents 数据区信息

dba_objects 数据库对象信息

dba_tablespaces 数据库表空间信息

dba_data_files 数据文件设置信息

dba_temp_files 临时数据文件信息

dba_rollback_segs 回滚段信息

dba_ts_quotas 用户表空间配额信息

dba_free_space 数据库空闲空间信息

dba_profiles 数据库用户资源限制信息

dba_sys_privs 用户的系统权限信息

dba_tab_privs 用户具有的对象权限信息

dba_col_privs 用户具有的列对象权限信息

dba_role_privs 用户具有的角色信息

dba_audit_trail 审计跟踪记录信息

dba_stmt_audit_opts 审计设置信息

dba_audit_object 对象审计结果信息

dba_audit_session 会话审计结果信息

dba_indexes 用户模式的索引信息

user_开头

user_objects 用户对象信息

user_source 数据库用户的所有资源对象信息user_segments 用户的表段信息

user_tables 用户的表对象信息

user_tab_columns 用户的表列信息

user_constraints 用户的对象约束信息

user_sys_privs 当前用户的系统权限信息

user_tab_privs 当前用户的对象权限信息

user_col_privs 当前用户的表列权限信息

user_role_privs 当前用户的角色权限信息user_indexes 用户的索引信息

user_ind_columns 用户的索引对应的表列信息user_cons_columns 用户的约束对应的表列信息user_clusters 用户的所有簇信息

user_clu_columns 用户的簇所包含的内容信息user_cluster_hash_expressions 散列簇的信息v$开头

v$database 数据库信息

v$datafile 数据文件信息

v$controlfile 控制文件信息

v$logfile 重做日志信息

v$instance 数据库实例信息

v$log 日志组信息

v$loghist 日志历史信息

v$sga 数据库SGA信息

v$parameter 初始化参数信息

v$process 数据库服务器进程信息

v$bgprocess 数据库后台进程信息

v$controlfile_record_section 控制文件记载的各部分信息v$thread 线程信息

v$datafile_header 数据文件头所记载的信息

v$archived_log 归档日志信息

v$archive_dest 归档日志的设置信息

v$logmnr_contents 归档日志分析的DML DDL结果信息

v$logmnr_dictionary 日志分析的字典文件信息

v$logmnr_logs 日志分析的日志列表信息

v$tablespace 表空间信息

v$tempfile 临时文件信息

v$filestat 数据文件的I/O统计信息

v$undostat Undo数据信息

v$rollname 在线回滚段信息

v$session 会话信息

v$transaction 事务信息

v$rollstat 回滚段统计信息

v$pwfile_users 特权用户信息

v$sqlarea 当前查询过的语句访问过的资源及相关的信息

v$sql与v$sqlarea基本相同的相关信息

v$sysstat 数据库系统状态信息

all_开头

all_users 数据库所有用户的信息

all_objects 数据库所有的对象的信息

all_def_audit_opts 所有默认的审计设置信息

all_tables 所有的表对象信息

all_indexes 所有的数据库对象索引的信息

session_开头

session_roles 会话的角色信息

session_privs 会话的权限信息

index_开头

index_stats 索引的设置和存储信息

伪表

dual 系统伪列表信息sql数据库

最重要的9个动态性能视图

v$session + v$session_wait (在10g里功能被整合,凑合算1个吧.)

v$process

v$sql

v$sqltext

v$bh (更宁愿是x$bh)

v$lock

v$latch_children

v$sysstat

v$system_event

按组分的几组重要的性能视图oracle

1. System 的over view

v$sysstat , v$system_event , v$parameter

2. 某个session 的当前情况

v$process , v$session , v$session_wait ,v$session_event , v$sesstat

3. SQL 的情况

v$sql , v$sqlarea , v$SQL_PLAN , V$SQL_PLAN_STA TISTICS, v$sqltext_with_newlines

3. Latch / lock /ENQUEUE

v$latch , v$latch_children , v$latch_holder , v$lock ,V$ENQUEUE_STAT ,V$ENQUEUE_LOCK 4. IO 方面的

v$segstat , v$filestat , v$tempstat ,v$datafile , v$tempfile

5. shared pool / Library cache

v$Librarycache , v$rowcache , x$ksmsp

6. 几个advice也不错

v$db_cache_advice , v$PGA_TARGET_ADVICE, v$SHARED_POOL_ADVICE

oracle系统表和视图说明

1.视图的概述 视图其实就是一条查询sql语句,用于显示一个或多个表或其他视图中的相关数据。视图将一个查询的结果作为一个表来使用,因此视图可以被看作是存储的查询或一个虚拟表。视图来源于表,所有对视图数据的修改最终都会被反映到视图的基表中,这些修改必须服从基表的完整性约束,并同样会触发定义在基表上的触发器。(Oracle支持在视图上显式的定义触发器和定义一些逻辑约束) 2.视图的存储 与表不同,视图不会要求分配存储空间,视图中也不会包含实际的数据。视图只是定义了一个查询,视图中的数据是从基表中获取,这些数据在视图被引用时动态的生成。由于视图基于数据库中的其他对象,因此一个视图只需要占用数据字典中保存其定义的空间,而无需额外的存储空间。 3.视图的作用 用户可以通过视图以不同形式来显示基表中的数据,视图的强大之处在于它能够根据不同用户的需要来对基表中的数据进行整理。视图常见的用途如下: 通过视图可以设定允许用户访问的列和数据行,从而为表提供了额外的安全控制 隐藏数据复杂性 视图中可以使用连接(join),用多个表中相关的列构成一个新的数据集。此视图就对用户隐藏了数据来源于多个表的事实。 简化用户的SQL 语句 用户使用视图就可从多个表中查询信息,而无需了解这些表是如何连接的。 以不同的角度来显示基表中的数据 视图的列名可以被任意改变,而不会影响此视图的基表 使应用程序不会受基表定义改变的影响 在一个视图的定义中查询了一个包含4 个数据列的基表中的3 列。当基表中添加了新的列后,由于视图的定义并没有被影响,因此使用此视图的应用程序也不会被影响。 保存复杂查询 一个查询可能会对表数据进行复杂的计算。用户将这个查询保存为视图之后,每次进行类似计算只需查询此视图即可。

oracle 建立分区表

oracle 建立分区表 从上次在亚旭培训的时候,我和dba讨论一次我开发系统中为了一张表不是非常的大,采用了动态sql创建多个部门的表,然后存取相应的数据,从而解决了一张表过大的问题。当时dba和我说了分区表,我第一感觉,如果当时我知道数据库还有这种表,那我当时开发起来应该轻松的多,后来就一直有个想法,去了解分区表,因为最近自己一直都比较忙,被琐事所困,今天晚上终于抽出了点时间,了解了相关的知识,并做了400多w条数据的一个分区表的测试。 一.范围分区 范围分区将数据基于范围映射到每一个分区,这个范围是你在创建分区时指定的分区键决定的。 1 2 3 4 5 6 7 8 9 10 11 12 --例一取值范围: CREATE TABLE CUSTOMER ( CUSTOMER_ID NUMBER NOT NULL PRIMARY KEY, FIRST_NAME VARCHAR2(30) NOT NULL, LAST_NAME VARCHAR2(30) NOT NULL, PHONE VARCHAR2(15) NOT NULL, EMAIL VARCHAR2(80), STATUS CHAR(1) ) PARTITION BY RANGE (CUSTOMER_ID) (

13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 PARTITION CUS_PART1 VALUES LESS THAN (100000) TABLESPACE CUS_TS01, PARTITION CUS_PART2 VALUES LESS THAN (200000) TABLESPACE CUS_TS02, PARTITION CUS_PART3 VALUES LESS THEN(MAXVALUE) TABLESPACE CUS_TS02 ) --例二按时间划分(随着时间的增长,还需要添加分区表): CREATE TABLE ORDER_ACTIVITIES ( ORDER_ID NUMBER(7) NOT NULL, ORDER_DATE DATE, TOTAL_AMOUNT NUMBER, CUSTOTMER_ID NUMBER(7), PAID CHAR(1) ) PARTITION BY RANGE (ORDER_DATE) ( PARTITION ORD_ACT_PART01 VALUES LESS THAN (TO_DATE('01- MAY -2003','DD-MON-YYYY')) TABLESPACE ORD_TS01, PARTITION ORD_ACT_PART02 VALUES LESS THAN (TO_DATE('01-JUN-2003','DD-MON-YYYY')) TABLESPACE ORD_TS02, PARTITION ORD_ACT_PART03 VALUES LESS THAN (TO_DATE('01-JUL-2003','DD-MON-YYYY')) TABLESPACE ORD_TS03

数据库及Oracle基础知识培训自学教材试题_V1 0

Oracle初级试题 一、选择题(20% 不定项每题2分) 1.对于Oracle用户方案下,根据模式/映像,请选出不属于模式的对象(D) A.表B.索引C.视图D.约束 2.在客户端配置哪个文件,可以使客户端访问oracle server?(A) A.tnsnames.ora B.sqlnet.ora C.listener.ora D.init.ora 3.搜索列中的数据,但只记得部分字符串,通常可以用以下哪种运算?(C) A.in B.between C.like D.exists 4.如从表中删除了一条记录,以下哪个语句可以保存数据库中的改变?(B) A.savepoint B.commit C.rollback D.update 5.下面关于视图的说法,请选出正确的(ABCD) A.一个视图可以创建为只读 B.一个视图可以用来连接两张或更多的表而被创建 C.在视图中不能含有order by子句 D.在视图中不能含有group by子句 6.在select语句中包含了where子句,请问group by子句可以放在哪里?(D) A.where子句前面 B.from子句前面 C.order by子句后面 D.where子句后面 7.关于having子句,以下说法正确的是:(C) A.having与where相同 B.having用于单行条件查询 C.having用于已分组的条件查询 D.having子句必须紧跟在where子句后面使用 8.能够在外部表上进行的操作有:(A) A.select B.update C.insert D.delete 9.在更改索引的操作(alter index)中,以下哪些子句可以定期优化索引?(AC) A.rename B.coalesce C.rebuild D.deallocate unused 10.请选出能够产生锁的操作:(AB) A.select … for update B.commit C.rollback D.lock table 二、填充题(20% 每空4分) 1.数据库最常用的DML操作有SELECT、UPDATE 、DELETE 和INSERT 等(要求写出操作命令)。 2.假设有两个数据N1和N2,请用函数实现如下算法:当N1>N2时,返回“大于”; 当N1=N2时,返回“等于”;当N1N2 then Return ‘大于’;

oracle数据字典详解

学习笔记:oracle数据字典详解 --- 本文为TTT学习笔记,首先介绍数据字典及查看方法,然后分类总结各类数据字典的表和视图。然后列出一些附例。 数据字典系统表,保存在system表空间中。 由表和视图组成,由服务器在安装数据库时自动创建,用户不可以直接修改数据库字典,在执行DDL 语句时,oracle会自动修改。 记录一些表和视图(只读的),新建的表不要和这空间建在一起(9i以前的版本新用户建的表默认表空间为system,注意修改) --查询数据字典: select * from dictionary --数据字典导出方法: conn / as sysdba spool on spool c:\dic.txt select * from dictionary spool off 主要四部分: 1,内部RDBMS表:x$…… 2,数据字典表:……$ 3,动态性能视图:gv$……,v$…… 4,数据字典视图:user_……,all_……,dba_……

数据库启动时,动态创建x$,在X$基础上创建GV$,在GV$基础上创建V$X$表-->GV$(视图)--->V$(视图) +++ 一,内部RDBMS表x$……,例如:x$kvit,x$bh,x$ksmsp,x$ksppi和x$ksppcv 核心部分,用于跟踪内部数据库信息,维持DB的正常运行。 是加密命名的,不允许sysdba以外的用户直接访问,显示授权不被允许。最好不要修改. x$kvit=Kernel Layer Performance Layer V Information tables Transitory Instance parameter 数据库启动时,动态创建x$…… +++ 二,数据字典表……$,如tab$,obj$,ts$…… --用来存储表、索引、约束以及其他数据库结构的信息。 --创建数据库时通过脚本sql.bsq来创建,脚本:$oracle_home/rdbms/admin/sql.bsq +++ 三,动态性能视图gv$……,v$……,如V$parameter --记录了DB运行时信息和统计数据,大部分动态性能视图被实时更新以反映DB当前状态。 --数据库创建时建立的。 --只有sysdba可以直接访问。 --查看表v$fixed_view_definition(***),可以查看GV$和V$视图的创建语句。(oracle提供一些特殊视图,用来记录其他视图的创建方式,v$fixed_view_definition就是其中之一) --select view_definition from v$fixed_view_definition where view_name='V$FIXED_TABLE'; --gv$……=Global V$,在X$……基础上创建,是为了满足OPS环境(多个实例)的需要面产生的,可以返回多个实例的信息。

postgresql和oracle表分区对比

PostgreSQL和oracle表分区对比 PostgreSQL是开源数据库,完全免费,oracle是有强大厂商支持和维护的数据库,把这两个的表分区特性放在一起对比,似乎有些勉强。但对于我们多了解一些特性,在实际开发中可以更好地进行理性选择和快速入手。

总结,数据库的表分区特性优点很多,比如: 1、改善查询性能:对分区对象的查询可以仅搜索自己关心的分区,提高检索速度。

2、增强可用性:如果表的某个分区出现故障,表在其他分区的数据仍然可用; 3、维护方便:如果表的某个分区出现故障,需要修复数据,只修复该分区即可; 4、均衡I/O:可以把不同的分区映射到磁盘以平衡I/O,改善整个系统性能。 5、将很少用的数据可以移动到便宜的、慢一些地存储介质上。 这两种数据库的分区表都具有这些优点。 对比来说,Oracle的分区创建和管理更加方便,很多工作是由oracle的内部机制来实现的。postgreSQL的分区表其实是一个个实际存在的数据表,分区的创建和管理都需要我们用语言来控制,增加了应用人员的工作量。 但,由于oracle自身的“侵占式”硬盘存储,对过期数据进行清除时,即便是drop分区表,也不能直接释放硬盘空间,属于“占了就占了”,这个管理起来就比较麻烦,除非对每个分区表都建立各个独立的tablespace,放在独立的物理文件上,删除过期分区表时,可以同时drop tablespace including contents。而postgreSQL在truncate 分区表时,可以直接释放硬盘,会看到硬盘使用率下降了,这一点对硬盘资源紧张时,就非常好了。 两种数据库的分区表使用,各有利弊,但总的来说,比较偏向postgreSQL,毕竟硬盘有限。而且,oracle收费。 Ps,在数据量很大时,任何关系型数据库都有性能上的瓶颈,不属于我们这两种数据库分区表对比的范围了。 以上,是一些使用中的总结,还请达人们指教:)。

ORACLE AWR报告生成和分析

ORACLE AWR报告生成和分析 Automatic Workload Repository是10g引入的一个重要组件。在里面存贮着近期一段时间内,默认是7天,数据库活动状态的详细信息。 AWR报告是对AWR视图进行查询而得到的一份自动生成的报告。可以通过下面的脚本手工得到一份AWR报告。 exec dbms_workload_repository.create_snapshot; ... running the specified workload exec dbms_workload_repository.create_snapshot; @?/rdbms/admin/awrrpt 通过AWR和AWR报告,DBA可以容易地获知最近数据库的活动状态,数据库的各种性能指标的变化趋势曲线,最近数据库可能存在的异常,分析数据库可能存在的性能瓶颈从而对数据库进行优化。 AWR报告所有的数据来源于AWR视图,即以DBA_HIST_开头的所有系统表,Database Reference有对所有这些系统表的描述,这应该是Oracle官方对AWR报告的官方注释了。 而对于如何有效地去分析AWR报告,这可能更需要DBA经验的日积月累。 AWR的前身是Statspack,Statspack在10g和11g中也有提供,同时和AWR 一起做了同步更新,而且Statspack是公开源代码的,因此,关于Statspack的资料,还有Statspack的源代码,都是理解AWR的一个有用的辅助。 如果关注数据库的性能,那么当拿到一份AWR报告的时候,最想知道的第一件事情可能就是系统资源的利用情况了,而首当其冲的,就是CPU。 而细分起来,CPU可能指的是 ●OS级的User%, Sys%, Idle% ●DB所占OS CPU资源的Busy% ●DB CPU又可以分为前台所消耗的CPU和后台所消耗的CPU

Oracle 分区表的优点

ORACLE 表分区 表分区的好处和事处理 表分区描述 表分区(partition):表分区技术是在超大型数据库(VLDB)中将大表及其索引通过分区(patition)的形式分割为若干较小、可管理的小块,并且每一分区可进一步划分为更小的子分区(sub partition)。而这种分区对于应用来说是透明的。Oracle的表分区功能通过改善可管理性、性能和可用性,从而为各式应用程序带来了极大的好处。通常,分区可以使某些查询以及维护操作的性能大大提高。此外,分区还可以极大简化常见的管理任务,分区是构建千兆字节数据系统或超高可用性系统的关键工具。 分区功能能够将表、索引或索引组织表进一步细分为段,这些数据库对象的段叫做分区。每个分区有自己的名称,还可以选择自己的存储特性。每个分区都是一个独立的段(SEGMENT),可以存放到相同(不同)的表空间中。从数据库管理员的角度来看,一个分区后的对象具有多个段,这些段既可进行集体管理,也可单独管理,这就使数据库管理员在管理分区后的对象时有相当大的灵活性。但是,从应用程序的角度来看,分区后的表与非分区表完全相同,使用SQL DML 命令访问分区后的表时,无需任何修改。(对于高效率查询是有影响,主要差别是对某一分区数据时行查询时和对整体数据进行查询) 表分区的好处 通过对表进行分区,可以获得以下的好处: 1)增强可用性:如果表的某个分区出现故障,表在其他分区的数据仍然可用; 2)维护方便:如果表的某个分区出现故障,需要修复数据,只修复该分区即可; 3)均衡I/O:可以把不同的分区映射到磁盘以平衡I/O,改善整个系统性能; 4)改善查询性能:对分区对象的查询可以仅搜索自己关心的分区,提高检索速

linux上的sqlnet.ora限制IP访问

配置sqlnet.ora限制IP访问Oracle 与防火墙类似的功能,Oracle 提供限制与允许特定的IP或主机名通过Oracle Net来访问数据库。这个功能由sqlnet.ora配置文件来实 现。该文件通常$ORACLE_HOME/network/admin/ 目录下,与tnsnames.ora以及listener.ora位于同一路径。用法也比较简单。通过监听器的 限制,实现轻量级访问限制,比在数据库内部通过触发器进行限制效率要高。 1. 实现 通过在sqlnet.ora文件中增加下列记录来实现 tcp.validnode_checking = yes tcp.invited_nodes = (hostname1, hostname2,ip1,ip2) tcp.excluded_nodes = (10.103.11.17,hostname1,hostname2) 当使用invited_nodes时,则所有没有包含在invited_nodes值中的IP或主机将无法通过Oracel Net连接到数据库。而如果使用 excluded_nodes时,除了excluded_nodes值中列出的IP和主机不可访问之外,其余的节点都可以访问数据库。通常情况下,更倾向于使 用excluded_nodes参数。 2. 注意 使用excluded_nodes与invited_nodes的一些特性 不支持通配符的使用(如hostname不能写为svhs0*,IP地址不能写为 10.103.11.*) excluded_nodes与invited_nodes为互斥方式,要么使用前者,要么使用后者 如果tcp.invited_nodes与tcp.excluded_nodes都存在,则tcp.invited_nodes 优先 要将本地地址,或者Cluster群集其他节点的地址都加入到允许列表,否则监听器可能无法启动 修改之后,一定要重起监听或reload才能生效,而不需要重新启动数据库仅提供对TCP/IP协议的支持 3. 实战 -->使用tnsping demo92,连接正常 C:\>tnsping demo92 TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 25-JUN-2011 18:55:39

Oracle ERP常用系统表结构

PO模块常用表结构 表名: PO.PO_REQUISITION_HEADERS_ALL 说明: 采购请求 REQUISITION_HEADER_ID NUMBER PR头标识码 SEGMENT1VARCHAR2(20)PR号 ENABLE_FLAG VARCHAR2(1)使能标志(Y/N) AUTHORIZATION_STATUS VARCHAR2(25)批准标志(APPROVED/) TYPE_LOOKUP_CODE VARCHAR2(25)类型(PURCHASE) REQUIST_ID NUMBER请求标识码 CANCEL_FLAG VARCHAR2(1)取消标志(Y/N) TRANSFERRED_TO_OE_FLAG VARCHAR2(1)可否转入OE标志(Y/N) PREPARER_ID NUMBER准备人ID(可与HR.PER_PEOPLE_F.PERSON_ID关联) 表名: PO.PO_REQUISITION_LINES_ALL 说明: 采购请求明细 REQUISITION_LINE_ID NUMBER PR行ID REQUISITION_HEADER_ID NUMBER PR头ID LINE_NUM NUMBER栏目 LINE_TYPE_ID NUMBER行类别 CATEGORY_ID NUMBER归类标识码 ITEM_DESCRIPTION VARCHAR2(240)项目描述 UNIT_MEAS_LOOKUP_CODE VARCHAR2(25)单位 UNIT_PRICE NUMBER单价(已折为人民币) QUANTITY NUMBER数量 DELIVER_TO_LOCATION_ID NUMBER交货位置码(与HR.HR_LOCATIONS.LOCATION_ID关联)TO_PERSON_ID NUMBER收货人代码 SOURCE_TYPE_CODE VARCHAR2(25)来源类型 ITEM_ID NUMBER项目内码 ITEM_REVISION VARCHAR2(3)项目版本 QUANTITY_DELIVERED NUMBER已交付数量 SUGGESTED_BUYER_ID NUMBER建议采购员代码 ENCUMBERED_FLAG VARCHAR2(1)分摊标志 RFQ_REQUIRED_FLAG VARCHAR2(1) NEED_BY_DATE DATE需求日期(原始) LINE_LOCATION_ID NUMBER定位行标识码(为空时表示未生成PO) MODIFIED_BY_AGENT_FLAG VARCHAR2(1)被采购员更改标志(被拆分Y/NULL)

深入学习分区表及分区索引(详解oracle分区)

下载的,写的非常好,给大家分享下。 什么时候使用分区: 1、大数据量的表,比如大于2GB。一方面2GB文件对于32位os是一个上限,另外备份时间长。 2、包括历史数据的表,比如最新的数据放入到最新的分区中。典型的例子:历史表,只有当前月份的数据可以被修改,而其他月份只能read-only ORACLE只支持以下分区:tables, indexes on tables, materialized views, and indexes on materialized views 分区对SQL和DML是透明的(应用程序不必知道已经作了分区),但是DDL 可以对不同的分区进行管理。 不同的分区之间必须有相同的逻辑属性,比如共同的表名,列名,数据类型,约束; 但是可以有不同的物理属性,比如pctfree, pctused, and tablespaces. 分区独立性:即使某些分区不可用,其他分区仍然可用。 最多可以分成64000个分区,但是具有LONG or LONG RAW列的表不可以,但是有CLOB or BLOB列的表可以。 可以不用to_date函数,比如: alter session set nls_date_format='mm/dd/yyyy'; CREATE TABLE sales_range (salesman_id NUMBER(5), salesman_name VARCHAR2(30), sales_amount NUMBER(10), sales_date DATE) PARTITION BY RANGE(sales_date) ( PARTITION sales_jan2000 VALUES LESS THAN('02/01/2000'),

oracle大表分区

摘要:本篇文章介绍了ORACLE数据库的新特性—分区管理,并用例子说明使用方法。 关键词:ORACLE,分区 一、分区概述: 为了简化数据库大表的管理,ORACLE8推出了分区选项。分区将表分离在若干不同的表空间上,用分而治之的方法来支撑无限膨胀的大表,给大表在物理一级的可管理性。将大表分割成较小的分区可以改善表的维护、备份、恢复、事务及查询性能。针对当前社保及电信行业的大量日常业务数据,可以推荐使用ORACLE8的该选项。 二、分区的优点: 1 、增强可用性:如果表的一个分区由于系统故障而不能使用,表的其余好的分区仍然可以使用; 2 、减少关闭时间:如果系统故障只影响表的一部分分区,那么只有这部分分区需要修复,故能比整个大表修复花的时间更少; 3 、维护轻松:如果需要重建表,独立管理每个分区比管理单个大表要轻松得多; 4 、均衡I/O:可以把表的不同分区分配到不同的磁盘来平衡I/O改善性能;

5 、改善性能:对大表的查询、增加、修改等操作可以分解到表的不同分区来并行执行,可使运行速度更快; 6 、分区对用户透明,最终用户感觉不到分区的存在。 三、分区的管理: 1 、分区表的建立: 某公司的每年产生巨大的销售记录,DBA向公司建议每季度的数据放在一个分区内,以下示范的是该公司1999年的数据(假设每月产生30M的数据),操作如下: STEP1、建立表的各个分区的表空间: CREATE TABLESPACE ts_sale1999q1 DATAFILE ‘/u1/oradata/sales/sales1999_q1.dat’ SIZE 100M DEFAULT STORAGE (INITIAL 30m NEXT 30m MINEXTENTS 3 PCTINCREASE 0) CREATE TABLESPACE ts_sale1999q2 DATAFILE ‘/u1/oradata/sales/sales1999_q2.dat’ SIZE 100M DEFAULT STORAGE (INITIAL 30m NEXT 30m MINEXTENTS 3 PCTINCREASE 0)

oracle外部表

外部表介绍 ORACLE外部表用来存取数据库以外的文本文件(Text File)或ORACLE专属格式文件。因此,建立外部表时不会产生段、区、数据块等存储结构,只有与表相关的定义放在数据字典中。外部表,顾名思义,存储在数据库外面的表。当存取时才能从ORACLE专属格式文件中取得数据,外部表仅供查询,不能对外部表的内容进行修改(INSERT、UPDATE、DELETE操作)。不能对外部表建立索引。因为创建索引就意味着要存在对应的索引记录。而外部表其实在没有存储在数据库中。故在外部是无法建立索引的。如果硬要建立的话,则系统会提示“操作在外部组织表上不受支持”的错误提示。 Notice: 外部表是ORACLE 9i后引入的。 外部表特征 (1)位于文件系统之中(一定要在数据库服务器中,而不是其它网络路径),按一定格式分割, 例如@#$等,文本文件或者其他类型的文件可以作为外部表。 (2)对外部表的访问可以通过SQL语句来完成,而不需要先将外部表中的数据装载进数据库中。 (3)外部数据表都是只读的,因此在外部表不能够执行DML操作,也不能创建索引。 (4) ANALYZE语句不支持采集外部表的统计数据,应该使用DMBS_STATS包来采集外部表的统计数据。 (5)可以查询操作和连接。也可以并行操作。 (6)数据在数据库的外部组织,是操作系统文件。 (7)操作系统文件在数据库中的标志是通过一个逻辑目录来映射的。 外部表范例: 1:创建目录对象并授权

从9i开始,ORACLE数据库若需要存取文件系统,就必须使用目录对象,以相对路径方式存取文件,强化数据库的安全性。建立目录对象、授予权限。 SQL>CREATE OR REPLACE DIRECTORY DUMP_DIR AS '/oradata/exterltab'; 给用户授予指定目录的操作权限 SQL>GRANT READ,WRITE ON DIRECTORY DUMP_DIR TO ETL; 2:创建外部表 我创建了一个平面文件作为测试用例,如下所示,总共5条记录,其中一条错误记录[oracle@DB-Server exterltab]$ more student.data 10001@#$kerry@#$male@#$28@#$1 10002@#$jimmy@#$male@#$22@#$1 10003@#$ken@#$male@#$21@#$1 10004@#$merry@#$femal@#$20@#$1 this is a bad file CREATE TABLE EXTER_TEST ( ID NUMBER(5) , NAME VARCHAR(12) , SEX VARCHAR(8) , AGE NUMBER(3) , GRADE NUMBER(1) ) ORGANIZATION EXTERNAL ( type oracle_loader default directory dump_dir access parameters ( records delimited by newline fields terminated by'@#$' ) location ('student.data') );

Oracle常用数据字典表(系统表或系统视图)及查询SQL

Oracle常用数据字典表(系统表或系统视图)及查询SQL 2014年12月15日?数据库?共4187字?暂无评论?阅读861 次 文章目录 ?数据字典分类 ?dba_开头 ?user_开头 ?v$开头 ?all_开头 ?session_开头 ?index_开头 ?伪表 ?数据字典常用SQL查询 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的。比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信息的视图等。 数据字典系统表,保存在system表空间中。查询所有数据字典可用语句“select * from dictionary;”。 数据字典分类 数据字典主要可分为四部分: 1)内部RDBMS表:x$*,用于跟踪内部数据库信息,维持DB的正常运行。是加密命名的,不允许sysdba以外的用户直接访问,显示授权不被允许。

2)数据字典表:*$,如tab$,obj$,ts$等,用来存储表、索引、约束以及其他数据库结构的信息。 3)动态性能视图:gv$*,v$*,记录了DB运行时信息和统计数据,大部分动态性能视图被实时更新以反映DB当前状态。 4)数据字典视图:user_*、all_*、dba_*,在非Sys用户下,我们访问的都是同义词,而不是V$视图或GV视图。 数据库启动时,动态创建x$,在X$基础上创建GV$,在GV$基础上创建V$X$表-->GV$(视图)--->V$(视图)。 数据字典视图可分为静态数据字典视图和动态数据字典视图。 静态数据字典是指在用户访问数据字典时内容不会发生改变。这类数据字典主要是由表和视图组成,应该注意的是,数据字典中的表是不能直接被访问的,但是可以访问数据字典中的视图。 静态数据字典中的视图分为三类,它们分别由三个前缀够成:user_*(该用户方案对象的信息)、all_*(该用户可以访问的所有对象的信息)、dba_*(全部数据库对象的信息)。 动态数据字典是Oracle包含的一些潜在的由系统管理员如SYS维护的表和视图,由于当数据库运行的时候它们会不断进行更新,所以称它们为动态数据字典。这些视图提供了关于内存和磁盘的运行情况,所以我们只能对其进行只读访问而不能修改它们。Oracle中这些动态性能视图都是以v$开头的视图,比如v$access。 dba_开头 dba_users数据库用户信息

java工程师课程

课程内容: 一、WEB网页开发 1、HTML语言介绍和标记 2、HTML标记和CSS样式 3、CSS样式属性介绍 4、JAVA Script基础 5、JAVA Script对象 二、Java面向对象编程 1、Java工作原理 2、Java开发环境的搭建 3、标识符、关键字和数据类型 4、运算符号与表示式 5、流程控制 6、数组 7、面对对象的概念 8、类和对象 9、封装和访问控制 10、继承 11、多态 12、抽象类 13、接口 14、嵌套类 15、匿名内部类 16、面向对象与例子 17、异常处理 18、文件系统 19、字节流字符流的转换 20、字节流 21、字符集编码 22、对象流、压缩流、和随机访问流 23、枚举类型 24、集合类 25、多线程 26、AWT和SWING 27、鼠标事件和键盘事件 28、高级组件 29、Eclipse使用 30、Applet 31、网络编程 32、Java安全与反射 33、Java工具类增补 34、MYSQL的应用 35、SQL语句 36、PD数据库设计工具 37、JDBC 三、Java Web开发技术 1、WTP的安装与使用 2、Servlet与Servlet容器 3、Tomcat的安装与使用 4、Servlet容器Servlet API 5、HTTP通信协议 6、web浏览器与HIIP方法 7、Httpservlet与请求处理 8、Http请求分析与响应分析 9、Servlet生命周期 10、ServletConfig分析 11、ServletContext分析 12、请求传送(ServletRequest) 13、web应用与部署 14、监听器 15、过滤器基础 16、过滤器配置 17、过滤器应用与实例 18、使用URL重写管理会话 19、WEB应用安全 20、BASIC验证机制 21、DIGEST验证机制 22、FORM验证机制 23、SERVLETCONTEXT分析 24、SERVLET异常处理机制 25、SERVLET综合应用实例 26、JSP初探 27、JSP标准指令 28、JSP程序代码元素 29、JSP标准动作元素 30、JSP隐含变量 31、JSP与JAVABEAN 32、JSP异常处理机制 33、JSP静态、动态复用 34、自定义标签及其生命周期 35、标签库综合应用实例 36、JSP+SERVLET+JSTL+EL综合应用实例 37、设计模式初探 38、SCWCD涉及的设计模式 四、SSH集成开发技术 1、Oracle的基础 2、PLSQL 3、多表级联 4、JDBC高级数据库编程 5、XML基础 6、XML校验 7、XML解析 8、Struts入门介绍 9、Struts配置 10、Struts国际化 11、Struts验证框架 12、Struts异常处理 13、Struts标签库 14、Struts Tiles框架 15、综合应用实例 16、Web Work介绍 17、Struts2.0介绍 18、Hibernate入门介绍 19、Hibernate配置 20、Hibernate关联关系映射 21、Hibernate事务 22、Hibernate缓存 23、Hibernate高级配置 24、Spring入门介绍 25、Spring Bean和Beanfactory 26、Spring IOC 27、Spring AOP 28、Spring整合Struts 29、Spring+Struts应用实例 30、Spring整合Hibernate 31、声明式事务处理 32、Spring+Hibernate应用实例 33、Spring+Hibernate+Hibernate集成配 置 五、Oracle数据库管理技术 1、Oracle Database 10g:SQL 1)SQL语句的方式 2)基本SQL Select语句 3)过滤和排序 4)单行函数 5)多表查询 6)组函数 7)子查询 8)利用变量交互查询 9)创建和管理表 10)约束介绍 11)创建和管理视图 12)创建和管理序列 13)创建和管理索引 14)创建和管理同义词 15)控制用户访问 16)SET操作符 17)GROUP BY子句的增强 18)高级子查询 19)层次查询 20)Oracle外部表 2、Oracle Database 10g:PL/SQL 1)PL/SQL介绍 2)PL/SQL语句块结构 3)开发和运行环境 4)PL/SQL变量类型 5)变量声明 6)SQL控制结构 7)PL/SQL中的SQL 8)游标 9)错误处理 10)集合 11)创建过程、函数和包 12)创建和管理触发器 3、Oracle Database 10g Administration Workshop I 1)安装Oracle Database 10G软件 2)创建Oracle数据库 3)数据库接口 4)控制数据库 5)存储结构 6)管理用户 7)管理模式对象 8)管理数据 9)PL/SQL 10)Oracle 数据库安全性 11)Oracle Net Services 12)Oracle 共享服务器 13)性能监控 14)积极维护:目标 15)监控和管理撤消 16)监控和解决锁冲突 17)备份和恢复的概念 18)数据库备份 19)数据库恢复 4、Oracle Database 10g Administration Workshop II 1)使用全球化支持 2)确保Oracle 监听程序的安全性 3)启用分布式事务处理 4)配置Recovery Manager 5)使用Recovery Manager 6)诊断来源 7)从非关键性数据丢失中恢复 8)不完全恢复 9)闪回数据库 10)从用户错误中恢复 11)处理数据库损坏 12)优化Oracle 数据库 13)实施物化图 14)管理资源 15)使用计划程序自动执行任务 16)高级工具和技术 5、Oracle Database 10g 数据库Java开发 1)利用JDeveloper 10g进行工程开发 2)JDeveloper 10g中利用JDBC访问数据 库实例 3)利用JDeveloper 10g开发SQL、PL/SQL 和SQLJ 4)利用Java开发存储过程 5)基于JDeveloper 10g的Web应用开发 六、J2EE高级开发技术 1、UML 2、Webservice 3、J2EE设计模式 4、Weblogic开发 5、Jboss开发 6、会话Bean 7、实体Bean 8、消息Bean 9、J2EE服务 10、AJAX

ORACLE系统视图及表大全

总结ORACLE系统视图及表大全: dba_开头..... dba_users 数据库用户信息 dba_segments 表段信息 dba_extents 数据区信息 dba_objects 数据库对象信息 dba_tablespaces 数据库表空间信息 dba_data_files 数据文件设置信息 dba_temp_files 临时数据文件信息 dba_rollback_segs 回滚段信息 dba_ts_quotas 用户表空间配额信息 dba_free_space数据库空闲空间信息 dba_profiles 数据库用户资源限制信息 dba_sys_privs 用户的系统权限信息 dba_tab_privs用户具有的对象权限信息dba_col_privs用户具有的列对象权限信息dba_role_privs用户具有的角色信息 dba_audit_trail审计跟踪记录信息 dba_stmt_audit_opts审计设置信息 dba_audit_object 对象审计结果信息 dba_audit_session会话审计结果信息 dba_indexes用户模式的索引信息 user_开头 user_objects 用户对象信息 user_source 数据库用户的所有资源对象信息user_segments 用户的表段信息 user_tables 用户的表对象信息 user_tab_columns 用户的表列信息 user_constraints 用户的对象约束信息 user_sys_privs 当前用户的系统权限信息

user_tab_privs 当前用户的对象权限信息 user_col_privs 当前用户的表列权限信息 user_role_privs 当前用户的角色权限信息 user_indexes 用户的索引信息 user_ind_columns用户的索引对应的表列信息 user_cons_columns 用户的约束对应的表列信息 user_clusters 用户的所有簇信息 user_clu_columns 用户的簇所包含的内容信息 user_cluster_hash_expressions 散列簇的信息 v$开头 v$database 数据库信息 v$datafile 数据文件信息 v$controlfile控制文件信息 v$logfile 重做日志信息 v$instance 数据库实例信息 v$log 日志组信息 v$loghist 日志历史信息 v$sga 数据库SGA信息 v$parameter 初始化参数信息 v$process 数据库服务器进程信息 v$bgprocess 数据库后台进程信息 v$controlfile_record_section 控制文件记载的各部分信息v$thread 线程信息 v$datafile_header 数据文件头所记载的信息 v$archived_log归档日志信息 v$archive_dest 归档日志的设置信息 v$logmnr_contents 归档日志分析的DML DDL结果信息v$logmnr_dictionary 日志分析的字典文件信息 v$logmnr_logs 日志分析的日志列表信息 v$tablespace 表空间信息

ORACLE系统包介绍

Oracle 系统包 DBMS_OUTPUT a)启用 i. dbms_output.enable(buffer_size in integer default 20000); ii. set serveroutput on; b)禁用 i. dbms_output.disable; c)PUT和PUT_LINE i. PUT:所有信息显示在同一行 ii. PUT_LINE信息显示后,自动换行 d)NEW_LINE用于在行的尾部追加行结束符,一般用PUT同时使用 e)GET_LINE和GET_LINES i. DBMS_OUTPUT.GET_LINE(li ne 0UTVARCHAR2,status OUT INTEGER)用于取缓冲区的单行 信息 ii. DBMS_OUTPUT.GET_LINES(lines OUT chararr,numlies IN OUT INTEGER) 用于取得缓冲区的多行信息 DBMS_JOB a)SUBMIT用于建立一个新作业 语法 DBMS_JOB.SUBMIT( job OUT BINARY_INTEGER, what IN VARCHAR2, next_date IN DATE DEFATULT SYSDATE, interval IN VARCHAR2 DEFAULT ' NULL' , no_parse IN BOOLEAN DEFAULT FALSE, instance IN BINARY_INTEGER DEFAULT any_instance, force IN DEFAULT FALSE); 例子 VAR jobno NUMBER; BEGIN DBMS_JOB.SUBMI( :jobno, 'pro_hrs101d0_ins_hrs101t0', sysdate, ‘sysdate+1 '); b)REMOVE!于删除作业队列中的特定作业 语法:DBMS_JOB.REMOVE(jov IN BINARY_INTEGER); 例子:DBMS_JOB.REMOVE(10);--删除JOB号为10 的JOB c)CHANGE用于改变与作业相关的所有信息

相关主题
文本预览
相关文档 最新文档