v$database: 数据库的信息, 如数据库名, 创建时间等.
v$instance 实例信息, 如实例名, 启动时间.
v$parameter 参数信息, select * from v$parameter where name like '%name' ----> show parameter name(sqlplus 中执行)
v$process 运行的进程的信息, 如 PID,SPID, 以及进程的名字, 如 SMON,PMON 在 UNIX 的进程名称, 在 windows 中会看到类似 ORACLE.EXE (PMON)这样的线程名字.
v$mystat 本 session 的 SID 号等信息.. 知道了 SID 后可以通过查询 session 相关的信息.
v$session 连接到数据库的 session 相关的信息, 如机器名, 客户端程序名称, PID(UNIX)等.
如通过 select distinct(sid) from v$mystat; 得到 SID 后,
可以得到这个 session 的相关信息, 如为这个 session 服务的后台进程的地址(PADDR) select * from v$session where sid=157
得到 PADDR 后可以得到后台进程的信息: select * from v$process where addr = '3424E3BC'
v$controlfile 控制文件的位置信息, 可以在 nomount 阶段查看, 但没有数据. 数据库在 mount 后这个视图才有数据.
v$controlfile_record_section 控制文件里的配置信息.
v$datafile 数据文件的位置信息, 数据库在 mount 后这个视图才能被查看. 数据库打开是检查里面的 CHECKPOINT_CHANGE#(从控制文件得来)是否和 v$datafile_header 的一致.
v$datafile_header 数据文件头信息. 是从数据文件头读取的, 在做恢复的时候每当一个归档日志应用之后, CHECKPOINT_CHANGE# 都可以看到变化.
select dbms_flashback.get_system_change_number from dual
v$logfile 日志文件的位置信息, 数据库在 mount 后这个视图才能被查看.
V$INSTANCE_RECOVERY: 实例恢复时和重做日志有关的信息, FAST_START_MTTR_TARGET: 实例恢复的时间限制, oracle 将这个时间换算成
redo blocks 数量, 当 log buffer 中未写入 log file 的 redo block 数量超过这个值, 就会触发增量检查点.
(这和数据库加载文件的顺序有关系, 数据库 startup nomount 时根据参数文件加载控制文件, startup mount 后, 根据控制文件加载数据文件和日志文件)
v$log: 日志的的信息, 比如当前用的是那一个日志组.
v$sga_dynamic_components SGA 各个内存块的信息, 如 java 池的大小, 共享池的大小, 数据缓冲区(在 10G 中是根据数据块的大小有不同的缓冲区的, 如 DEFAULT 2K buffer cache 放数据块是 2k 的, DEFAULT 4K buffer cache 放数据块是 4k 的)
v$pwfile_users 数据库中具有 sysdba,sysoper 权限的用户.
v$rollstat 回退段信息, USN 回退段的编号, XACTS 活动的事务数量. 回退段可以从 dba_rollback_segs 查看.
v$transaction 活动事务信息, 如对应的回退段 (XIDUSN) 是哪一个等.
v$sql: 执行过的 SQL 语句.
v$lock: 那些 session 占用了什么样的锁, 在申请什么样的锁, 该 session 是否阻塞了别的 session.
v$locked_object 哪些对象被锁住了.
v$session_wait 查看 session 等待信息: select * from v$session_wait where wait_class != 'Idle'看目前还在等待的 session, 如被阻塞的 session.
v$session_wait_history:session 等待的历史信息, 只保存离目前最近的 10 条记录.
v$active_session_history: 活动 session(等待的或者在使用 CPU)的历史信息, 每一秒统计一次信息. 每隔一小时会记录到磁盘, 从 dba_hist_active_sess_history 可以看到. 执行 db_1\RDBMS\ADMIN\ashrpt.sql 可以生成报告.
v$statistics_level: 那些 advisor 被打开了以及 advisor 做统计时候从那些 view 取统计信息.
v$sga_dynamic_components:SGA 各个模块的动态统计信息.
v$log 在线日志的信息, 那一组是正在使用的, 开始使用时候的 SCN.
v$archived_log 归档日志的信息, 从那个 SCN 开始到那个 SCN 结束归档到了那一个文件.
v$backup 那个表空间处于热备份模式. alter tablespace xx begin backup 的时候会把对应的 SCN 记录下来.
v$statname 数据库动态都统计那些信息, 有信息名称和 ID, 一般和 v$sesstat 联合使用.
v$sesstat 一些动态统计信息的值, 如 user commits,opened cursors current,redo size 等等,
- select name,value from v$sesstat,v$statname
- where v$statname.STATISTIC#=v$sesstat.STATISTIC# and v$statname.name like '%redo size%' and SID=115
和 falshback 相关的
v$flashback_database_logfile flashback 的日志文件相关的信息, Oldest_flashback_scn / Oldest_flashback_time : 这两列用来记录可以恢复到最早的时点 .
v$flashback_database_log: 日志使用的情况
v$flashback_database_stat: flashback 统计信息.
上面三个视图在 alter database flashback on 才有数据.
flashback_transaction_query
v$nls_valid_values 可以用的语言, 国家和编码设置, alter session set nls_language=american;
v$parameter_valid_values 可以设置的参数值
v$sga:sga 内存的信息, select sum(value)/1024/1024 from v$sga 通常 = sga_max_size 或者 sga_target
v$sga_dynamic_free_memory:sga 未分配的内存.
v$bh DB buffer 里缓存的数据块信息.
设置客户端编码
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK, 三部分, AMERICAN 语言, 提示信息, AMERICA 国家影响日期格式, ZHS16GBK 编码.
查看服务器编码 select name,value$ from props$ where name ='NLS_CHARACTERSET';
以 dba_和 v$ 开头的通常都是视图. dba_开头的里面的信息通常是静态的, 信息在文件中(但是并不代表里面的信息不变化).v$ 开头的信息通常是动态的, 来自控制文件和内存中的信息
dba_data_files(v$datafile )数据文件信息, 里面不包括临时表空间对应的文件的信息,,dba_tablespaces(v$tablespace)表空间信息, dba_tables 表信息, dba_segments 段信息, dba_extents 区信息.
dba_segments: 那些段保存到了那个表空间, 占用了多大空间等.
- select * from dba_segments where segment_name='TEST'
- select * from dba_segments where tablespace_name='USERS'
- select * from dba_segments where owner='YORKER'
dba_users 用户信息, 如默认表空间. dba_roles: 系统里定义的角色, 如 DBA(注意与 sysdba 的区别),CONNECT 等. 和用户相关的还有一个视图 dba_profiles: 数据库中定义的 profile 信息, profile 是指登录尝试次数, 密码过期时间限制等, 该用户可以有多少个 session, 空闲多久可以把该用户断掉, 可以在 create user 时候指定.
dba_sys_privs : 什么样的用户或者角色授予了什么样的系统权限.
dba_tab_privs 看什么样的用户或者角色授予了什么样的对象权限.
dba_role_privs, 用户或者角色被授予了什么样的角色. 通过角色授予的权限要重新登录才能起作用.
权限传递: 系统权限被收回, 传递的权限不收回, 对象权限被收回, 传递的权限也收回.
dba_constraints 约束的信息. 表级约束 Primary(P),Foreign key(R),Unique(U),Check. 列级约束 Not null(可以认为是 check 约束的一种, 在 dba_constraints 的 constraint_type 和 check 约束相同, 都为'C'). 还有对于 NOT NULL 的 ALTER TABLE 语句建立约束与其他四种 (alter table tb add constraints...) 是不同的: ALTER TABLE tb MODIFY col_name NOT NULL.
dba_priv_audit_opts: 数据库打开了那些权限审计. aduit create session;. aduit create session whenever not successful;
dba_obj_audit_opts: 数据库打开了那些对象审计. audit select on tb[by session/access].
dba_stmt_audit_opts: 数据库打开的语句审计 audit table by userA
dba_audit_trail 审计的信息视图, 一部分信息正是从表 aud$ 的审计信息查询出来的, 表 aud$ 只能以 sysdba 权限看.
dba_fga_audit_trail 保存的是通过 dbms_fga.add_policy 创建的细粒度审计的审计信息.
dba_common_audit_trail 保存的是创建的标准和细粒度审计的类型信息.
dba_rollback_segs 数据库回退段的信息.
dba_hist_wr_control awr(auto workload repository)生成数据库负载信息的控制信息, 保留时间, 统计频率. dbms_workload_repository .modify_snapshot_settings(retention=>1440,interval=>30)修改控制.
dba_hist_snapshot: 数据库运行 snapshot 的历史信息, 根据 dba_hist_wr_control 的控制信息自动生成, 可以通过 dbms_workload_repository .create_snapshot 生成.
利用 db_1\RDBMS\ADMIN\awrrpt.sql 可以生成数据库运行报告. db_1\RDBMS\ADMIN\awrrpt.sql\addmrpt.sql 可以生成与之对应的诊断建议报告.
dbms_workload_repository.create_baseline 可以选择某从某个 snapshot 到另外一个之间 (这段时间 DB 运行良好) 创建 baseline 来做为以后数据库运行信息的比较基准.
dba_hist_baseline 保存的 snapshot 基准信息.
dba_thresholds 发生警告的上限值. 如表空间用了多少报警. 后台进程 MMON 会监视这些信息.
dba_outstanding_alerts 最近 10 条警告信息. dba_alert_history 警告的历史信息.
表:
system_privilege_map, 系统权限信息, 如经常用到的 sysdba 和 sysoper 都是系统权限. 还有像 CREATE TABLESPACE,DROP TABLESPACE 等, 要注意的是 drop table 不是系统权限, drop any table 是系统权限. UNLIMITED TABLESPACE 权限不能授予给角色, 也就意味着 DBA 角色的用户也需要单独额外授予 UNLIMITED TABLESPAC 权限.
数据库的这些视图, 表定义可以在下面的视图中查到:
- select * from dict
- select * from dict_columns
- select * from v$fixed_table
- select * from v$fixed_view_definition
- SELECT '*TABLE:' || TABLE_NAME, COMMENTS
- FROM ALL_TAB_COMMENTS
- WHERE OWNER = 'SYS'
- AND TABLE_NAME = 'USER_SYNONYMS'
- UNION
- SELECT 'COL:' || COLUMN_NAME, COMMENTS
- FROM ALL_COL_COMMENTS
- WHERE OWNER = 'SYS'
- AND TABLE_NAME = 'USER_SYNONYMS' ;
来源: http://www.bubuko.com/infodetail-2650095.html