Linux下使用expdp定時備份Oracle資料庫
- 使用Xshell連線伺服器輸入使用者名稱密碼
- 建立備份資料庫儲存路徑
- 在根目錄下建立oradata目錄
- 在oradata目錄下建立databak用於存放shell指令碼
- 在oradata下建立dum用於存放備份的資料庫以及備份日誌
- 使用sqlplus連線資料庫建立備份資料庫目錄,並授予所備份資料庫使用者讀寫許可權
- –使用sqlplus連線資料庫
- sqlplus / as sysdba;
- –查詢當前所有的目錄
- select * from dba_directories;
- –建立目錄dump_cmis並給cmis使用者授權
- create directory dump_cmis as ‘/oradata/dum’;
- grant read,write on directory dump_cmis to cmis;
- –使用quit或exit退出sqlplus
- exit
- 編寫備份資料庫的shell指令碼並授予執行其許可權
- #編寫備份資料庫指令碼cmisexp.sh
- vi cmisexp.sh
- #!/bin/sh
- #ORACLE系統環境變數設定
- ORACLE_BASE=/ora11g/app/oracle
- export ORACLE_BASE
- ORACLE_HOME=/ora11g/app/oracle/product/11.2.0
- export ORACLE_HOME
- ORACLE_SID=cmis
- export ORACLE_SID
- PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
- export PATH
- NLS_LANG=american_america.zhs16gbk
- export NLS_LANG
- CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/product/jlib
- export CLASSPATH
- #日誌路徑
- CMISLOGPATH=/oradata/dum
- #獲取今天系統日期
- now=
date +%Y%m%d_%H%M%S
- DATE=
date +%Y%m%d
- DAY=
date +%d
- ##備份此使用者下的資料
- bakuser=cmis
- #執行備份的使用者密碼
- bakpass=cmis
- echo “開始備份資料庫”$DATE
- #執行備份
- expdp $bakuser/$bakpass schemas=$bakuser dumpfile=cmis_$now.dmp
- DIRECTORY=dump_cmis logfile=cmis_$now.log
- echo “資料庫備份完成”$DATE
- #獲取昨天日期
- LASTYEAR=
TZ=CST+16 date +%Y
- LASTMONTH=
TZ=CST+16 date +%m
- LASTDATE=
TZ=CST+16 date +%Y%m%d
- #進入日誌資料夾中
- cd ${CMISLOGPATH}
- #日誌處理,將當前日誌儲存為昨天日誌,並清空當前日誌
- cp cmis_$now.log cmis_${LASTDATE}.log
- >cmis_$now.log
- #月初日誌處理
- if [ “$DAY” -eq “1” ]
- then
- tar -cvf cmis_${LASTYEAR}${LASTMONTH}log.tar cmis${LASTYEAR} ${LASTMONTH}*.log
- tar -cvf cmis_${LASTYEAR}${LASTMONTH}dmp.tar cmis${LASTYEAR}${LASTMONTH}*.dmp
- rm -f cmis_${LASTYEAR}${LASTMONTH}*.log
- >logdeal.log
- rm -f cmis_${LASTYEAR}${LASTMONTH}*.dmp
- >dmpdeal.log
- fi
- echo ${LASTDATE}”的Oracle資料庫cmis使用者備份日誌遷移成功!”>>logdeal.log
- echo ${LASTDATE}”的Oracle資料庫cmis使用者備份檔案遷移成功!”>>dmpdeal.log
- #給shell指令碼授予執行許可權
- chmod +x cmisexp.sh
- #執行shell指令碼
- ./cmisexp.sh
- Linux設定定時任務
- #編輯當前使用者的任務
- crontab -e
- #輸入i進入插入模式,設定每天9:30備份一次資料庫
- 30 9 * * * /oradata/databak/cmisexp.sh
- #進入命令模式,輸入x,儲存退出
- :x
相關推薦
Linux下使用expdp定時備份Oracle資料庫
使用Xshell連線伺服器輸入使用者名稱密碼 建立備份資料庫儲存路徑 在根目錄下建立oradata目錄 在oradata目錄下建立databak用於存放shell指令碼 在oradata下建立dum
Linux下mysql定時備份及恢復
備份1.資料庫定時備份工作指令碼:(日期時間作為名稱的壓縮檔案,解壓開是sql指令碼)/root/backup/script/backup_mysql.sh2.備份輸出路徑:/root/backup/mysql3.執行計劃任務的命令:#crontab -e 開啟計劃任務編輯器
linux 使用python3 定時備份mysql資料庫指令碼 修改配置直接可用。親測!
# Time : 2018/12/24 # Author : [email protected]#依賴包 pip install schedule#注意事項#1. linux中 使用os.system()包裹的命令有特殊字元如)(請使用轉義\)\(或'(' ')'#2. 輸入的資料庫密碼 -p+密
linux伺服器上定時備份 mysql 資料庫
<span style="font-size:14px;color:#330033;">#!/bin/bash db_name=enocp_sta file_name="$db_name"_$(date +%Y%m%d_%H%M) dir=/root/backup/mysql/`date +%Y_
Linux下通過mysqldump備份MySQL資料庫成sql檔案
階段1:傻瓜式全備份 mysqldump -h ip地址 -uusername -ppassword -A >~/name.sql 此種情況將整個資料庫(結構和資料)匯出備份成一個sql檔案 階段2:適當的調整引數達到不同的備份效果 我們先help一下 mysqldump --hel
Linux下用unixODBC連線Oracle資料庫的配置
1.環境 1[[email protected] ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 5.9 (Tikanga) [[email protected]
linux下SVN定時備份
利用svnadmin hotcopy可以實現完全備份,但不能進行增量備份。svnadmin hotcopy是將整個庫都“熱”拷貝一份出來,包括庫的鉤子指令碼、配置檔案等;任何時候執行這個指令碼都得到一個版本庫的安全拷貝,不管是否有其他程序正在使用版本庫。 優點是:
linux下SVN定時備份並刪除歷史備份
sco 利用 exe abs tabs file 腳本 壓縮 安全 利用svnadmin hotcopy可以實現完全備份,但不能進行增量備份。svnadmin hotcopy是將整個庫都“熱”拷貝一份出來,包括庫的鉤子腳本、配置文件等;任何時候運行這個腳本都得到一個版本庫的
window下oracle數據庫expdp定時備份
compress res 當前 http com 命令 amp remote pscp window下的批處理腳本如下: rem @echo off rem 獲取當前日期字符串 for /f "tokens=1,2,3 delims=/- " %%a in (
linux下使用crontab定時備份MYSQL資料庫
第一步:在伺服器上配置備份目錄程式碼: -------------------------------------------------------------------------------- mkdir /var/lib/mysqlbackup cd /var/li
Linux下備份oracle資料庫
轉自:https://blog.csdn.net/li951383937/article/details/52475982今天遇到需要備份oracle資料庫在Linux環境下,以前沒有弄過,今天嘗試了一次,特此記錄。 首先1:我們需要連結到安裝oracle的機器上,我是使用的
在linux下定期備份oracle資料庫
http://hi.baidu.com/tianfu_xue/blog/item/c26c501ce6bd319286d6b6eb.html 2011-06-29 15:42 在/u01/app/oracle/product/11.2.0/db_1下建立back.sh備份資
linux平臺的oracle11201借用expdp定時備份數據庫-1225
body source pro scripts table bsp $path base profile 備份腳本如下: #!/bin/bashexport ORACLE_BASE=/data/oracle export ORACLE_HOME=$ORACLE
Linux 定時備份oracle庫的數據
腳本 變量 style 數據 sar dmp ble %d nbsp 思路:1.使用crontab來實現定時任務2.用shell腳本來執行exp備份指令 ************************************** 配置好crontabcrontab -e
Windows定時任務備份Oracle資料庫(批處理bat)
參考文獻: http://www.jb51.net/article/98732.htm https://blog.csdn.net/woshixuye/article/details/18050769 auto_back_tie.bat REM 建立目錄 set
linux定時備份mysql資料庫
1、檢視磁碟空間情況: [[email protected] backup]# df -h 檔案系統 容量 已用 可用 已用% 掛載點 /dev/mapper/centos-root 17G 2.7G 15G 16
linux下使用定時任務完成mysql定期備份
Crontab相關 首先,定時任務需要安裝crontab 執行crontab 命令如果報command not found,就表明沒有安裝。 crond 是linux用來定期執行程式的命令。當安裝完成作業系統之後,預設便會啟動此任務排程命令。crond命令每分鍾
Linux中實現定時備份資料庫
需求分析 1)每天凌晨 2:10 備份 資料庫 mydatebase 到 /data/backup/db 2)備份開始和備份結束能夠給出相應的提示資訊 3)備份後的檔案要求以備份時間為檔名,並打包成 .tar.gz 的形式,比如:2018-12-12_230201.tar.gz 4) 在備
linux自動備份oracle資料庫並上傳到備份伺服器 指令碼實現
實際專案中,備份資料是不可缺少的一步,完成資料的自動備份減少個人的工作量,是我們的目標。之前很少寫過指令碼,不過這些簡單的操作還是可以做到的!話不多說,開始具體介紹: oracle版本:10.2.0 作業系統:linuxredhat6.3 具體操作: (1)在伺服器上建立備