通过sql语句获取数据库的基本信息

文/蔷薇  出处/赛迪网

(1) 查询oracle 的物理结构

◆1.1. 查看数据文件

SQL> select name from v$datafile;

NAME

---------------------------------------------

/u05/dbf/PROD/system_01.dbf/u05/dbf/PROD/system_01.dbf (系统数据文件)

/u06/dbf/PROD/temp_01.dbf (临时数据文件)

/u04/dbf/PROD/users_01.dbf (用户数据文件)

/u09/dbf/PROD/rbs_01.dbf (回滚数据文件)

/u06/dbf/PROD/applsys_indx_01.dbf (索引数据文件)

数据文件是ORACLE中最重要的物理文件


◆1.2.查询控制文件信息

SQL>select * from V$Controlfile

◆1.3 查看日志组

SQL>select * from V$Log

◆1.4. 查看具体的日志成员文件

SQL>select * from v$logfile

◆1.5 通过以下SQL 找到 报警日至文件的路径

select value from v$parameter where name ='background_dump_dest'

◆1.6 通过以下SQL找到用户跟踪文件的路径

select value from v$parameter where name ='user_dump_dest'



(2) 查询安全信息

◆2.1 显示示用户信息

SQL>selelct * from DBA_Users Where Username =’system’

◆2.2 显示角色信息

SQL> Select *from Dba_Roles

◆2.3 显示表空间限额的信息

SQL> select Tablespace_Name,Username,Bytes,max_bytes

SQL> from dba_ts_quotas;

◆2.4 显示开工文件和相关资源限制设置的信息

SQL> Select profile,resource_name,limit

SQL> from Dba_profiles;

◆2.5 显示当前用户拥有的所有的表

SQL> Select * From Tab;

◆2.6 查看内部系统表的SQL

select * from v$fixed_view_definition


3 查询oracle 的系统环境变量

◆3.1.查找全局共享缓冲区(SGA)

SQL> select * from v$sga;

NAME VALUE

-------------------- ---------

Fixed Size 39816

Variable Size 259812784

Database Buffers 1.049E+09

Redo Buffers 327680

更详细的信息可以参考V$sgastat、V$buffer_pool

对于保存在共享池中的SQL语句,可以从V$Sqltext、v$Sqlarea中查询到


◆3.2清空Share_pool,保留Data buffer

SQL> alter system flush SHARED_POOL;

System altered.


◆3.3. .运行以下语句可以得到系统SCN号

SQL> select max(ktuxescnw * power(2, 32) + ktuxescnb) scn from x$ktuxe;

SCN

----------

31014

◆3.4 查询数据块可用空间大小。

Select kvisval,kvistag,kvisdsc from sys.x$kvis;


◆3.5检查当前oracle 的连接类型:

select server

from v$session

where audisid=USERENV(‘SESSIONID’);

如果 输出

SERVER

―――――――――――

DEDICATED


说明当前的oracle 连接实用的是专用服务器连接 ,而不是MTS多线程服务器(SHARED)


◆3.6. 查看数据数据字典的SQL

select * from dict


◆3.7检查后台线程的状态

Select name,Description

From V$BGPROCESS

Where Paddr<>’00’ (进程地址不等于’00’)

输出结果类似:

name description

-------- ---------------------------------

Pmon Process Cleanup

Dbwo db Writer Process 0

Lgwr Redo Etc

Ckpt checkpoint

◆3.8 显示表结构

desc tablename(任意表名);

输出结果类似:

name null? Type

---------------------------- -------------------- ------------------

ID Not Null Number(30)

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [SQL] 的这些文章也感兴趣:

网络数据库设计入门(五)Access数据库及其基本操作  海量数据库的查询优化及分页算法方案
SQL应避免使用哪种格式的存储图象文件  SQL7数据库的存储引擎
ASA:如何根据系统表查数据库中的表和列的信息  关于如何在查询结果中添加自动编号
将一个表分开导出成不同文件的实用方法  索引视图
用SQLJ开发数据库  跨站式SQL注入数据库攻击和防范技巧
如何创建动态MSSQL中数据库  SQL数据语言的快速入门之三
SQL语言入门教程:第二课 创建表格  SELECT查询的应用(一)
口令中包含@导致无法连接数据库的解决方法  Castle-Active Record的使用方法
SQL循序渐进(20)Aliases 、In以及子查询  SQL数据库应聘人员面试时经常被问的问题
通用SQL数据库查询语句精华使用简介  巧用SQL的全局临时表防止用户重复登录