Oracle系统管理和系统资料获取的一些基本命令
资料获取自学习何明著作<<Oracle DBA 培训教程>>第二版之时.其中dba_开头的表需要有sysdba权限才能访问.
1. 获取数据库名字,创建日期,当前模式,日志模式等等:
SELECT name,created,log_mode,open_mode from v$database;
2. 获取运行实例的主机名,实例名,版本:
SELECT host_name,instance_name,version from v$instance;
3. 获取组件版本信息.
SELECT * from v$version;
4.获取控制文件信息.
SELECT * from v$controlfile;
5.获取日志文件信息.
SELECT * from v$logfile;
和
SELECT group#, members, bytes, status, archived from v$log;
6. 获取备份和恢复策略,以及归档文件位置.(也需要sysdba权限)
archived log list
7. 如果上面输出中的存档终点的值不是直接的目录而是 USE_DB_RECOVERY_FILE_DEST 的话,用以下语句获取最终信息.
SELECT name,value from v$parameter WHERE name = 'db_recovery_file_dest';
8.获取表空间信息.
SELECT tablespace_name, block_size, status, contents, logging from dba_tablespaces;
9. 获取数据文件信息.
SELECT file_id, file_name, tablespace_name, status, bytes from dba_data_files;
10. 在没有sysdba权限时,可以用以下语句来获取数据文件的储存位置信息.
SELECT name from v$datafile;
11. 获取用户信息.
SELECT username,created from dba_users;
相关文档:
select * from sys.smon_scn_time;
--scn 与时间的对应关系
每隔5分钟,系统产生一次系统时间标记与scn的匹配并存入sys.smon_scn_time表。
select * from student as of scn 592258
就可以看到在这个检查点的表的历史情况。
然后我们恢复到这个检查点
insert into student select * from student a ......
oracle的分析函数over 及开窗函数
一:分析函数over
Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是
对于每个组返回多行,而聚合函数对于每个组只返回一行。
下面通过几个例子来说明其应用。 &nb ......
介绍一下内联、左联、右联
一.先看一些最简单的例子
例子
Table A
aid adate
1 a1
2 a2
3 a3
TableB
bid bdate
1 b1
2 b2
4 b4
两个表a,b相连接,要取出id相同的字段
select * from a inner join b on a.aid = b.bid这是仅取出匹配的数据.
此时的取出的是:
1 a1 b1
2 a2 b2
那么left join 指:
select * ......
虽然本人没有验证过,不过据说通过ADODB访问Oracle对性能影响很小.而且ADODB比OCI8也要方便很多,毕竟许多东西都再次封装过.不过不管怎么说这都在中间又加上了一层,理论上来说出现问题的几率和解决问题的难度都变大了.而Oracle又经常用在不能随便出问题的环境,所以想必想要直接使用OCI的情况也不少.以下就是我的例子:
<?p ......
1.数学函数
①绝对值
l S:select abs(-1) value
l O:select abs(-1) value from dual
②取整(大)
l S:select ceiling(-001) value
l O:select ceil(-001) value from dual
③取整(小)
l S:select floor(-001) value  ......