玖叶教程网

前端编程开发入门

Oracle数据库性能调优实践(五)——数据字典的使用及管理

摘要:数据字典是Oracle存放有关数据库信息的地方,几乎所有的系统信息和对象信息都可在数据字典中进行查询。数据字典是Oracle数据库系统的信息核心,它是一组提供有关数据库信息的表和视图的集合,这些表和视图是只读的。它是随着数据库的建立而建立的,当数据库执行特定动作时数据字典也会自动更新。数据一览与数据字典来记录、校验和管理正在进行的操作。Oracle中的sys用户是数据字典的拥有者,数据字典保证在所有数据库的系统表空间system内,任何用户都无权更改sys模式下的模式对象或数据字典中的行。也就是说数据字典只能查询,不能手动进行修改。

Oracle通过数据字典来管理和展现数据库信息,数据字典通常储存数据库的元数据,是数据库的“数据库”。通常说的数据字典由4部分组成:内部RDBMS(X$)表、数据字典表、动态性能视图(V$)和(静态)数据字典视图。(两表两视图)。数据字典内容包括以下八方面内容:一是数据库中所有模式对象的信息,如表、视图、簇、及索引等;二是分配多少空间,当前使用了多少空间等;三是列的缺省值;四是约束信息的完整性;五是Oracle用户的名字;六是用户及角色被授予的权限;七是用户访问或使用的审计信息;八是其它产生的数据库信息。

现将有关Oracle的数据字典方面的知识整理出来,供参考。详细内容请看下文。

一、访问Oracle数据库

1、切换到oracle 用户: su - oracle

2、查看oracle 监控: lsnrctl status

3、访问oracle 数据库: sqlplus / as sysdba

二、Oracle数据字典表

1、执行语句select * from dictionary查看Oracle数据字典表

2、执行下面语句查询跟索引有关的数据字典

SQL>select * from dictionary where instr(comments,'index')>0;

3、执行下面语句查询user_indexes表各字段名称的详细含义

SQL>select column_name,comments from dict_columns where table_name='USER_INDEXES';

4、执行下面语句查看当前用户的缺省表空间

SQL>select username,default_tablespace from user_users;

5、执行下面语句查看当前用户的角色

SQL>select * from user_role_privs;

6、执行下面语句查看当前用户的系统权限和表级权限

SQL>select * from user_sys_privs;


SQL
>select * from user_tab_privs;

7、执行下面语句查询用户拥有哪些数据库对象,包括表、视图、存储过程、触发器、包、索引、序列、JAVA文件等

SQL> select object_name,OBJECT_TYPE from user_objects;

8、通过视图显示数据库中锁定的数据库对象以及访问这些对象的会话对象(session对象)

SQL> select * from v$access;

9、通过视图列出当前会话的详细信息

SQL> select * from v$session;

10、查看数据库的当前连接数

SQL> select schemaname,osuser,machine from v$session;

11、查看函数和过程的状态

SQL>select object_name,status from user_objects where object_type='FUNCTION';


SQL
>select object_name,status from user_objects where object_type='PROCEDURE';

12、查看函数和过程的源代码

SQL>select text from all_source where owner=user and name=upper('&plsql_name');

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言