设为首页 加入收藏

TOP

oracle新手随记10
2015-11-21 01:59:21 】 浏览:4784
Tags:oracle 新手
1. unpivot注意点:select new_col from (select ename,job,to_char(sal) as sal,null as c from emp)
unpivot include nulls (
new_col for old_col in(ename,job,sal,c)
);
(1).转换成一列的值要注意它们的类型,在这里sal是number类型,而其他的都是char类型,所以一定要to_char(sal),否则会报错:
第 3 行出现错误:
ORA-01790: 表达式必须具有与对应表达式相同的数据类型
(2).如果不加include nulls,那么空值行则不会显示,:
NEW_COL
----------
SMITH
CLERK
800
--空值行
ALLEN
SALESMAN
1600
--空值行
WARD
SALESMAN
1250


JONES
MANAGER
2975


MARTIN
SALESMAN


2. rownum的执行顺序在order by ,group by之前执行的!

3. 通过mod函数我们可以进行隔n-1行取值,mod(x,n)!!!

4. 利用向上取整函数ceil或者向下取整函数floor可以进行分组,celi(rn/n)利用rownum/n来进行分组,每组有n个成员,但一共分成多少组并不确定!而Ntile(n)函数则是表示分成n个小组每组多少人,并不确定!!



5. rman备份
快闪恢复区:存储与备份和恢复数据文件以及相关的存储区 相关视图:DB_recovery_file_dest_size和db_recovery_file_dest
show pararmeter .....
alter system set ....=....

6. 建立rman到数据库的连接

c>rman 启动rman程序
rman> connect target 用户名/密码 (这里的用户名需要有用sysdba的权限)
备份集:逻辑数据集合,由多个备份片所组成,一般一个通道生成一个备份集,
印象备份:不产生备份集
rman>backup as copy database ---备份整个数据库
rman>show all --显示rman的所有配置参数
rman>configure default device type to disk(磁盘)/stb(磁带) --建议使用磁盘
rman>configure backup optimization on; --打开备份优化


7.备份控制文件
当没有指明使用快闪恢复区时,需用format参数来指明备份文件放在哪里
rman>backup current controlfile format ‘f:\....\backup_ctl_%u.dbf’;
当指明使用快闪恢复区的时候
rman>backup current controlfile;
rman>configure controlfile autobackup fromat for device type disk to ‘目录/.%f’;
rman>configure controlfile autobackup on; --configure说明是配置的意思,配置控制文件自动备份
rman>backup as compressed backupset database plus archivelog delete all input;
解释:不但备份数据文件同时备份控制文件,在备份完成归档日志文件后,将已经备份的归档日志文件冲存储目录中删除,这样即备份了归档日志文件,同时又清空了归档空间!
rman>backup tablespace tablespace_name; 中间加一个as compressed backupset 表示压缩备份:rman>backup as compressed backupset tablespace tablespace_name;


8. rman在备份时总会检查数据块是否发生物理损坏,为了加快备份速度而不希望rman会去检查时,可以关闭这个特性,因为,一旦,rman 检查出有物理损坏的时候
就会停止备份,这样会很麻烦:rman>backup nochecksum tablespace users tag='weekly_backup';
如果检查发现了坏块,那么就要用以前的rman备份去恢复这个坏块。

9.rman的增量备份

rman>backup incremental level 0 database;
rman>backup incremental level 1 database;

10.增量备份总是会全库扫描,但只备份更改的数据块,所以,我们可以启动块更改追踪特性,ctwr进程会把被更改的数据块的地址写到块追踪文件中去,

启动块追踪特性:alter database enable block_change_tracking Using file ‘E:/............/abc.log’;视图:v$block_change_tracking


11.rman理解:使用恢复目录数据库来进行备份目标数据库,比如有ABCDE,5个数据库,我们可以先创建一个恢复目录数据库F来进行备份这几个数据库,
(ps:其实恢复目录数据库就是一个很平常的数据库,我们可以选取任何一个数据库作为恢复目录数据库,然后利用rman工具来对目标数据库进行恢复),
然后,登录到恢复目录数据库中,在创建一个用户,然后使用给用户登录恢复目录数据库,进行创建恢复目录catalog,其实可以将catalog理解为一张表,
里面存出的是在备份目标数据库的时候的一些备份信息(元数据),比如备份时间,备份目的地,

12.plsql是通过引擎来执行的,它是在服务器端执行,然后将结果返回给用户端
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Win8(64)安装Oracle11g+PL/SQL 下一篇oracle使用using关键字

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目