数据库

本类阅读TOP10

·SQL语句导入导出大全
·SQL Server日期计算
·SQL语句导入导出大全
·SQL to Excel 的应用
·Oracle中password file的作用及说明
·MS SQLServer OLEDB分布式事务无法启动的一般解决方案
·sqlserver2000数据库置疑的解决方法
·一个比较实用的大数据量分页存储过程
·如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码
·SQL中两台服务器间使用连接服务器

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
通过sql语句获取数据库的基本信息

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

您可以通过以下几个sql 可以立即了解系统的状况和数据库的状态(仅献给习惯使用sql/plus的人 呵呵 )
(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.2  显示表空间限额的信息
 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

查询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 命令跟在下面共享

 




相关文章

相关软件