数据字典,--Oracle 数据字典

--Oracle 数据字典
--Oracle 数据字典很多,通常我记不住所有的名字,我们可以用以下SQL去查数据字典的名字
如:select distinct object_name from dba_objects where object_name like 'user_%';
--本用户字典

SQL> select distinct object_name from dba_objects where object_name like 'USER_%';
--系统用户字典
SQL> select distinct object_name from dba_objects where object_name like 'DBA_%';
--动态字典
SQL> select distinct object_name from dba_objects where object_name like 'V$_%';
--表

SQL> select * from cat;
SQL> select * from tabs;
SQL> select * from user_tables;
--视图
SQL> select * from user_views;
SQL> select text from user_views where view_name=upper('&view_name');
--索引
SQL> select * from user_indexes;

SQL> select index_name,table_owner,table_name,tablespace_name,status from user_indexes order by table_name;
--快照 select * from user_snapshots;
SQL> select owner,name,master,table_name,last_refresh,next from user_snapshots order by owner,next;--触发器
SQL> select * from user_triggers;
SQL> select trigger_name,trigger_type,table_owner,table_name,status from user_triggers;
--同义词
SQL> select * from syn;
--序列
SQL> select * from seq;
SQL> select * from user_sequences;
--数据库链路
SQL> select * from user_db_links;
--约束限制
SQL> select * from user_constraints;
SQL> select TABLE_NAME,CONSTRAINT_NAME,SEARCH_CONDITION,STATUS from user_constraints;
--本用户读取其它用户对象的权限
SQL> select * from user_tab_privs;
--本用户所拥有的系统权限
SQL> select * from user_sys_privs;
--Oracle系统中的所有用户
SQL> select * from all_users;
SQL> select username from all_users;
SQL> select * from all_users order by user_id;
--表空间剩余自由空间情况?
SQL> select tablespace_name,sum(bytes),max(bytes),count(*) from dba_free_space group by tablespace_name;
--数据字典
SQL> select table_name from dict order by table_name;
--锁及资源信息
SQL> select * from v$lock;
--不包括DDL锁数据库字符集?
SQL> select name,value$ from props$ where name='NLS_CHARACTERSET';
--inin.ora参数
SQL> select name,value from v$parameter order by name;
--SQL共享池
SQL> select * from v$sqlarea;
SQL> select sql_text from v$sqlarea;
--数据库

SQL> select * from v$database;
--控制文件
SQL> select * from V$controlfile;
--重做日志文件信息
SQL> select * from V$logfile;
--来自控制文件中的日志文件信息
SQL> select * from V$log;
--来自控制文件中的数据文件信息
SQL> select * from V$datafile;
--NLS参数当前值
SQL> select * from V$nls_parameters;
--ORACLE版本信息
SQL> select * from v$version;
--描述oracle后台进程
SQL> select * from v$bgprocess;
--查看oracle版本信息
SQL> select * from v$instance;
SQL> select * from product_component_version;
----查看oracle 数据库名(DB_NAME)
SQL> select name from v$database;
SQL> show parameter db;
SQL> select value from v$parameter where name='db_name';
----查看oracle 数据库实例名(Instance_name、ORACLE_SID)
SQL> select instance_name from v$instance;
SQL>show parameter instance;
SQL> select value from v$parameter where name='db_name';
方法三:在参数文件中查询
如:$ORACLE_BASE/admin/DB_NAME/pfile/init$ORACLE_SID.ora
----查看oracle 数据库域名、全局数据库名、数据库服务名
三、数据库名与实例名之间的关系。
数据库名与实例名之间的关系一般是一一对应关系,有一个数据库名就有一个实例名,
如果在一个服务器中创建两个数据库,则有两个数据库名,两个数据库实例名,用两个标识确定一个数据库,用户和实例相连接。
但在8i、9i的并行服务器结构(即oracle实时应用集群)中,数据库与实例之间是一对多关系,(一个数据库对应多个实例,同一时间内用户只一个实例相联系,当某一实例出现故障,其它实例自动服务,以保证数据库安全运行。)
Tags: 

延伸阅读

最新评论

发表评论