Oracle Database中DBA常用的表和视图
oracle数据库中的表与视图
oracle数据库中的表与视图Oracle数据库数据对象中最基本的是表和视图,其他还有约束、序列、函数、存储过程、包、触发器等。
对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数据库对象是学习Oracle的捷径。
表和视图Oracle中表是数据存储的基本结构。
ORACLE8引入了分区表和对象表,ORACLE8i 引入了临时表,使表的功能更强大。
视图是一个或多个表中数据的逻辑表达式。
本文我们将讨论怎样创建和管理简单的表和视图。
管理表表可以看作有行和列的电子数据表,表是关系数据库中一种拥有数据的结构。
用CREATE TABLE语句建立表,在建立表的同时,必须定义表名,列,以及列的数据类型和大小。
例如:CREATE TABLE products( PROD_ID NUMBER(4),PROD_NAME VAECHAR2(20),STOCK_QTY NUMBER(5,3));这样我们就建立了一个名为products的表,关键词CREATE TABLE后紧跟的表名,然后定义了三列,同时规定了列的数据类型和大小。
在创建表的同时你可以规定表的完整性约束,也可以规定列的完整性约束,在列上普通的约束是NOT NULL,关于约束的讨论我们在以后进行。
在建立或更改表时,可以给表一个缺省值。
缺省值是在增加行时,增加的数据行中某一项值为null时,oracle即认为该值为缺省值。
下列数据字典视图提供表和表的列的信息:. DBA_TABLES. DBA_ALL_TABLES. USER_TABLES. USER_ALL_TABLES. ALL_TABLES. ALL_ALL_TABLES. DBA_TAB_COLUMNS. USER_TAB_COLUMNS. ALL_TAB_COLUMNS表的命名规则表名标识一个表,所以应尽可能在表名中描述表,oracle中表名或列名最长可以达30个字符串。
表名应该以字母开始,可以在表名中包含数字、下划线、#、$等。
OracleDBA常用的系统表
OracleDBA常⽤的系统表1.2 DBA常⽤的表1.2.1 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 ⽤户模式的索引信息1.2.2 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 散列簇的信息1.2.3 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 当前查询过的sql语句访问过的资源及相关的信息 v$sql 与v$sqlarea基本相同的相关信息v$sysstat 数据库系统状态信息1.2.4 all_开头all_users 数据库所有⽤户的信息all_objects 数据库所有的对象的信息all_def_audit_opts 所有默认的审计设置信息all_tables 所有的表对象信息all_indexes 所有的数据库对象索引的信息1.2.5 session_开头session_roles 会话的⾓⾊信息session_privs 会话的权限信息1.2.6 index_开头index_stats 索引的设置和存储信息1.2.7 伪表dual 系统伪列表信息。
oracleEBS常用表,视图,会计分录,mtl_serial_numbers,总账
attribute7 --额外属性
)
VALUES (1,
'CREATE',
'*********',
'*********************',
***,
1,
'FG',
'Inactive',
'Tai',
''
);
2.通过API导入帐户别名接收
2.运行导入物料,选择相应的参数(处理集)
接口表导入示范:
INSERT INTO mtl_system_items_interface
(process_flag, --1为待处理,2为分配完成,3为异常,4为验证通过导入异常,5为导入过
程中,6为导入成功
transaction_type, --新分配物料则为CREATE,更新物料状态则为UPDATE
--记录接收的事务所产生的批次信息表
5、mtl_transaction_lot_numbers
--transaction_id=mtl_material_transactions.transaction_id
--lot_number=mtl_onhand_quantities.lot_number
item_number, --物料编码
description, --物料描述
organization_id, --需分配到的组织
set_process_id, --处理集,自己定义,届时在后续的导入物料的请求中作为参数
item_type, --物料类型
oracle系统表大全
ORACLE系统表大全1、用户:select username from dba_users;改口令alter user spgroup identified by spgtest;2、表空间:select *from dba_data_files;select *from dba_tablespaces;—-表空间select tablespace_name,sum(bytes),sum(blocks)from dba_free_spacegroup by tablespace_name;--空闲表空间select * from dba_data_fileswhere tablespace_name='RBS’;—-表空间对应的数据文件select * from dba_segmentswhere tablespace_name='INDEXS';3、数据库对象:select *from dba_objects;CLUSTER、DATABASE LINK、FUNCTION、INDEX、LIBRARY、PACKAGE、PACKAGE BODY、PROCEDURE、SEQUENCE、SYNONYM、TABLE、TRIGGER、TYPE、UNDEFINED、VIEW。
4、表:select * from dba_tables;analyze my_table compute statistics;—-dba_tables后6列select extent_id,bytes from dba_extentswhere segment_name=’CUSTOMERS’and segment_type=’TABLE’order by extent_id;-—表使用的extent的信息。
segment_type=’ROLLBACK'查看回滚段的空间分配信息列信息:select distinct table_namefrom user_tab_columnswhere column_name='SO_TYPE_ID';5、索引:select * from dba_indexes;--索引,包括主键索引select * from dba_ind_columns;—-索引列select i.index_name,i。
甲骨文深圳研发部oracle培训教材--Oracle9i_DBA_基础
常用数据字典视图
查询对象信息 tab,obj,dba_tables,dba_objects 查询数据库、实例的信息 v$database,v$instance 查询用户信息 dba_users、all_users 查询用户权限 dba_role_privs、dba_sys_privs 查询数据库的结构信息(表空间、数据文件、日志文件) dba_tablespaces、dba_data_files、v$logfile
归档重做日志文件
归档重做日志文件(Archive Log Files)也叫离线日志 文件。它是在线重做日志文件的拷贝。当数据库处于 ARCHIVELOG状态时,归档进程将拷贝已写满的(Filled)重 做日志文件到另一路径。归档日志文件主要用做数据库的恢 复。
数据库缺省被创建为NOARCHIVELOG模式 ORACLE建议数据库模式为ARCHIVELOG模式 归档模式的优点: 数据库在发生故障时,可以恢复到故障点(而不是备份点) 允许在线备份数据库
关闭数据库 使用操作系统的命令将现存的控制文件拷贝到不同的地方 编辑数据库初始化文件(initSID.ora)中的CONTROL_FILES 参数添加新 的控制文件名和位置。 4. 重新启动数据库 1. 2. 3.
删除控制文件
删除控制文件 用户可以从数据库中删除控制文件例如如果控制文件的位 置不合适或控制文件破坏时用户可能希望这样做。记住在任何 时候数据库建议至少有两个控制文件。
数据字典
数据字典的分类: 根据它们的前缀,数据字典可以分为如下类别: DBA_:这种视图提供数据库中所有对象的信息,有个owner列 如,dba_tables,dba_indexes ALL_:这种视图提供数据库中当前用户可以访问的对象的信息 如,all_tables,all_indexes USER_:这种视图提供用户拥有的对象信息 如,user_tables,user_indexes V$:这种视图又叫动态性能视图,因为它们为随着数据库的打 开和使用连续更新,而且它们的内容也和运行有关。 如,v$database,v$instance
oracle的dba_tab_columns语句用例
DBA_TAB_COLUMNS 是Oracle 数据库中的一个数据字典视图,它描述了数据库中所有表的列信息。
这个视图对于数据库管理员(DBA)来说非常有用,因为它提供了关于列名、数据类型、是否可以为NULL、列的默认值等详细信息。
以下是一些使用DBA_TAB_COLUMNS 视图的示例查询:查询指定表的列信息如果你想查询某个特定表(例如EMPLOYEES)的所有列信息,你可以使用以下SQL 语句:sqlSELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, DATA_LENGTH, NULLABLEFROM DBA_TAB_COLUMNSWHERE TABLE_NAME = 'EMPLOYEES'ORDER BY COLUMN_ID;注意:TABLE_NAME 通常是大写的,除非在创建表时使用了双引号指定了大小写。
2. 查询某个用户所有表的列数如果你想查询某个用户(例如HR)所有表的列数,你可以使用以下SQL 语句:sqlSELECT TABLE_NAME, COUNT(*) AS NUM_COLUMNSFROM DBA_TAB_COLUMNSWHERE OWNER = 'HR'GROUP BY TABLE_NAMEORDER BY TABLE_NAME;查询所有没有默认值的列如果你想查询某个用户所有没有默认值的列,你可以使用以下SQL 语句:sqlSELECT TABLE_NAME, COLUMN_NAMEFROM DBA_TAB_COLUMNSWHERE OWNER = 'HR' AND DATA_DEFAULT IS NULLORDER BY TABLE_NAME, COLUMN_ID;查询所有VARCHAR2 类型的列如果你想查询数据库中所有VARCHAR2 类型的列,你可以使用以下SQL 语句:sqlSELECT TABLE_NAME, COLUMN_NAME, DATA_LENGTHFROM DBA_TAB_COLUMNSWHERE DATA_TYPE = 'VARCHAR2'ORDER BY TABLE_NAME, COLUMN_ID;注意:在执行这些查询之前,确保你有足够的权限访问DBA_TAB_COLUMNS 视图。
oracle系统视图大全
DBA_2PC_NEIGHBORS 包含待处理事务进入连接和退出连接信息。
DBA_2PC_PENDING 包含等待恢复的分布式事务的信息。
DBA_ALL_TABLES 显示数据库中所有表(对象表和关系表)的描述。
DBA_ANALYZE_OBJECTS 列出分析对象。
DBA_ASSOCIATIONS 列出用户定义的统计信息。
DBA_AUDIT_EXISTS 列出由AUDIT NOT EXISTS(不存在审计)和AUDIT EXISTS(存在审DBA_AUDIT_OBJECT 包含系统中所有对象的审计跟踪记录。
DBA_AUDIT_SESSION 列出关于CONNECT(连接)和DISCONNECT(断开连接)的所有审讯跟踪记录。
DBA_AUDIT_STATEMENT 列出关于GRANT(授权)、REVOKE(取消)、AUDIT〔审计〕、NOAUDIT(不审计)和ALTER SYSTEM(改变系统)语句的审记跟踪记录。
DBA_AUDIT_TRAIL列出所有的审记跟踪条目。
DBA_BLOCKERS列出所有人等待一个会话持有的锁的所有会话,但并非它们自己在等待一个锁。
DBA_CATALOG 列出所有数据库表、视图、同义词和序列。
DBA_CLU_COLUMNS 列出表列到簇列的映射。
DBA_CLUSTER_HASH_expression_rS列出所有簇的散列(hash)函数。
DBA_CLUSTERS 包含数据库中所有族的描述。
DBA_COL_COMMENS 列出所有表和视图列的注解。
DBA_COL_PRIVS 列出数据库中授予列的所有权限。
DBA_COLL_TYPES 显示数据库中所有命名的集合类型,如VARRAY(数组)、嵌套表、对象表,等等;DBA_CONS_COLUMNS 包含在约束定义中的,可访问的列的信息DBA_CONSTRAINTS 包含所有表上的约束定义。
DBA_CONTEXT 列出所有上下文名字空间的信息。
Oracle数据库视图与基表的关系
Oracle数据库视图与基表的关系Oracle 数据库视图与基表的关系一:首先解释什么是视图:视图其实就是一条查询sql语句,用于显示一个或多个表或其他视图中的相关数据。
视图将一个查询的结果作为一个表来使用,因此视图可以被看作是存储的查询或一个虚拟表,与真实表不同,视图不会要求分配存储空间,视图中也不会包含实际的数据。
视图只是定义了一个查询,视图中的数据是从基表中获取,这些数据在视图被引用时动态的生成。
由于视图基于数据库中的其他对象,因此一个视图只需要占用数据字典中保存其定义的空间,而无需额外的存储空间,并且基表的变化会导致视图相应的改变。
二:视图的创建:CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW view_name [(alias[, alias]...)]AS subquery[WITH CHECK OPTION [CONSTRAINT constraint]][WITH READ ONLY]其中:OR REPLACE:若所创建的试图已经存在,Oracle自动重建该视图;FORCE:不管基表是否存在ORACLE都会自动创建该视图;NOFORCE:只有基表都存在ORACLE才会创建该视图:alias:为视图产生的列定义的别名;subquery:一条完整的SELECT语句,可以在该语句中定义别名可以挑选某个表中你需要的属性;WITH CHECK OPTION :插入或修改的数据行必须满足视图定义的约束;WITH READ ONLY :该视图上不能进行任何DML操作。
三:视图的修改:直接利用前边创建时的or replaece 重建即可。
四:视图上的DML 操作:1.一般简单视图,也就是基表只有一个的视图,是可以通过修改视图来修改基表的,Oracle是可以通过视图来修改Base table的。
所谓base table就是用来构建视图的表,也就是视图的数据来源表。
oracle查看所有表,视图,存储过程,序列
注意事项: 1. 必须以管理员身份登录; 2. sequence_owner必须为大写,不管你的用户名是否大写。只有大写才能识别。
--查看当前用户的所有序列 select SEQUENCE_OWNER,SEQUENCE_NAME from dba_sequences where sequence_owner='用户名';
--查询当前用户的序列总数 select count(*) from dba_sequences where sequence_owner='用户名'; select SEQUENCE_OWNER,SEQUENCE_NAME from dba_sequences where sequence_owner='PPNIE';
网络错误421请刷新页面重试持续报错请尝试更换浏览器或网络环境
oracle查 SELECT * FROM all_tables WHERE OWNER = '实例名称' ORDER BY table_name; 方法一: Select object_name From user_objects Where object_type='TRIGGER'; --所有触发器 Select object_name From user_objects Where object_type='PROCEDURE'; --所有存储过程 Select object_name From user_objects Where object_type='VIEW'; --所有视图 Select object_name From user_objects Where object_type='TABLE'; --所有表 方法二: 当然,还可以试试下面的语句 Select * From user_triggers; --所有触发器 Select * From user_procedures; --所有存储过程 Select * From user_views; --所有视图 Select * From user_tables; --所有表
oracledba_data_files视图字段说明
oracledba_data_files视图字段说明table DBA_DATA_FILES is 'Information about database data files';表DBA_DATA_FILES是数据库数据文件信息表;column DBA_DATA_FILES.FILE_NAME is 'Name of the database data file';列DBA_DATA_FILES.FILE_NAME是数据库数据文件的名字,也是物理文件存放地址;column DBA_DATA_FILES.FILE_ID is 'ID of the database data file';列DBA_DATA_FILES.FILE_ID 是数据库文件的ID;column DBA_DATA_FILES.TABLESPACE_NAME is 'Name of the tablespace to which the file belongs';列DBA_DATA_FILES.TABLESPACE_NAME 是所属表空间的名字;column DBA_DATA_FILES.BYTES is 'Size of the file in bytes';列DBA_DATA_FILES.BYTES是文件的大小,以bytes为单位;column DBA_DATA_FILES.BLOCKS is 'Size of the file in ORACLE blocks';列DBA_DATA_FILES.BLOCKS是ORACLE文件的大小;column DBA_DATA_FILES.STATUS is 'File status: "INVALID" or "AVAILABLE"';列DBA_DATA_FILES.STATUS是文件的状态:“无效”或者“有效”;column DBA_DATA_FILES.RELATIVE_FNO is 'Tablespace-relative file number';列column DBA_DATA_FILES.RELATIVE_FNO是表空间相对文件号;column DBA_DATA_FILES.AUTOEXTENSIBLE is'Autoextensible indicator: "YES" or "NO"';列DBA_DATA_FILES.AUTOEXTENSIBLE是否自动扩展;column DBA_DATA_FILES.MAXBYTES is 'Maximum size of the file in bytes';列DBA_DATA_FILES.MAXBYTES是文件的最大多少byte;column DBA_DATA_FILES.MAXBLOCKS is 'Maximum size of the file in ORACLE blocks';列DBA_DATA_FILES.MAXBLOCKS是ORACLE文件的最大数;column DBA_DATA_FILES.INCREMENT_BY is 'Default increment for autoextension';列DBA_DATA_FILES.INCREMENT_BY默认自动增量值;column DBA_DATA_ER_BYTES is 'Size of the useful portion of file in bytes';列DBA_DATA_ER_BYTES是指文件中有用的大小;column DBA_DATA_ER_BLOCKS is 'Size of the useful portion of file in ORACLE blocks';列DBA_DATA_ER_BLOCKS是指ORACLE文件有用的大小;column DBA_DATA_FILES.ONLINE_STATUS is 'Online status of the file';列DBA_DATA_FILES.ONLINE_STATUS是文件的在线状态;。
oracle dba_views 字段详解
Oracle中的DBA_VIEWS视图是一个数据字典视图,它包含了数据库中所有视图的信息。
以下是DBA_VIEWS视图中各个字段的详解:1. OWNER:视图的拥有者,即创建视图的用户或模式名。
2. VIEW_NAME:视图的名称。
3. TEXT_LENGTH:视图的定义文本的长度。
4. TEXT:视图的定义文本,即创建视图时使用的SQL语句。
这个字段可能非常长,因此在某些情况下可能无法完全显示。
5. VIEW_TYPE:视图的类型,可以是物化视图(MATERIALIZED)、分区视图(PARTITIONED)或其他类型。
6. SUPERVIEW_NAME:如果这个视图是基于其他视图创建的,那么这个字段将显示基础视图的名称。
否则,这个字段为空。
7. SUPERTYPE_NAME:视图所依赖的视图或物化视图的名称。
8. STATUS:视图的状态,可以是有效(VALID)、无效(INVALID)或未知(UNKNOWN)。
9. DEPTH:视图在视图层次结构中的深度。
顶层视图的深度为0,基于其他视图创建的视图的深度为1或更大的整数。
10. TIMESTAMP:视图最后被编译或验证的时间戳。
11. GENERATED:指示视图是否为生成的视图。
生成的视图是由系统自动创建的,通常是为了满足某些特定功能的需求。
12. LAST_DDL_TIME:视图上次被修改的时间。
13. TEMPORARY:指示视图是否为临时视图。
临时视图是在会话期间存在的,会话结束时将被删除。
14. GENERATE_SCHEMA:如果视图是生成的,这个字段将显示生成该视图的模式名。
否则,这个字段为空。
15. VIEW_REMARKS:关于视图的备注信息。
通过查询DBA_VIEWS视图,可以获取数据库中所有视图的详细信息,包括视图的定义、状态、创建时间等。
这对于数据库管理员来说是非常有用的,可以帮助他们了解数据库中视图的使用情况,以便进行优化和管理。
oracle database table层级结构
oracle database table层级结构全文共四篇示例,供读者参考第一篇示例:Oracle数据库表是数据库中的基本组成部分,它负责存储数据并提供对数据的访问。
在Oracle数据库中,表可以根据其之间的关系进行层级结构的划分,这种层级结构可以帮助用户更好地管理数据并方便数据的操作和查询。
本文将对Oracle数据库表的层级结构进行详细介绍。
1. 表的基本概念在Oracle数据库中,表是一种用于存储特定类型数据的结构,它由列和行组成。
每个表都有一个唯一的名称,并且可以包含一个或多个列,每个列都定义了表中存储的数据类型。
表中的每一行则代表一个记录,每个记录包含对应的列数据。
2. 表的层级结构在Oracle数据库中,表之间可以有不同的关系,这些关系可以反映表之间的层级结构。
在层级结构中,通常会存在主表和从表的关系,主表包含基本信息,从表包含与主表相关的详细信息。
通过建立不同表之间的关联,可以建立起一种层级化的数据存储结构,实现数据的组织和管理。
3. 表的关联在Oracle数据库中,表之间的关联是通过外键来实现的。
外键是一个列或一组列,它保存了另一个表的主键值。
通过外键,可以建立不同表之间的关联,实现数据的一对多或多对多关系。
在建立表之间的关联时,需要注意保证数据的完整性和一致性,确保数据的正确性和可靠性。
4. 表的索引在Oracle数据库中,表的索引是一种用于快速查找数据的结构。
索引可以提高数据的查询性能,减少查询时间。
通过在表中建立索引,可以根据索引列快速定位到对应的数据行,加快查询速度。
在设计表结构时,需要考虑在哪些列上建立索引,以提高查询性能。
5. 表的分区在Oracle数据库中,表的分区是一种将表数据按照一定规则分割成多个部分存储的方式。
通过表分区,可以实现数据的更好管理和维护。
表的分区可以按照时间、地区、业务类型等进行划分,不同分区可以根据需求进行独立维护和操作,有效提高数据库的性能和可靠性。
KK-ORACLE系统视图详解
DBA_LOB_PARTITIONS 显示包含在表中的用户可访问的LOB。
DBA_LOB_SUBPARTITIONS 显示LOB数据子分区中的分区级属性。
DBA_LOBS 显示包含在所有表中的LOB.
DBA_LOCK_INTERNAL 包含每个被持有的锁或简易锁的一行信息,及锁或简易锁的每一个未决定请求的一行信息。
DBA_LOCKS 列出数据库中持有的所有锁或简易锁,及一个锁或简易锁的所有未决请求。
DBA_METHOD_PARAMS 包含数据库中类型的方法参数的描述。
DBA_METHOD_RESULTS 包含数据库中所有类型的方法结果的描述。
DBA_MVIEW_AGGREGATES 代表在聚集实例化视图的SELECT列表中出现的分组函数(聚集方法)。
DBA_AUDIT_TRAIL 列出所有的审记跟踪条目。
DBA_BLOCKERS 列出所有人等待一个会话持有的锁的所有会话,但并非它们自己在等待一个锁。
DBA_CATALOG 列出所有数据库表、视图、同义词和序列。
DBA_CLU_COLUMNS 列出表列到簇列的映射。
DBA_CLUSTER_HASH_EXPRESSIONS 列出所有簇的散列(hash)函数。
DBA_PART_HISTOGRAMS 包含所有表分区上直方图的直方图数据(每个直方图的端点)。
DBA_PART_INDEXES 列出所有分区索引的对象级分区信息。
DBA_PART_KEY_COLUMNS 描述所有分区对象的分区关键字列。
DBA_PART_LOBS 描述分区LOB的表级信息,包括LOB数据分区的缺省属性。
解释基本表、 视图、实表的概念
解释基本表、视图、实表的概念
表是将数据转换为相关的结构化形式的有效手段,它将实体数据和属性组织在一起,从结构上考虑,表可以分为:基本表、视图和实表。
基本表是一个物理上存在的硬件文件,它由行列组成,并由操作系统和数据库管理系统维护和管理,存储在磁盘中,它包含有关实体、属性和记录的信息。
每个基础表都有一个名称,表中的记录具有相同的结构,每条记录不仅具有相同的数据类型,而且表的各个字段也存储相同的信息,这样可以简化表的管理,便于表中信息的访问。
视图是对数据库基本表的逻辑抽象,它在实例表的基础上,经过一定的逻辑操作产生的一个逻辑表,其本质上就是一个由若干行和列组成的虚拟表,因此,它不占据任何实际物理空间。
视图可以结合实例表中的基本数据,以不同形式或组合条件条件生成组合表,比如运用统计技术进行汇总和统计,或者将不同数据表中的数据根据关联模式进行组合,这样可以实现读者对表查询的视图更改,而不更改基础表的结构和物理结构。
实表是数据库中的实体模型的一种物理映射,它由具有单一结构的多条记录和具有相应数据类型的字段组成,实表中的每个记录都是独特的,存储重复的内容是被禁止的。
实表遵循表中全部字段的规则和限制,保证实例表中的数据是结构化的,而且它们必须保持特定的顺序,是为了在系统中执行查询、排序、更新和检索的操作Although,实表理论上不需要任何附加的约束。
总的来说,实例表、视图和实表都属于表的一种,但三者有着不同的功能和特点。
基本表是由行和列的结构表组成,由数据库管理系统维护和管理,用于存储实体和属性;视图是基本表的逻辑抽象,是由基本表经过一定的逻辑操作产生的;而实表则是对数据库实体的物理映射,由具有单一结构的多条记。
Oracle常用试图列表
oracle数据字典总结下面按类别列出一些ORACLE用户常用数据字典的查询使用方法。
一、用户查看当前用户的缺省表空间SQL>SELECT username,default_tablespace FROM user_users;查看当前用户的角色SQL>SELECT * FROM user_role_privs;查看当前用户的系统权限和表级权限SQL>SELECT * FROMuser_sys_privs;SQL>SELECT * FROM user_tab_privs;二、表查看用户下所有的表SQL>SELECT* FROM user_tables;查看名称包含log字符的表SQL>SELECT object_name,object_id FROM user_objects WHERE INSTR(object_name,'LOG')>0;查看某表的创建时间SQL>SELECT object_name,created FROMuser_objects WHERE object_name=UPPER('&table_name');查看某表的大小SQL>SELECT SUM(bytes)/(1024*1024)AS size(M)FROM user_segments WHERE segment_name=UPPER('&table_name');查看放在ORACLE的内存区里的表SQL>SELECT table_name,cache FROM user_tables WHERE INSTR(cache,'Y')>0;三、索引查看索引个数和类别SQL>SELECT index_name,index_type,table_name FROM user_indexes ORDER BY table_name;查看索引被索引的字段SQL>SELECT * FROM user_ind_columns WHERE index_name=UPPER('&index_name');查看索引的大小SQL>SELECT SUM(bytes)/(1024*1024)AS size(M)FROM user_segments WHERE segment_name=UPPER('&index_name');四、序列号查看序列号,last_number是当前值SQL>SELECT * FROMuser_sequences;五、视图查看视图的名称SQL>SELECT view_name FROM user_views;查看创建视图的select语句SQL>SELECT view_name,text_length FROM user_views;SQL>SET long 2000;//说明:可以根据视图的text_length值设定set long 的大小SQL>SELECT text FROM user_views WHERE view_name=UPPER('&view_name');六、同义词查看同义词的名称SQL>SELECT * FROM user_synonyms;七、约束条件查看某表的约束条件SQL>SELECT constraint_name,constraint_type,search_condition,r_constraint_name2 FROM user_constraints WHERE table_name = UPPER('&table_name');//注意,表名一定是大写才行SQL>SELECT c.constraint_name,c.constraint_type,cc.column_name2 FROM user_constraints c,user_cons_columns cc3 WHERE c.owner = upper('&table_owner')4 AND c.table_name = UPPER('&table_name')5 AND c.owner = cc.owner and c.constraint_name = cc.constraint_name6 ORDER BY cc.position;八、存储函数和过程查看函数和过程的状态SQL>SELECT object_name,status FROMuser_objects WHERE object_type='FUNCTION';SQL>SELECT object_name,status FROM user_objects WHERE object_type='PROCEDURE';查看函数和过程的源代码SQL>SELECT text from all_source WHERE owner=user AND name=UPPER('&plsql_name');九、触发器查看触发器SET long 50000;SET heading off;SET pagesize 2000;SELECT'create or replace trigger ' ||trigger_name || '' || chr(10)||DECODE( SUBSTR( trigger_type, 1, 1 ),'A', 'AFTER', 'B', 'BEFORE', 'I', 'INSTEAD OF' ) ||chr(10) ||triggering_event || chr(10) ||'ON ' || table_owner || '.' ||table_name || '' || chr(10) ||DECODE( instr( trigger_type, 'EACH ROW' ), 0, null,'FOR EACH ROW' ) || chr(10) ,trigger_bodyFROM user_triggers;Oracle常用数据字典表Oracle常用数据字典表查看当前用户的缺省表空间SQL>select username,default_tablespace from user_users;查看当前用户的角色SQL>select * from user_role_privs;查看当前用户的系统权限和表级权限SQL>select * from user_sys_privs;SQL>select * from user_tab_privs;查看用户下所有的表SQL>select * from user_tables;查看用户下所有的表的列属性SQL>select * from USER_TAB_COLUMNS where table_name=:table_Name;显示用户信息(所属表空间)select default_tablespace,temporary_tablespacefrom dba_users where username='GAME';1、用户查看当前用户的缺省表空间SQL>select username,default_tablespace from user_users;查看当前用户的角色SQL>select * from user_role_privs;查看当前用户的系统权限和表级权限SQL>select * from user_sys_privs;SQL>select * from user_tab_privs;显示当前会话所具有的权限SQL>select * from session_privs;显示指定用户所具有的系统权限SQL>select * from dba_sys_privs where grantee='GAME';显示特权用户select * from v$pwfile_users;显示用户信息(所属表空间)select default_tablespace,temporary_tablespacefrom dba_users where username='GAME';显示用户的PROFILEselect profile from dba_users where username='GAME';2、表查看用户下所有的表SQL>select * from user_tables;查看名称包含log字符的表SQL>select object_name,object_id from user_objectswhere instr(object_name,'LOG')>0;查看某表的创建时间SQL>select object_name,created from user_objects where object_name=upper('&table_name');查看某表的大小SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segmentswhere segment_name=upper('&table_name');查看放在Oracle的内存区里的表SQL>select table_name,cache from user_tables where instr(cache,'Y')>0;3、索引查看索引个数和类别SQL>select index_name,index_type,table_name from user_indexes order by table_name;查看索引被索引的字段SQL>select * from user_ind_columns where index_name=upper('&index_name');查看索引的大小SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segmentswhere segment_name=upper('&index_name');4、序列号查看序列号,last_number是当前值SQL>select * from user_sequences;5、视图查看视图的名称SQL>select view_name from user_views;查看创建视图的select语句SQL>set view_name,text_length from user_views;SQL>set long 2000; 说明:可以根据视图的text_length值设定set long 的大小SQL>select text from user_views where view_name=upper('&view_name');6、同义词查看同义词的名称SQL>select * from user_synonyms;7、约束条件查看某表的约束条件SQL>select constraint_name, constraint_type,search_condition, r_constraint_namefrom user_constraints where table_name = upper('&table_name');SQL>select c.constraint_name,c.constraint_type,cc.column_name from user_constraints c,user_cons_columns ccwhere c.owner = upper('&table_owner') and c.table_name = upper('&table_name')and c.owner = cc.owner and c.constraint_name = cc.constraint_nameorder by cc.position;8、存储函数和过程查看函数和过程的状态SQL>select object_name,status from user_objects where object_type='FUNCTION';SQL>select object_name,status from user_objects where object_type='PROCEDURE';查看函数和过程的源代码SQL>select text from all_source where owner=user and name=upper('&plsql_name');oracle常用数据字典说明和含义解释,可作为手册或者工具书使用!以下表格中收集了Oracle数据字典中几乎所有的视图或别名,至于每个视图或别名的字段请用‘Describe’语句来查询。
ORACLE分区表相关视图
ORACLE分区表相关视图1. 显⽰当前⽤户可访问的所有分区表信息﹕
ALL_PART_TABLES
2. 显⽰当前⽤户所有分区表的信息﹕
USER_PART_TABLES
3. 显⽰表分区信息显⽰数据库所有分区表的详细分区信息﹕
DBA_TAB_PARTITIONS
4. 显⽰当前⽤户可访问的所有分区表的详细分区信息﹕
ALL_TAB_PARTITIONS (这是俺的福星O(∩_∩)O~)
5. 显⽰当前⽤户所有分区表的详细分区信息﹕
USER_TAB_PARTITIONS
6. 显⽰⼦分区信息显⽰数据库所有组合分区表的⼦分区信息﹕
DBA_TAB_SUBPARTITIONS
7. 显⽰当前⽤户可访问的所有组合分区表的⼦分区信息﹕
ALL_TAB_SUBPARTITIONS
8. 显⽰当前⽤户所有组合分区表的⼦分区信息﹕
USER_TAB_SUBPARTITIONS
9. 显⽰分区列显⽰数据库所有分区表的分区列信息﹕
DBA_PART_KEY_COLUMNS
10.显⽰当前⽤户可访问的所有分区表的分区列信息﹕
ALL_PART_KEY_COLUMNS
11.显⽰当前⽤户所有分区表的分区列信息﹕
USER_PART_KEY_COLUMNS
12.显⽰⼦分区列显⽰数据库所有分区表的⼦分区列信息﹕
DBA_SUBPART_KEY_COLUMNS
13.显⽰当前⽤户可访问的所有分区表的⼦分区列信息﹕
ALL_SUBPART_KEY_COLUMNS
14.显⽰当前⽤户所有分区表的⼦分区列信息﹕
USER_SUBPART_KEY_COLUMNS。
oracle常用表
Oracle常用系统信息表系统表描述ALL_ARGUMENTSArguments in object accessible to the user用户可访问的对象参数ALL_CATALOGAll tables, views, synonyms, sequences accessible to the user 用户可访问的所有表、视图、同义词、序列ALL_COL_COMMENTSComments on columns of accessible tables and views可访问的表和视图的列的注释ALL_CONSTRAINTSConstraint definitions on accessible tables可访问的表的约束定义ALL_CONS_COLUMNSInformation about accessible columns in constraint definitions 与约束定义有关的可访问列的信息ALL_DB_LINKSDatabase links accessible to the user用户可访问的数据库链接ALL_ERRORSCurrent errors on stored objects that user is allowed to create 允许用户创建的存储对象的当前错误信息ALL_INDEXESDescriptions of indexes on tables accessible to the user用户可访问的表上创建的索引描述ALL_IND_COLUMNSCOLUMNs comprising INDEXes on accessible TABLES可访问的表上的索引的列ALL_LOBSDescription of LOBs contained in tables accessible to the user 用户可访问的表包含的大型数据对象的描述ALL_OBJECTSObjects accessible to the user用户可访问的对象ALL_OBJECT_TABLESDescription of all object tables accessible to the user用户可访问的对象的描述ALL_SEQUENCESDescription of SEQUENCEs accessible to the user用户可访问的序列的描述ALL_SNAPSHOTSSnapshots the user can access用户可访问的快照ALL_SOURCECurrent source on stored objects that user is allowed to create 允许用户创建的当前存储对象的原始资料ALL_SYNONYMSAll synonyms accessible to the user用户可访问的所有同义词ALL_TABLESDescription of relational tables accessible to the user用户可访问的所有关系表的描述ALL_TAB_COLUMNSColumns of user's tables, views and clusters与用户有关的表、视图和簇的列ALL_TAB_COL_STATISTICSColumns of user's tables, views and clusters与用户有关的表、视图和簇的列的统计信息ALL_TAB_COMMENTSComments on tables and views accessible to the user用户可访问的表和视图的注释ALL_TRIGGERSTriggers accessible to the current user当前用户可访问的触发器ALL_TRIGGER_COLSColumn usage in user's triggers or in triggers on user's tables 用户的触发器或用户表上的触发器的列的用途ALL_TYPESDescription of types accessible to the user用户可访问的类型描述ALL_UPDATABLE_COLUMNSDescription of all updatable columns所有可更新列的描述ALL_USERSInformation about all users of the database与数据库相关的所有用户信息ALL_VIEWSDescription of views accessible to the user用户可访问的视图的描述DATABASE_COMPATIBLE_LEVELDatabase compatible parameter set via init.ora通过init.ora设置的数据库兼容参数DBA_DB_LINKSAll database links in the database数据库中所有的数据库链接DBA_ERRORSCurrent errors on all stored objects in the database 数据库中所有对象当前的错误信息DBA_OBJECTSAll objects in the database数据库中所有的对象DBA_ROLESAll Roles which exist in the database数据库中存在的所有角色DBA_ROLE_PRIVSRoles granted to users and roles授予用户和角色权限的角色DBA_SOURCESource of all stored objects in the database数据库中所有的存储对象的原始信息DBA_TABLESPACESDescription of all tablespaces所有表空间的描述DBA_TAB_PRIVSAll grants on objects in the database数据库中所有对象的授权DBA_TRIGGERSAll triggers in the database数据库中所有的触发器DBA_TS_QUOTASTablespace quotas for all users所有用户的表空间限额DBA_USERSInformation about all users of the database数据库中所有用户的相关信息DBA_VIEWSDescription of all views in the database数据库中所有视图的描述DICTIONARYDescription of data dictionary tables and views数据字典的表和视图的描述DICT_COLUMNSDescription of columns in data dictionary tables and views 数据字典的表和视图的列的描述GLOBAL_NAMEGlobal database name全局数据库名NLS_DATABASE_PARAMETERSPermanent NLS parameters of the database数据库中永久国家语言参数NLS_INSTANCE_PARAMETERSNLS parameters of the instance实例的国家语言参数NLS_SESSION_PARAMETERSNLS parameters of the user session会话的国家语言参数PRODUCT_COMPONENT_VERSIONVersion and status information for component products产品的版本和状态信息ROLE_TAB_PRIVSTable privileges granted to roles授权给角色的表权限SESSION_PRIVSPrivileges which the user currently has set用户当前被设定的权限SESSION_ROLESRoles which the user currently has enabled用户当前有效的角色SYSTEM_PRIVILEGE_MAPDescription table for privilege type codes. Maps privilege type numbers to type names系统权限类型编码表描述。
oracle系统视图SQL语句整理
oracle系统视图SQL语句整理-- DBA/ALL/USER/V_$/GV_$/SESSION/INDEX开头的绝⼤部分都是视图-- DBA_TABLES意为DBA拥有的或可以访问的所有的关系表。
-- ALL_TABLES意为某⼀⽤户拥有的或可以访问的所有的关系表。
-- USER_TABLES意为某⼀⽤户所拥有的所有的关系表。
-- 当某⼀⽤户本⾝就为数据库DBA时,DBA_TABLES与ALL_TABLES等价。
-- DBA_TABLES >= ALL_TABLES >= USER_TABLES-- 需要注意的是在ORACLE数据库中⼤⼩写是敏感的,⽽此三表中数据默认都是⼤写的,所以在进⾏查询的时候注意⼩写的数据可能会造成数据⽆法查到。
SELECT * FROM dba_views WHERE view_name LIKE 'DBA%';SELECT * FROM dba_views WHERE view_name LIKE 'ALL%';SELECT * FROM dba_views WHERE view_name LIKE 'USER%';SELECT * FROM dba_views WHERE view_name LIKE 'V_$%'; -- 针对某个实例的视图SELECT * FROM dba_views WHERE view_name LIKE 'GV_$%'; -- 全局视图,针对多个实例环境SELECT * FROM dba_views WHERE view_name LIKE 'SESSION%';SELECT * FROM dba_views WHERE view_name LIKE 'INDEX%';SELECT count(1) FROM dba_tables;SELECT count(1) FROM all_tables;SELECT count(1) FROM user_tables;-- V$/GV$开头的绝⼤部分都是V_$/GV_$表的别名SELECT * FROM dba_synonyms WHERE synonym_name LIKE 'V$%';SELECT * FROM dba_synonyms WHERE synonym_name LIKE 'GV$%';-- X$没有对应的X_$SELECT * FROM dba_synonyms WHERE synonym_name LIKE 'X$%';-- ⽐较常⽤的DBA开头的视图有select * from dba_users; --数据库⽤户信息select * from dba_roles; --⾓⾊信息select * from dba_segments; --表段信息select * from dba_extents; --数据区信息select * from dba_objects; --数据库对象信息select * from dba_lobs; --lob数据信息select * from dba_tablespaces; --数据库表空间信息select * from dba_data_files; --数据⽂件设置信息select * from dba_temp_files; --临时数据⽂件信息select * from dba_rollback_segs; --回滚段信息select * from dba_ts_quotas; --⽤户表空间配额信息select * from dba_free_space; --数据库空闲空间信息select * from dba_profiles; --数据库⽤户资源限制信息select * from dba_sys_privs; --⽤户的系统权限信息select * from dba_tab_privs; --⽤户具有的对象权限信息select * from dba_col_privs; --⽤户具有的列对象权限信息select * from dba_role_privs; --⽤户具有的⾓⾊信息select * from dba_audit_trail; --审计跟踪记录信息select * from dba_stmt_audit_opts; --审计设置信息select * from dba_audit_object; --对象审计结果信息select * from dba_audit_session; --会话审计结果信息select * from dba_indexes; --⽤户模式的索引信息-- ⽐较常⽤的ALL开头的视图有select * from all_users; --数据库所有⽤户的信息select * from all_objects; --数据库所有的对象的信息select * from all_def_audit_opts; --所有默认的审计设置信息select * from all_tables; --所有的表对象信息select * from all_indexes; --所有的数据库对象索引的信息select * from all_tab_comments; --查询所有⽤户的表,视图等select * from all_col_comments; --查询所有⽤户的表的列名和注释.select * from all_tab_columns; --查询所有⽤户的表的列名等信息(详细但是没有备注)-- ⽐较常⽤的ALL开头的视图有select * from user_objects; --⽤户对象信息select * from user_source; --数据库⽤户的所有资源对象信息select * from user_segments; --⽤户的表段信息select * from user_tables; --⽤户的表对象信息select * from user_tab_columns; --⽤户的表列信息select * from user_constraints; --⽤户的对象约束信息select * from user_sys_privs; --当前⽤户的系统权限信息select * from user_tab_privs; --当前⽤户的对象权限信息select * from user_col_privs; --当前⽤户的表列权限信息select * from user_col_comments; -- 查询本⽤户的表的列名和注释select * from user_role_privs; --当前⽤户的⾓⾊权限信息select * from user_indexes; --⽤户的索引信息select * from user_ind_columns; --⽤户的索引对应的表列信息select * from user_cons_columns; --⽤户的约束对应的表列信息select * from user_clusters; --⽤户的所有簇信息select * from user_clu_columns; --⽤户的簇所包含的内容信息select * from user_cluster_hash_expressions; --散列簇的信息-- ⽐较常⽤的V$开头的别名有select * from v$database; --数据库信息select * from v$datafile; --数据⽂件信息select * from v$controlfile; --控制⽂件信息select * from v$logfile; --重做⽇志信息select * from v$instance; --数据库实例信息select * from v$log; --⽇志组信息select * from v$loghist; --⽇志历史信息select * from v$sga; --数据库SGA信息select * from v$parameter; --初始化参数信息select * from v$process; --数据库服务器进程信息select * from v$bgprocess; --数据库后台进程信息select * from v$controlfile_record_section; --控制⽂件记载的各部分信息select * from v$thread; --线程信息select * from v$datafile_header; --数据⽂件头所记载的信息select * from v$archived_log; --归档⽇志信息select * from v$archive_dest; --归档⽇志的设置信息select * from v$logmnr_contents; --归档⽇志分析的DML DDL结果信息select * from v$logmnr_dictionary; --⽇志分析的字典⽂件信息select * from v$logmnr_logs; --⽇志分析的⽇志列表信息select * from v$tablespace; --表空间信息select * from v$tempfile; --临时⽂件信息select * from v$filestat; --数据⽂件的I/O统计信息select * from v$undostat; --Undo数据信息select * from v$rollname; --在线回滚段信息select * from v$session; --会话信息select * from v$transaction; --事务信息select * from v$rollstat; --回滚段统计信息select * from v$pwfile_users; --特权⽤户信息select * from v$sqlarea; --当前查询过的sql语句访问过的资源及相关的信息select * from v$sql; --与v$sqlarea基本相同的相关信息select * from v$sysstat; --数据库系统状态信息-- ⽐较常⽤的SESSION开头的视图有select * from session_roles; --会话的⾓⾊信息select * from session_privs; --会话的权限信息-- ⽐较常⽤的INDEX开头的视图有select * from index_stats; --索引的设置和存储信息-- 伪表,参考oracle 中 dual 详解:/ozhouhui/article/details/7935196select * from dual; --系统伪列表信息select sysdate from dual; --可将Sysdate视为⼀个其结果为当前⽇期和时间的函数,在任何可以使⽤Oracle函数的地⽅都可以使⽤Sysdate。
oracle维护常用SQL语句(查看系统表和视图)
oracle维护常用SQL语句(查看系统表和视图)oracle维护常用SQL语句(查看系统表和视图)1.查看表空间的名称及大小select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_sizefrom dba_tablespaces t, dba_data_files dwhere t.tablespace_name = d.tablespace_namegroup by t.tablespace_name2.查看表空间物理文件的名称及大小selecttablespace_name,file_id,file_name,round(bytes/(1024*1024),0) total_spacefrom dba_data_filesorder by tablespace_name;3.查看回滚段名称及大小select segment_name, tablespace_name, r.status,(initial_extent/1024) InitialExtent,(next_extent/1024) NextExtent,max_extents, v.curext CurExtentFrom dba_rollback_segs r, v$rollstat vWhere r.segment_id = n(+)order by segment_name ;4.查看控制文件select name from v$controlfile;5.查看日志文件select member from v$logfile;6.查看表空间的使用情况select sum(bytes)/(1024*1024) as free_space,tablespace_namefrom dba_free_spacegroup by tablespace_name;SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,(B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE"FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE CWHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE_NAME;7.查看数据库库对象select owner, object_type, status, count(*) count#from all_objectsgroup by owner, object_type, status;8.查看数据库的版本Select version FROM Product_component_versionWhere SUBSTR(PRODUCT,1,6)='Oracle';9.查看数据库的创建日期和归档方式Select Created, Log_Mode, Log_Mode From V$Database;10.捕捉运行很久的SQLcolumn username format a12column opname format a16column progress format a8select username,sid,opname,round(sofar*100 / totalwork,0) || '%' as progress,time_remaining,sql_textfrom v$session_longops , v$sqlwhere time_remaining <> 0and sql_address = addressand sql_hash_value = hash_value/11.查看数据表的参数信息SELECT partition_name, high_value, high_value_length, tablespace_name,pct_free, pct_used, ini_trans, max_trans, initial_extent,next_extent, min_extent, max_extent, pct_increase, FREELISTS, freelist_groups, LOGGING, BUFFER_POOL, num_rows, blocks, empty_blocks, avg_space, chain_cnt, avg_row_len, sample_size,last_analyzedFROM dba_tab_partitions--WHERE table_name = :tname AND table_owner = :towner ORDER BY partition_position12.查看还没有提交的事务select * from v$locked_object;select * from v$transaction;13.查找object为那些进程所用selectp.spid,s.sid,s.serial# serial_num,ername user_name,a.type object_type,s.osuser os_user_name,a.owner,a.object object_name,decode(sign(48 - command),1,to_char(command), 'Action Code #' || to_char(command) ) action,p.program oracle_process,s.terminal terminal,s.program program,s.status session_statusfrom v$session s, v$access a, v$process pwhere s.paddr = p.addr ands.type = 'USER' anda.sid = s.sid anda.object='SUBSCRIBER_ATTR'order by ername, s.osuser14.回滚段查看select rownum, sys.dba_rollback_segs.segment_name Name, v$rollstat.extentsExtents, v$rollstat.rssize Size_in_Bytes, v$rollstat.xacts XActs, v$rollstat.gets Gets, v$rollstat.waits Waits, v$rollstat.writes Writes,sys.dba_rollback_segs.status status from v$rollstat, sys.dba_rollback_segs,v$rollname where v$(+) = sys.dba_rollback_segs.segment_name andv$n (+) = v$n order by rownum15.耗资源的进程select s.schemaname schema_name, decode(sign(48 - command), 1,to_char(command), 'Action Code #' || to_char(command) ) action, statussession_status, s.osuser os_user_name, s.sid, p.spid , s.serial# serial_num,nvl(ername, '[Oracle process]') user_name, s.terminal terminal,s.program program, st.value criteria_value from v$sesstat st, v$session s , v$process pwhere st.sid = s.sid and st.statistic# = to_number('38') and ('ALL' = 'ALL'or s.status = 'ALL') and p.addr = s.paddr order by st.value desc, p.spid asc, ername asc, s.osuser asc16.查看锁(lock)情况select /*+ RULE */ ls.osuser os_user_name, ername user_name,decode(ls.type, 'RW', 'Row wait enqueue lock', 'TM', 'DML enqueue lock', 'TX','Transaction enqueue lock', 'UL', 'User supplied lock') lock_type,o.object_name object, decode(ls.lmode, 1, null, 2, 'Row Share', 3,'Row Exclusive', 4, 'Share', 5, 'Share Row Exclusive', 6, 'Exclusive', null)lock_mode, o.owner, ls.sid, ls.serial# serial_num, ls.id1, ls.id2 from sys.dba_objects o, ( select s.osuser, ername, l.type, l.lmode, s.sid, s.serial#, l.id1, l.id2 from v$session s,v$lock l where s.sid = l.sid ) ls where o.object_id = ls.id1 and o.owner<> 'SYS' order by o.owner, o.object_name17.查看等待(wait)情况SELECT v$waitstat.class, v$waitstat.count count, SUM(v$sysstat.value) sum_valueFROM v$waitstat, v$sysstat WHERE v$ IN ('db block gets','consistent gets') group by v$waitstat.class, v$waitstat.count18.查看sga情况SELECT NAME, BYTES FROM SYS.V_$SGASTAT ORDER BY NAME ASC19.查看catched objectSELECT owner, name, db_link, namespace,type, sharable_mem, loads, executions,locks, pins, kept FROM v$db_object_cache20.查看V$SQLAREASELECT SQL_TEXT, SHARABLE_MEM, PERSISTENT_MEM, RUNTIME_MEM, SORTS,VERSION_COUNT, LOADED_VERSIONS, OPEN_VERSIONS, USERS_OPENING, EXECUTIONS,USERS_EXECUTING, LOADS, FIRST_LOAD_TIME, INVALIDATIONS, PARSE_CALLS, DISK_READS,BUFFER_GETS, ROWS_PROCESSED FROM V$SQLAREA21.查看object分类数量select decode (o.type#,1,'INDEX' , 2,'TABLE' , 3 , 'CLUSTER' , 4, 'VIEW' , 5 ,'SYNONYM' , 6 , 'SEQUENCE' , 'OTHER' ) object_type , count(*) quantity fromsys.obj$ o where o.type# > 1 group by decode (o.type#,1,'INDEX' , 2,'TABLE' , 3, 'CLUSTER' , 4, 'VIEW' , 5 , 'SYNONYM' , 6 , 'SEQUENCE' , 'OTHER' ) union select'COLUMN' , count(*) from sys.col$ union select 'DB LINK' , count(*) from22.按用户查看object种类select schema, sum(decode(o.type#, 1, 1, NULL)) indexes,sum(decode(o.type#, 2, 1, NULL)) tables, sum(decode(o.type#, 3, 1, NULL))clusters, sum(decode(o.type#, 4, 1, NULL)) views, sum(decode(o.type#, 5, 1,NULL)) synonyms, sum(decode(o.type#, 6, 1, NULL)) sequences,sum(decode(o.type#, 1, NULL, 2, NULL, 3, NULL, 4, NULL, 5, NULL, 6, NULL, 1))others from sys.obj$ o, er$ u where o.type# >= 1 and er# =o.owner# and <> 'PUBLIC' group by order bysys.link$ union select 'CONSTRAINT' , count(*) from sys.con$23.有关connection的相关信息1)查看有哪些用户连接select s.osuser os_user_name, decode(sign(48 - command), 1, to_char(command),'Action Code #' || to_char(command) ) action, p.program oracle_process,status session_status, s.terminal terminal, s.program program,ername user_name, s.fixed_table_sequence activity_meter, '' query,0 memory, 0 max_memory, 0 cpu_usage, s.sid, s.serial# serial_numfrom v$session s, v$process p where s.paddr=p.addr and s.type = 'USER'order by ername, s.osuser2)根据v.sid查看对应连接的资源占用等情况select ,v.value,n.class,n.statistic#from v$statname n,v$sesstat vwhere v.sid = 71 andv.statistic# = n.statistic#order by n.class, n.statistic#3)根据sid查看对应连接正在运行的sql select /*+ PUSH_SUBQ */ command_type,sql_text,sharable_mem,persistent_mem,runtime_mem,sorts,version_count,loaded_versions,open_versions,users_opening,executions,users_executing,loads,first_load_time,invalidations,parse_calls,disk_reads,buffer_gets,rows_processed,sysdate start_time,sysdate finish_time,'>' || address sql_address,'N' statusfrom v$sqlareawhere address = (select sql_address from v$session where sid = 71)24.查询表空间使用情况select a.tablespace_name "表空间名称",100-round((nvl(b.bytes_free,0)/a.bytes_alloc)*100,2) "占用率(%)",round(a.bytes_alloc/1024/1024,2) "容量(M)",round(nvl(b.bytes_free,0)/1024/1024,2) "空闲(M)",round((a.bytes_alloc-nvl(b.bytes_free,0))/1024/1024,2) "使用(M)",Largest "最大扩展段(M)",to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') "采样时间"from (select f.tablespace_name,sum(f.bytes) bytes_alloc,sum(decode(f.autoextensible,'YES',f.maxbytes,'NO',f.bytes)) maxbytesfrom dba_data_files fgroup by tablespace_name) a,(select f.tablespace_name,sum(f.bytes) bytes_freefrom dba_free_space fgroup by tablespace_name) b,(select round(max(ff.length)*16/1024,2) Largest, tablespace_namefrom sys.fet$ ff, sys.file$ tf,sys.ts$ tswhere ts.ts#=ff.ts# and ff.file#=tf.relfile# and ts.ts#=tf.ts#group by , tf.blocks) cwhere a.tablespace_name = b.tablespace_name anda.tablespace_name = c.tablespace_name25. 查询表空间的碎片程度select tablespace_name,count(tablespace_name) from dba_free_space group by tablespace_namehaving count(tablespace_name)>10;alter tablespace name coalesce;alter table name deallocate unused;create or replace view ts_blocks_v asselect tablespace_name,block_id,bytes,blocks,'free space' segment_name from dba_free_spaceunion allselecttablespace_name,block_id,bytes,blocks,segment_name from dba_extents;select * from ts_blocks_v;selecttablespace_name,sum(bytes),max(bytes),count(block_id) from dba_free_spacegroup by tablespace_name;26.查询有哪些数据库实例在运行select inst_name from v$active_instances;。
Oracle内置的表或视图
在ORACLE数据库中,有一些内置的表和视图,记录着一些数据库的相关信息:如我们建了哪些表,哪些用户,表有哪些字段等等,这些东西有时候是非常有用的。
1.几个重要的Oracle表或者视图如下:v$controlfile:控制文件的信息;v$datafile:数据文件的信息;v$log:日志文件的信息;v$process:处理器的信息;v$session:会话信息;v$transaction:事务信息;v$resource:资源信息;v$sga:系统全局区的信息。
上面的视图名中的‘v$’,只是视图名字中的字符。
类似于上面的视图或表还有很多,位于:$Oracle_HOME/RDBMS/ADMIN/CATALOG.SQL文件中。
这些视图或Oracle表可以在SQLPLUS中用SELECT语句进行查询。
2.数据字典视图表和列DBA_TABLES、ALL_TABLES和USER_TABLES显示了有关数据库表的一般信息。
DBA_TAB_COLUMNS、ALL_TAB_COLUMNS和USER_TAB_COLUMNS显示了每个数据库表的列的信息。
注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS显示了模式对象的信息,包括Oracle 表。
完整性约束DBA_CONSTRAINTS、ALL_CONSTRAINTS和USER_CONSTRAINST显示有关约束的一般信息。
DBA_CONS_COLUMNS、ALL_CONS_COLUMNS和USER_CONS_COLUMNS显示有关列的相关约束的一般信息。
视图DBA_VIEWS、ALL_VIEWS和USER_VIEWS。
注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS显示了模式对象的信息,包括视图。
序列DBA_SEQUENCES、ALL_SEQUENCES和USER_SEQUENCES。
注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS显示了模式对象的信息,包括序列。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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也不错
dba_audit_object 对象审计结果信息
dba_audit_session 会话审计结果信息
dba_indexes 用户模式的索引信息
user_开头
user_objects 用户对象信息
user_source 数据库用户的所有资源对象信息
v$db_cache_advice , v$PGA_TARGET_ADVICE, v$SHARED_POOL_ADVICE
dba_temp_files 临时数据文件信息
dba_rollback_segs 回滚段信息
dba_ts_quotas 用户表空间配额信息
dba_free_space 数据库空闲空间信息
dba_profiles 数据库用户资源限制信息
dba_sys_privs 用户的系统权限信息
dba_开头
dba_users 数据库用户信息
dba_segments 表段信息
dba_extents 数据区信息
dba_objects 数据库对象信息
dba_tablespaces 数据库表空间信息
dba_data_files 数据文件设$sql , v$sqlarea , v$SQL_PLAN , V$SQL_PLAN_STATISTICS, v$sqltext_with_newlines
3. Latch / lock /ENQUEUE
v$latch , v$latch_children , v$latch_holder , v$lock ,V$ENQUEUE_STAT ,V$ENQUEUE_LOCK
user_clusters 用户的所有簇信息
user_clu_columns 用户的簇所包含的内容信息
user_cluster_hash_expressions 散列簇的信息
v$开头
v$database 数据库信息
v$datafile 数据文件信息
user_segments 用户的表段信息
user_tables 用户的表对象信息
user_tab_columns 用户的表列信息
user_constraints 用户的对象约束信息
user_sys_privs 当前用户的系统权限信息
user_tab_privs 当前用户的对象权限信息
v$process 数据库服务器进程信息
v$bgprocess 数据库后台进程信息
v$controlfile_record_section 控制文件记载的各部分信息
v$thread 线程信息
v$datafile_header 数据文件头所记载的信息
all_开头
all_users 数据库所有用户的信息
all_objects 数据库所有的对象的信息
all_def_audit_opts 所有默认的审计设置信息
all_tables 所有的表对象信息
all_indexes 所有的数据库对象索引的信息
v$rollstat 回滚段统计信息
v$pwfile_users 特权用户信息
v$sqlarea 当前查询过的sql语句访问过的资源及相关的信息
v$sql 与v$sqlarea基本相同的相关信息
v$sysstat 数据库系统状态信息
v$controlfile 控制文件信息
v$logfile 重做日志信息
v$instance 数据库实例信息
v$log 日志组信息
v$loghist 日志历史信息
v$sga 数据库SGA信息
v$parameter 初始化参数信息
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
按组分的几组重要的性能视图
dba_tab_privs 用户具有的对象权限信息
dba_col_privs 用户具有的列对象权限信息
dba_role_privs 用户具有的角色信息
dba_audit_trail 审计跟踪记录信息
dba_stmt_audit_opts 审计设置信息
v$tablespace 表空间信息
v$tempfile 临时文件信息
v$filestat 数据文件的I/O统计信息
v$undostat Undo数据信息
v$rollname 在线回滚段信息
v$session 会话信息
v$transaction 事务信息
v$archived_log 归档日志信息
v$archive_dest 归档日志的设置信息
v$logmnr_contents 归档日志分析的DML DDL结果信息
v$logmnr_dictionary 日志分析的字典文件信息
v$logmnr_logs 日志分析的日志列表信息
session_开头
session_roles 会话的角色信息
session_privs 会话的权限信息
index_开头
index_stats 索引的设置和存储信息
伪表
dual 系统伪列表信息
oracle最重要的9个动态性能视图
user_col_privs 当前用户的表列权限信息
user_role_privs 当前用户的角色权限信息
user_indexes 用户的索引信息
user_ind_columns 用户的索引对应的表列信息
user_cons_columns 用户的约束对应的表列信息
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