用SQL语言管理Oracle数据库

1,查看数据库的基本属性:
SELECT dbid 数据库编号,name 数据库名称,db_unique_name 全局名称,created 创建时间,log_mode 归档方式,open_mode 访问方式,platform_name 版本类型 FROM v$database;

2,查看所有数据库对象的类别和大小:
SELECT count(name) num_instances,type,sum(source_size) source_size,sum(parsed_size) parsed_size,sum(code_size) code_size,
sum(error_size) error_size, sum(source_size) +sum(parsed_size) +sum(code_size) +sum(error_size) size_required FROM dba_object_size GROUP BY type ORDER BY 2;

NUM_INSTANCES TYPE                      SOURCE_SIZE PARSED_SIZE  CODE_SIZE ERROR_SIZE SIZE_REQUIRED
------------- -------------------------- ----------- ----------- ---------- ---------- -------------
          264 FUNCTION                        90226      163614    286766          0        540606
        16417 JAVA CLASS                          0          0  79741994          0      79741994
          306 JAVA DATA                            0          0    9061460          0      9061460
          770 JAVA RESOURCE                        0          0  10738795          0      10738795
          843 PACKAGE                        5570226    5597328    2593462          0      13761016
          787 PACKAGE BODY                  16979979          0  20748156          0      37728135
          83 PROCEDURE                      195788      80300    266716          0        542804
          77 SEQUENCE                            0      21269          0          0        21269
          170 TRIGGER                        202051          0    176799          0        378850
        1859 TYPE                            897097    1438090    587281          0      2922468
          173 TYPE BODY                      326762      13013    922875          0      1262650

11 rows selected.


3,查看当前数据库的object数目:
SELECT decode(o.type#,1,'INDEX',2,'TABLE',3,'CLUSTER',4,'VIEW',5,'SYNONYM',6, 'SEQUENCE','OTHER') 对象类型 , count(*) 对象数目
FROM sys.obj$ o WHERE o.type# > 1 GROUP BY decode(o.type#,1,'INDEX',2,'TABLE',3,'CLUSTER',4,'VIEW',5,'SYNONYM',6,'SEQUENCE','OTHER')
union SELECT 'COLUMN', count(*) FROM sys.col$
union SELECT 'DB LINK' , count(*) FROM all_objects;

对象类型          对象数目
---------------- ----------
CLUSTER                  10
COLUMN                55879
DB LINK              49896
OTHER                23667
SEQUENCE                141
SYNONYM              20027
TABLE                  1634
VIEW                  3670

8 rows selected.

4,查看当前数据库的字符集:
SELECT userenv('language') FROM dual;
或者:
SELECT userenv('lang') FROM dual;
或者:
SELECT * FROM sys.props$ WHERE name='NLS_CHARACTERSET';

5,查看数据库文件的属性;
查看控制文件的命令如下
SELECT name FROM v$controlfile;
查看数据文件的命令如下
SELECT tablespace_name,file_id,bytes/1024/1024,file_name FROM dba_data_files ORDER BY file_id;
查看日志文件的命令如下
SELECT * FROM v$logfile;
查看日志文件的组名、成员数量、状态和大小,命令如下
SELECT group#,members,bytes,status FROM v$log;
查看临时文件的命令如下
SELECT name,bytes FROM v$tempfile;

6,查看数据库归档信息
查看数据库归档参数设置:
show parameter archive
查看数据库归档位置信息:
SELECT dest_id,dest_name,status,name_space,binding, target, destination FROM v$archive_dest;
查看归档日志文件信息:
SELECT name, FIRST_CHANGE#,next_change# FROM v$archived_log;
查看归档进程信息:
SELECT * FROM v$archive_processes;

7,查看数据库的后台进程
SELECT * FROM v$bgprocess;

8,查看系统的当前时间
1)查看系统当前时间的命令如下:
SQL> SELECT to_char(sysdate, 'yyyy"年"mm"月"dd"日", hh24"时":mi"分":ss"秒"') 现在时间 FROM dual;

现在时间
------------------------------------------------------------------------
2013年01月27日, 00时:11分:02秒

相关推荐