Oracle刪除歸檔日志及添加定時任務

 更新時間:2022年06月28日 15:11:49   作者:Lucky揚  
當ORACLE 歸檔日志滿了后,將無法正常登入ORACLE,需要刪除一部分歸檔日志才能正常登入ORACLE,下面這篇文章主要給大家介紹了關于Oracle刪除歸檔日志及添加定時任務的相關資料,需要的朋友可以參考下

一、刪除歸檔日志

1.切換用戶

# 切換至oracle用戶
su – oracle

2.使用RMAN工具

# 使用RMAN工具,刪除失效的歸檔日志
rman

注:RMAN(Recovery Manager)是一種用于備份(backup)、還原(restore)和恢復(recover)數據庫的 Oracle 工具。

3.連接本地數據庫

# 使用target命令連接本地數據庫
RMAN> connect target /

4.檢查控制文件和實際物理文件的差別

執行crosscheck命令,檢查控制文件和實際物理文件的差別,如果物理文件不存在于介質上,將標記為expired(失效/不可用),crosscheck之后,就可以刪除這些失效的歸檔日志了(執行腳本后,刪除的歸檔日志狀態會變為“失效”)

RMAN> crosscheck archivelog all;

5.同步檢查控制文件和實際物理文件的信息

# 刪除狀態為expired(失效/不可用)的歸檔日志
RMAN> delete expired archivelog all;

6.刪除n天前的歸檔日志

# 刪除 3 天前的歸檔日志:
RMAN> delete archivelog all completed before 'sysdate-3';
# 刪除 1 天前
RMAN> delete archivelog until time 'sysdate-1'

區別:第一條帶complete的語句,主要是刪除已備份過的歸檔,沒有備份的歸檔,不會被刪除。而第二個語句, 則會刪除掉歸檔,無論備份與否。

7.退出RMAN

# 退出RMAN
RMAN> exit

二、添加定時任務

1.創建歸檔日志刪除腳本

archivelog_clear.sh

#!/bin/bash
BACK_DIR=/home/oracle/clear_archlog/data
export DATE=`date +%F`
mkdir -p $BACK_DIR/$DATE
touch $BACK_DIR/$DATE/rman_backup.log
echo "--------------------------------`date`-------------------------------"
source ~/.bash_profile 
# 記錄日志rman_backup.log 可以后期檢查是否執行成功
rman target / >> $BACK_DIR/$DATE/rman_backup.log <<EOF             
# 把無效的expired的archivelog標出來
crosscheck archivelog all;
# 直接全部刪除過期的歸檔日志
#delete noprompt expired archivelog all;
# 直接刪除7天前所有的歸檔日志
delete noprompt archivelog all completed before 'sysdate-7';
exit
EOF
echo -e "\n"
echo "------------------------------ FINISHED ----------------------------"

2.授予腳本文件執行權限

#授予執行權限
chmod +x archivelog_clear.sh

3.測試歸檔日志刪除腳本

./archivelog_clear.sh

4.添加定時任務

輸入命令:crontab -e 編輯并且添加一行新的任務

30 3 15 * *   /home/oracle/archivelog_clear.sh

5.查看定時任務

crontab -l

總結

到此這篇關于Oracle刪除歸檔日志及添加定時任務的文章就介紹到這了,更多相關Oracle刪除歸檔日志內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Oracle新建用戶、角色,授權,建表空間的sql語句

    Oracle新建用戶、角色,授權,建表空間的sql語句

    Oracle創建用戶操作相信大家都不陌生,下面就為您介紹Oracle創建用戶的語法的相關知識,希望對您學習Oracle創建用戶的方面能有所幫助
    2012-07-07
  • SpringJDBC批量處理數據代碼示例

    SpringJDBC批量處理數據代碼示例

    這篇文章主要介紹了SpringJDBC批量處理數據代碼示例,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • oracle select執行順序的詳解

    oracle select執行順序的詳解

    本篇文章是對oracle select執行順序進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • oracle遠程連接服務器數據庫圖文教程

    oracle遠程連接服務器數據庫圖文教程

    這篇文章主要為大家詳細介紹了oracle遠程連接服務器數據庫的圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • Oracle安裝卸載圖文教程詳解

    Oracle安裝卸載圖文教程詳解

    這篇文章主要為大家介紹了Oracle安裝卸載的詳細圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Oracle表空間查看sql使用情況

    Oracle表空間查看sql使用情況

    我們在日常工作中查看表空間的使用情況大多數都是使用DBA。下面腳本之家小編給大家帶來了oracle表空間查看sql使用情況的方法步驟,需要的童鞋參考下
    2016-05-05
  • 在Oracle中導入dmp文件的方法

    在Oracle中導入dmp文件的方法

    這篇文章主要介紹了如何在Oracle中導入dmp文件,很簡單,但很實用,需要的朋友可以參考下
    2014-09-09
  • Oracle在表中有數據的情況下修改字段類型或長度的解決方法

    Oracle在表中有數據的情況下修改字段類型或長度的解決方法

    這篇文章主要介紹了Oracle在表中有數據的情況下修改字段類型或長度,修改其某個字段的類型或改變他的長度,由于表中有數據,不能直接修改,需要換個方法,接下來通過本文給大家介紹下解決方法,需要的朋友可以參考下
    2022-10-10
  • oracle中文亂碼的解決方法

    oracle中文亂碼的解決方法

    這篇文章主要介紹了oracle中文亂碼的解決方法,服務器系統是linux,支持中文顯示,數據庫字符集是zhs16gbk,往數據庫里建表,插入中文數據,sqlplus 連接到數據庫,中文顯示亂碼,需要的朋友可以參考下
    2014-03-03
  • 整理Oracle數據庫中數據查詢優化的一些關鍵點

    整理Oracle數據庫中數據查詢優化的一些關鍵點

    這篇文章主要介紹了Oracle數據庫中數據查詢優化的一些關鍵點的整理,包括多表和大表查詢等情況的四個方面的講解,需要的朋友可以參考下
    2016-01-01

最新評論

美丽人妻被按摩中出中文字幕