Oracle 删除归档日志脚本
归档日志记录着数据库的操作记录,是做数据恢复的依据,如果数据库开启了归档模式,那么就会产生大量的归档日志,当然如果有RMAN备份的话,可以在备份之后删除已经备份过的日志,如果是没有采用rman备份的话,就需要自己来删除这写归档日志。 下面的几个脚本就减轻了DBA的工作量。
Linux 平台:
0 2 * * * /home/oracle/scripts/del_archive.sh > /home/oracle/scripts/del_archive.log
[oracle@hfcc-svr-newccsdb1 ~]$ more /home/oracle/scripts/del_archive.sh
#!/usr/bin/ksh
# create by tianlesoftware
export ORACLE_HOME=/dba/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
export SHELL_DIR=/home/oracle/scripts
del_seq=`ls /u01/newccs_archive/|head -1|cut -f2 -d_`
echo $del_seq
$ORACLE_HOME/bin/sqlplus -s "sys/PWD@SID as sysdba" <<eof >/home/oracle/scripts/max
_sn.log
set head off;
set feedback;
select max(sequence#) from v\$log_history;
exit;
eof
max_sn=`cat /home/oracle/scripts/max_sn.log|awk '{print $1}'|grep ^[0-9]`
max_sn=`expr $max_sn - 5`
echo $max_sn
while [ $del_seq -lt $max_sn ]
do
rm /u01/archive/1_"$del_seq"_692846987.dbf
del_seq=`expr $del_seq + 1`
echo $del_seq
done
或者用脚本:
del_arc.sh
find /u01/backups -mtime +10 -name "*.dbf" -exec rm -rf {} \;
windows 平台:
del_arc_orcl.bat
forfiles /p d:\arc_orcl /m *.DBF /d -3 /c "cmd /c del @file"
将del_arc_orcl.bat 添加到计划任务即可.
相关文档:
先看下面的例子:oracle中两个系统表.emp,dept.
example:
1:not exists(not in)
not exists:
这条语句返回select * from scott.dept d where e.deptno=d.deptno and d.deptno=10条件满足的结果集.也就是说,
返回的结果集中不存在d.deptno=10结果集的记录,即emp表中没有dept表中d.deptno=10的记录.
SQL& ......
rom:http://www.psoug.org/reference/dbms_metadata.html
General Information
Source
{ORACLE_HOME}/rdbms/admin/dbmsmeta.sql
First Available
9.0.1
几个常用过程或函数:
GET_DDL
Fetch DDL for objects
dbms_metadata.get_ddl(
object_type IN VARCHAR2,
name IN VA ......
The following items are available in the network listener configuration file (listener.ora).
* Listener Address Section
* SID_LIST_listener_name Static Service Section
* Control Parameters
The listener.ora file is located in $ORACLE_HOME/n ......
-- 序列操作 --
-- 创建序列
CREATE SEQUENCE u_sales_SEQ INCREMENT BY 1 START WITH 1 MINVALUE 1 NOCYCLE NOCACHE NOORDER;
-- 查出所有存在的序列
SELECT * from user_sequences
-- 删除序列
DROP SEQUENCE U_SALES_SEQ;
-- 查出下一个序列ID
SELECT U_SALES_SEQ. ......
一:建立用户,用户组:
groupadd dba
groupadd oinstall
useradd oracle -g oinstall -G dba
passwd oracle
二:修改说明,改为as4
vi /etc/redhat-release
修改后的内容:
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
#Red Hat Enterprise Linux Server release 5.4 (Tikanga)
三:改host(不必,网上说 ......