DSM設定時間伺服器導致根據檔案建立時間刪除出現問題
今天在做oracle的rman定時備份時,出現一個問題。oracle伺服器掛在了一個NFS網路儲存,oracle的定時任務剛把資料檔案備份到網路儲存,就被刪除了(指令碼中依據資料夾建立時間清理rman備份資料夾)
rman定時備份指令碼:
#!/bin/bash #----------------------------------------------------------------------------------------------# # # # *********** rman備份資料庫********* # # # # 備份路徑:opt/oracle/backup # # # # 備份路徑掛載了網路儲存 # # # # 備份集都有一個單獨的資料夾,每日一次 # # # # 每次備份後會刪除指定天數前的備份資料夾 # # # # 作者:mtb # # # # 時間:2018.7.17 # # # # # #----------------------------------------------------------------------------------------------# #備份資料夾的名稱$RMAN_BASE/date_today格式 #如/opt/oracle/backup/2018-03-23 #備份資料夾的根目錄,每個備份集儲存格式$RMAN_BASE/date RMAN_BASE='/opt/oracle/backup' #引入oracle的環境變數 source /home/oracle/.bash_profile #date格式為xxxx-xx-xx-xx:xx:xx #date_today=$(date +"%Y-%m-%d") #獲取系統當前日期時間 date_today=$(date +"%Y-%m-%d-%H:%M:%S") #當前備份存放路徑為$RMAN_BASE/$date_today BACKUP_DIR=$RMAN_BASE/$date_today #設定刪除1天之前的備份檔案 days=1 #如果備目錄不存在則建立 if [ ! -e $BACKUP_DIR ] then mkdir -p $BACKUP_DIR fi #rman備份資料檔案及controlfile,spfile rman target / log=$BACKUP_DIR/backupall_rman_$date_today.log<<EOF run { Allocate channel rman_1 type disk; Allocate channel rman_2 type disk; Allocate channel rman_3 type disk; sql 'alter system switch logfile'; backup database format '$BACKUP_DIR/df_%T_%U.dbf'; backup current controlfile format '$BACKUP_DIR/cf_%T_%U.ctf'; backup spfile format '$BACKUP_DIR/sp_%T_%U.sp'; release channel rman_1; release channel rman_2; release channel rman_3; } crosscheck backup; delete expired backup; delete obsolete recovery WINDOW OF 7 DAYS; list backupset; exit; EOF; #刪除$RMAN_BASE目錄下滿足2018-開頭且超過指定天數的資料夾 find $RMAN_BASE/* -type d -name "2018-*" -a -mtime +$days -exec rm -rf {} \;
[[email protected] 2018-07-17-15:54:08]$ crontab -l
1 1 * * * /home/oracle/test.sh
[[email protected] 2018-07-17-15:54:08]$
使用了根據資料夾的建立時間刪除指定天數之前的資料夾,以防檔案佔用太多容量,發現剛備份完就被刪除
確定是最後面的刪除語句刪除,排查發現NFS網路儲存的時間是2014年,而現在時間是2018年,於是修改NFS(群輝的)時間
新增時間伺服器同步時間解決問題
相關推薦
DSM設定時間伺服器導致根據檔案建立時間刪除出現問題
今天在做oracle的rman定時備份時,出現一個問題。oracle伺服器掛在了一個NFS網路儲存,oracle的定時任務剛把資料檔案備份到網路儲存,就被刪除了(指令碼中依據資料夾建立時間清理rman備份資料夾) rman定時備份指令碼: #!/bin/bash #---
獲取檔案建立時間
實現效果: 知識運用: FileInfo類的CreationTime屬性 //獲取或設定當前FileInfo物件的建立時間 public DataTime CreationTime { get;set } 實現程式碼: private void
C#獲取檔案建立時間的程式碼
下面資料是關於C#獲取檔案建立時間的內容,應該是對各朋友也有用處。using System;using System.IO;class Class1 {static void Main(string[] args) {string[] cla = Environment.GetCommandLineArgs(
C++ win環境修改檔案建立時間、最後的修改時間和最後的訪問時間
引言 應用做檔案處理後,輸出檔案時間為當前的系統時間,但往往我們需要被建立的檔案具有指定的建立日期、最後的修改日期和最後的訪問日期。這裡就使用win系統函式SetFileTime設定檔案時間資訊做完整例項分析。 SetFileTime函式說明 MSDN
php獲取檔案建立時間、修改時間、訪問時間
filemtime ( string filename ) 返回檔案上次被修改的時間,出錯時返回 FALSE。時間以 Unix 時間戳的方式返回,可用於 date()。 例如:$a=filemtime("log.txt"); echo "修改時間:".date("Y-m-d H:i:s
java獲取檔案建立時間
方案一: private static Date getCreateTime(String fullFileName){ String str = null; try { Process p = Runtim
Linux使用筆記: 設定Samba伺服器中新建檔案/目錄的許可權
From: http://easwy.com/blog/archives/set-file-directory-attribute-for-linux-samba/ 通過Samba伺服器實現windows和Linux之間的檔案共享,相信是絕大多數人的選擇。通常我們都會使
根據ajax從伺服器獲取資料的時間和ID,根據最近的時間,顯示一個記錄重複ID的數字
success:function(data){ if(data.length>0){ var map = {};for (var i in data) { var user_id = data[i]["USER_ID"]; if (map[user_id
手動操作使用者相關檔案建立、刪除使用者
新建 user001使用者 1、在passwd檔案新增內容:vim /etc/passwd 2、在shadow檔案新增內容:vim /etc/shadow 3、在group檔案新增內容,vim /etc/group 4、在gshadow檔案新增內容,vim /etc/gsh
Linux資料夾檔案建立、刪除;複製,移動
一 Linux刪除資料夾命令 linux刪除目錄很簡單,很多人還是習慣用rmdir,不過一旦目錄非空,就陷入深深的苦惱之中,現在使用rm -rf命令即可。 直接rm就可以了,不過要加兩個引數-rf 即:rm -rf 目錄名字 刪除目錄、檔案 rm(re
用windows搭建ntp時間伺服器(從上級獲取時間,併為客戶機提供時間)
原文連結:https://blog.csdn.net/dsg333/article/details/44854221. 將伺服器型別更改為 NTP。為此,請按照下列步驟操作:a. 單擊“開始”,單擊“執行”,鍵入 regedit,然後單擊“確定”。 b. 找到並單擊下面的
.net,C#,Ftp各種操作,上傳,下載,刪除檔案,建立目錄,刪除目錄,獲得檔案列表...
using System; using System.Collections.Generic; using System.Text; using System.Net; using System.IO; using System.Windows.Forms; namespace ConvertData {
java檔案建立、刪除、讀取、寫入操作大全
複製檔案 1.以檔案流的方式複製檔案 public void copyFile(String src,String dest) throws IOException...{ FileInputStream in=new FileInputStream(s
idea建立新的類(檔案)時,自動新增作者建立時間(檔案註釋)等資訊的設定方法
一、文件註釋(設定後建立新檔案自動生成如下 二、設定方式(如下圖)調出設定選項快捷鍵 Mac下快捷方式Command + , 寫法 釋義 ${PACKAGE_NAME} n
linux下檔案的建立時間、訪問時間、修改時間和改變時間
Linux系統中沒有命令可以確切的檢視一個檔案的生成時間,但是可以知道訪問時間,修改時間,改變時間。 可以通過stat命令檢視一個檔案的訪問時間,修改時間,改變時間: 以下為三個時間的區別: 1、訪問時間(accesstime):讀取一次檔案的內容,該時間
Linux系統touch命令改變檔案的建立時間
使用touch命令:將檔案的時間修改為2013年1月21日19點25分 touch -c -m -t 201301211925 version.dat 前提是必須有這個檔案。 解釋說明: -c表示不建立檔案 --no-create do
Spring Boot Cache + redis 設定有效時間和自動重新整理快取,時間支援在配置檔案中配置
分享一下我老師大神的人工智慧教程吧。零基礎,通俗易懂!風趣幽默!http://www.captainbed.net/ 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!
Eclipse中建立java類的時候自動設定作者資訊和建立時間
window—>preferences—>Java—>Code Stype—>Code Templates Code—>New Java files 點選Edit ${filecomment} ${package_declaration} /** * @
solaris修改目錄、檔案的建立時間(touch -t)
[[email protected]:/test]# ls -ll|grep dirtest1
根據路徑建立檔案的最佳方式
第一種 String path = "D://app/upload/"; File file = new File(path); try { file.createNewFile(); } catch (IOException e) { log.