游客:
注册
|
登录
|
帮助
网友俱乐部
»
数据库操作
»
Oracle教程
» 通过sql语句获取数据库的基本信息
网友生活网
|
网友学堂
如何获得金币?
诚招斑竹
IP归属地查询 PR查询 收录查询 whois查询
免费超短2级域名,your.jpy.cc
传世私服
|
传奇世界私服
注册亚洲交友中心,找个人来同居吧!
免费存储空间,免费网络硬盘
‹‹ 上一主题
|
下一主题 ››
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
标题: 通过sql语句获取数据库的基本信息
ljjk5
元帅
UID 46706
精华
1
积分 99426
帖子 49690
威望 554
金币 48489
热心 505
阅读权限 100
注册 2007-2-25
状态 离线
#1
使用道具
发表于 2007-3-9 13:21
资料
个人空间
主页
短消息
加为好友
通过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.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
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 命令跟在下面共享
网友
ljjk5
签名 - 网友社区
===
[广告]
免费域名(Free Subdomain)
免费空间(Free hosting)
PR查询(Google Pagerank)
投票
交易
悬赏
活动
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
个人空间管理
基本概况
流量统计
客户软件
发帖量记录
论坛排行
主题排行
发帖排行
积分排行
在线时间
管理团队
管理统计
当前时区 GMT+8, 现在时间是 2008-12-5 20:32
信产部ICP备案:
京ICP备05066424号
北京市公安局网监备案:1101050648号
Powered by
Discuz!
5.5.0
TOP
清除 Cookies
-
联系我们
-
网友俱乐部
-
Archiver
-
WAP