oracle導出表結構語句「oracle導出表數據語句」

相信大家在客戶現場維護的時候一定會適時地做一些備份操作,對關鍵業務建立完備的備份機制,本篇文章就是給大家一個linux環境下的參考。

一、 用imp/exp實現數據的導入導出

(一)環境配置

1.執行環境:

exp/imp可以在客戶端執行也可以在服務器端執行,在客戶端執行需要先安裝有oracle的客戶端,如果是linux系統,就是以oracle用戶登錄,在控制台下執行。

2.如果沒有配置oracle的exp/imp命令的環境變量,則進入到oracle的bin目錄:

# cd /opt/oracle_11/app/oracle/product/11.2.0/dbhome_1/bin

3.配置臨時環境變量:

# export ORACLE_HOME=”/opt/oracle_11/app/oracle/product/11.2.0/dbhome_1″

# export ORACLE_SID=glassfish

4.切換到oracle用戶

# su oracle

(二)exp/imp方式的導入導出

注意:

紅色標記部分為可按需求修改部分。

二、 數據泵實現數據導入導出的步驟

注意:

紅色標記部分為可按需求修改部分,導出部分表時可在”Expdp [用戶名A]/[密碼]@[數據庫名]“後跟”TABLES=需要導出的部分表的表名”。

三、 Linux環境下數據泵實現手動及自動備份

(一)創建腳本文件

命令格式: touch 路徑/文件名.sh

例如:

輸入命令:touch /home/backup.sh

(二)寫備份腳本

首先進入腳本:vi命令

vi /home/backup.sh

在腳本內寫入:

(三)執行腳本文件

oracle數據庫:數據的導入導出及備份

文本框: #! /bin/shexport NLS_LANG=”AMERICAN_AMERICA”.UTF8export ORACLE_BASE=/home/oracle/appexport ORACLE_HOME=
/home/oracle/app/product/11g/db_1export ORACLE_SID=orclexport PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin#設置備份文件格式#設置刪除備份文件的格式,當前為刪除1個月前的備份backuptime=`date +”%Y%m%d%H”`deletetime=`date -d “7 day ago” +”%Y%m%d%H”`#開始刪除1個月前的備份rm -f /home/oracle/backup/orcl_$deletetime.dmprm -f /home/oracle/backup/orcl_$deletetime.log#開始備份expdp system/oracle@orcl file=/home/oracle/backup/system_$backuptime.dmp log=/home/oracle/backup/system_$backuptime.log schemas=systemexpdp system/oracle@orcl file=/home/oracle/backup/system_$backuptime.dmp log=/home/oracle/backup/system_$backuptime.log schemas=system

1、手動執行腳本文件

命令格式:sh 路徑/文件名.sh

例如:sh /home/backup.sh

2、定時自動執行腳本

(1)安裝crond

如果沒有安裝crond服務就先裝上服務。

檢查服務狀態:service crond status

(2)修改crontab內容

輸入命令:crontab –e

進入後繼續輸入命令:0 0 /7 * /home/backup.sh

設置為每7天執行一次腳本文件

然後,保存退出:wq

sh腳本前面五個字段分別表示分鐘(0-59)、小時(0-23)、日(1-31)、月(0-12)、星期幾(0-6)後面的為腳本所在目錄

oracle數據庫:數據的導入導出及備份

3. 重新啟動crond服務

輸入命令:service crond restart

注意:

紅色標記部分為可按需求修改部分。

四、 Linux環境下exp實現手動及自動備份

(一)創建腳本文件

命令格式: touch 路徑/文件名.sh

例如:

輸入命令:touch /home/backup.sh

(二)寫備份腳本

1、首先進入腳本:vi命令

vi /home/backup.sh

oracle數據庫:數據的導入導出及備份

文本框: #!/bin/bashexport ORACLE_BASE=/u01/app/oracle –Oracle安裝目錄,可自定義export ORACLE_SID=ORCL –Oracle實例名,可修改export ORACLE_HOME=$
ORACLE_BASE/11.2.0/db_1export PATH=$PATH:$ORACLE_HOME/binexport NLS_LANG=American_America.ZHS16GBKexport BAKUPTIME=`date +%Y%m%d%H%M%S` –定義當前系統時間變量export DATA_DIR=/home/oracle/backup/datas/$BAKUPTIME –定義數據備份目錄export TAR_DIR=/home/oracle/backup/tars/$BAKUPTIME –定義數據打包目錄mkdir -p $DATA_DIR –創建數據備份目錄mkdir -p $TAR_DIR –創建數據打包目錄cd $DATA_DIR echo “Starting bakup…”echo “Bakup file path $DATA_DIR/SCOTT_$BAKUPTIME.dmp”#備份數據庫SCOTT用戶exp scott/scott file=$DATA_DIR/SCOTT_$BAKUPTIME.dmp log=$DATA_DIR/SCOTT_$BAKUPTIME.logecho “Starting tar…”echo “Tar file path $TAR_DIR/SCOTT_$BAKUPTIME.tar.gz”#壓縮SCOTT備份數據文件和日誌文件tar -zcvf $TAR_DIR/SCOTT_$BAKUPTIME.tar.gz SCOTT*echo “Bakup file path $DATA_DIR/HR_$BAKUPTIME.dmp”

2、在腳本內寫入:

(三)執行腳本文件

1、手動執行腳本文件

命令格式:sh 路徑/文件名.sh

例如:sh /home/backup.sh

2、定時自動執行腳本

(1)安裝crond

如果沒有安裝crond服務就先裝上服務。

檢查服務狀態:service crond status

(2)修改crontab內容

輸入命令:crontab –e

進入後繼續輸入命令:每天23:30執行自動備份

30 23 * * * /home/oracle/backup/backup.sh

設置為每天23:30執行一次腳本文件

然後,保存退出:wq

3. 重新啟動crond服務

輸入命令:service crond restart

注意:

紅色標記部分為可按需求修改部分。

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/269226.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-16 13:14
下一篇 2024-12-16 13:14

相關推薦

發表回復

登錄後才能評論