Oracle数据库SCN详解
SCN号概述 SCN是当Oracle数据库更新后,由DBMS自动维护去累积递增的一个数字。Oracle数据库中一共有4种SCN分别为系统检查点SCN: 系统检查点SCN位于控制文件中,当检查点进程启动时(ckpt),Oracle就把系统检查点的SCN存储到控制文件中。该SCN是全局范围的,当发生文件级别的SCN时,例如将表空间置于只读状态,则不会...
Oracle手动建库
1,编辑Oracle profile[root@vmoel5u4 ~]# su - oracle[oracle@vmoel5u4 ~]$ vi ./.bash_profilePATH=$PATH:$HOME/binexport PATHexport ORACLE_BASE=/dat/DBSoftware/oracleexport ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export ORACLE_SID=NACECexport PATH=$ORACLE_HOME/jdk/bin:$ORACLE_HOME/bin:$P...
Oracle rowid 详解
讨论的是关于oracle从8i开始引进object的概念后的rowid,即扩展(extended)的rowid:1. rowid的介绍先对rowid有个感官认识:SQL> select ROWID from Bruce_test where rownum<2;ROWID ------------------ ---------- AAABnlAAFAAAAAPAAA ROWID的格式如下:数据对象编号 &nbs...
恢复Truncate表的方法
很多人觉得把表truncate后,就无法恢复了,真的吗?意外Truncate表的事情时有发生,ODU提供了方便的恢复Truncate表的功能。被Truncate的表,只要原来的空间没有被重用(即数据被覆盖),则数据都是可以恢复的。(类似ODU的工具还有DUL、AUL等,大家可以研究一下,网络上都有安装包,但不管哪一种工具,都有它的弊端)...
批量删除数据方法
在一个Oracle数据库运行过程中,有时候会遇到要批量删除数据的情况,如一个保存历史数据的表中有大量的数据已经不需要保留,要将这部分数据删除。通常采用的方法如下:1、使用TRUNCATE命令进行删除。 如果是整个表的数据都要删除的话,使用TRUNCATE TABLE命令是理想的选择。它删除了表中的所有数据,并且因为不写...
使用RMAN备份在另外一台机器上还原数据库
我们在工作中,会遇到各式各样的问题、需求,而为了解决这些问题,我们一定要尽量找到最快速、最完美的解决方法。作为一名DBA,对工作的责任和态度尤其重要,遇到问题,先要仔细思考,可能有的时候一条命令下去,引发的连锁反应就会很多很多。举个例子,前段时间我的领导要求我做一套和我们生产环境一模一样的数据库,有...
限制IP访问数据库
在Oracle中,有3种办法可以限定特定IP访问数据库。第一种是利用登录触发器,如下:CREATE OR REPLACE TRIGGER CHK_IP_LHR AFTER LOGON ON DATABASEDECLARE V_IPADDR VARCHAR2(30); V_LOGONUSER VARCHAR2(60);BEGIN SELECT SYS_CONTEXT('USERENV', 'IP_ADDRESS'), &nbs...