日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

imp oracle reschema_Oracle EXP和IMP用法和介绍

發(fā)布時間:2023/12/19 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 imp oracle reschema_Oracle EXP和IMP用法和介绍 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。

1、Export/Import的用處

Oracle? Export/Import工具用于在數(shù)據(jù)庫之間傳遞數(shù)據(jù)。

Export從數(shù)據(jù)庫中導出數(shù)據(jù)到dump文件中

Import從dump文件中到入數(shù)據(jù)導數(shù)據(jù)庫中

下面是一般使用他們的情況

(1)、兩個數(shù)據(jù)庫之間傳送數(shù)據(jù)

同一個版本的oracle? Server之間

不同版本的oracle? Server之間

同種OS之間

不同種OS之間

(2)、用于數(shù)據(jù)庫的備份和恢復

(3)、從一個SCHEMA傳送到另一個SCHEMA

(4)、從一個TABLESPACE傳送到另一個TABLESPACE

2、DUMP文件

EXPORT到出的是二進制格式的文件,不可以手工編輯,否則會損壞數(shù)據(jù)。

該文件在ORACLE支持的任何平臺上都是一樣的格式,可以在各平臺上通用。

DUMP文件在IMPORT時采用向上兼容方式,就是說ORALCE7的DUMP文件可以導入

到ORACLE8中,但是版本相差很大的版本之間可能有問題。

3、EXPORT/IMPORT過程

EXPORT導出的DUMP文件包含兩種基本類型的數(shù)據(jù)

-? DDL? (Data? Dictionary? Language)

-? Data

DUMP文件包含所有重新創(chuàng)建Data? Dictionary的DDL語句,基本上是可以讀的格式

但是應該注意的是,千萬不要用文本編輯器編輯之,oracle說不支持這樣做的。

下面列出的是DUMP文件中包括的ORACLE對象,分為TABLE/USER/FULL方式,有些對

只是在FULL方式下才有(比如public? synonyms,? users,? roles,? rollback? segm

ents等)

Table? mode?????? User? Mode????????? Full? Database? Mode

----------------------??? ----------------------??? ----------------------

---

Table? definitions????????????? Table? definitions?????????? Table? definitions

Table? data??????????????????????????? Table? data?????????????????? Table? data

Owner's? table? grants??????? Owner's? grants??????????????? Grants

Owner's? table? indexes????? Owner's? indexes???????????? Indexes

Table? constraints????????????? Table? constraints?????????? Table? constraints

Table? triggers????&nbs

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。p;?????????????? Table? triggers???????????????? All? triggers

Clusters???????????????????????????? Clusters

Database? links??????????????? Database? links

Job? queues??????????????????? Job? queues

Refresh? groups????????????? Refresh? groups

Sequences?????????????????????? Sequences

Snapshots??????????????????????? Snapshots

Snapshot? logs???????????????? Snapshot? logs

Stored? procedures???????? Stored? procedures

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。

Private? synonyms??????????? All? synonyms

Views???????????????????????????????? Views

Profiles

Replication? catalog

Resource? cost

Roles

Rollback? segments

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。;??????????????????????????????????????????????????????????????????????????????????? System? audit? options

System? privileges

Tablespace? definitions

Tablespace? quotas

User? definitions

4、IMPORT時的對象倒入順序

在倒入數(shù)據(jù)時,ORACLE有一個特定的順序,可能隨數(shù)據(jù)庫版本不同而有所變化,

但是

現(xiàn)在是這樣的。

1.? Tablespaces????????????????????????????????????????????????? 14.? Snapshot? Logs

2.? Profiles??????????????????????????????????????????????????????? 15.? Job? Queues

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。??? 3.? Users????????????????????????????????????????????????????????????? 16.? Refresh? Groups

4.? Roles????????????????????????????????????????????????????????????? 17.? Cluster? Definitions

5.? System? Privilege? Grants????????????????????????? 18.? Tables? (also? grants,commen

ts,

6.? Role? Grants????????????????????????????????????????????????????????? indexes,? constraints,? audi

ting)

7.? Default? Roles????????????????????????????????????????????? 19.? Referential? Integrity

8.? Tablespace? Quotas????????????????????????????????????? 20.??? POSTTABLES? actions

9.? Resource? Costs??????????????????????????????????????????? 21.? Synonyms

10.? Rollback? Segments????????????????? 22.? Views

11.? Database? Links???????????????????????????????????&nbs

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。p;??????? 23.? Stored? Procedures

12.? Sequences????????????????????????????????????????????????????? 24.? Triggers,? Defaults? and? Aud

iting

13.? Snapshots

按這個順序主要是解決對象之間依賴關系可能產(chǎn)生的問題。TRIGGER最后導入,所

以在INSERT

數(shù)據(jù)到數(shù)據(jù)庫時不會激發(fā)TRIGGER。在導入后可能會有一些狀態(tài)是INVALID的PROC

EDURE,主要

是IMPORT時會影響一些數(shù)據(jù)庫對象,而IMPORT并不重新編譯PROCEDURE,從而造成

這種情況,

可以重新編譯之,就能解決這個問題。

5、兼容性問題

IMPORT工具可以處理EXPORT? 5.1.22之后的版本導出的DUMP文件,所以你用ORACL

E7的IMPORT

處理ORACLE6的DUMP文件,依次類推,但是ORACLE如果版本相差很大有可能不能處

理。具體的

問題可以參照相應的文檔,比如有關參數(shù)設置等(COMPATIBLE參數(shù))

6、EXPORT需要的VIEW

EXPORT需要的VIEW是由CATEXP.SQL創(chuàng)建,這些內(nèi)部VIEW用于EXPORT組織DUMP文件

中數(shù)據(jù)格式。

大部分VIEW用于收集創(chuàng)建DDL語句的,其他的主要供ORACLE開發(fā)人員用。

這些VIEW在不同ORACLE版本之間有可能不同,每個版本可能都有新的特性加入。

所以在新的

版本里面執(zhí)行舊的dump文件會有錯誤,一般可以執(zhí)行CATEXP.SQL解決這些問題,

解決向后兼容

問題的一般步驟如下:

導出數(shù)據(jù)庫的版本比目標數(shù)據(jù)庫老的情況:

-? 在需要導入的目標數(shù)據(jù)庫中執(zhí)行舊的CATEXP.SQL

-? 使用舊的EXPORT導出DUMP文件

-? 使用舊的IMPORT導入到數(shù)據(jù)庫中

-? 在數(shù)據(jù)庫中執(zhí)行新的CATEXP.SQL,以恢復該版本的EXPORT? VIEW

導出數(shù)據(jù)庫的版本比目標數(shù)據(jù)庫新的情況:

-? 在需要導入的目標數(shù)據(jù)庫中執(zhí)行新的CATEXP.SQL

-? 使用新的EXPORT導出DUMP文件

-? 使用新的IMPORT導入到數(shù)據(jù)庫中

-? 在數(shù)據(jù)庫中執(zhí)行舊的CATEXP.SQL,以恢復該版本的EXPORT? VIEW

7、碎片整理

EXPORT/IMPORT一個很重要的應用方面就是整理碎片。因為如果時初次IMPPORT,

就會重新CREATE? TABLE? 再導入數(shù)據(jù),所以整張表都是連續(xù)存放的。另外缺省情況

下EXPORT會在生成DUMP文件是“壓縮(COMPRESS)”TABLE,但是這種壓縮在很多情

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。下被誤解。事實上,COMPRESS是改變STORAGE參數(shù)INITIAL的值。比如:

CREATE? TABLE? ....? STORAGE(? INITIAL? 10K? NEXT? 10K..)

現(xiàn)在數(shù)據(jù)已經(jīng)擴展到100個EXTENT,如果采用COMPRESS=Y來EXPORT數(shù)據(jù),

則產(chǎn)生的語句時? STORAGE(? INITIAL? 1000K? NEXT? 10K)

我們可以看到NEXT值并沒有改變,而INITIAL是所有EXTENT的總和。所以會出現(xiàn)

如下情況,表A有4個100M的EXTENT,執(zhí)行DELETE? FROM? A,然后再用COMPRESS=Y? 導

出數(shù)據(jù),產(chǎn)生的CREATE? TABLE語句將有400M的INITIAL? EXTENT。即使這是TABLE中

已經(jīng)沒有數(shù)據(jù)!!這是的DUMP文件即使很小,但是在IMPORT時就會產(chǎn)生一個巨大

TABLE.

另外,也可能會超過DATAFILE的大小。比如,有4個50M的數(shù)據(jù)文件,其中表A有

15個10M的EXTENT,如果采用COMPRESS=Y的方式導出數(shù)據(jù),將會有INITIAL=150M,

那么在重新導入時,不能分配一個150M的EXTENT,因為單個EXTENT不能跨多個文

件。

8、在USER和TABLESPACE之間傳送數(shù)據(jù)

一般情況下EXPORT的數(shù)據(jù)要恢復到它原來的地方去。如果SCOTT用戶的表以TABLE

或USER方式EXPORT數(shù)據(jù),在IMPORT時,如果SCOTT用戶不存在,則會報錯!

以FULL方式導出的數(shù)據(jù)帶有CREATE? USER的信息,所以會自己創(chuàng)建USER來存放數(shù)據(jù)

當然可以在IMPORT時使用FROMUSER和TOUSER參數(shù)來確定要導入的USER,但是要保

TOUSER一定已經(jīng)存在啦。

[NextPage]

9、EXPORT/IMPORT對SQUENCE的影響

在兩種情況下,EXPORT/IMPORT會對SEQUENCE。

(1)如果在EXPORT時,用戶正在取SEQUENCE的值,可能造成SEQUENCE的不一致。

(2)另外如果SEQUENCE使用CACHE,在EXPORT時,那些在CACHE中的值就會被忽略

的,

只是從數(shù)據(jù)字典里面取當前值EXPORT。

如果在進行FULL方式的EXPORT/IMPORT時,恰好在用sequence更新表中某列數(shù)據(jù),

而且不是上面兩種情況,則導出的是更新前的數(shù)據(jù)。

如果采用常規(guī)路徑方式,每一行數(shù)據(jù)都是用INSERT語句,一致性檢查和INSERT? T

RIGGER

如果采用DIRECT方式,某些約束和trigger可能不觸發(fā),如果在trigger中使用

sequence.nextval,將會對sequence有影響。

參數(shù)解:

E:\>exp? help=y

通過輸入? EXP? 命令和用戶名/口令,您可以

在用戶? /? 口令之后的命令:

實例:? EXP? SCOTT/TIGER

或者,您也可以通過輸入跟有各種參數(shù)的? EXP? 命令來控制“導出”的運行方式。

要指定參數(shù),您可以使用關鍵字:

格式:? EXP? KEYWORD=value? 或? KEYWORD=(value1,value2,...,valueN)

實例:? EXP? SCOTT/TIGER? GRANTS=Y? TABLES=(EMP,DEPT,MGR)

或? TABLES=(T1:? P1,T1:? P2),如果? T1? 是分區(qū)表

USERID? 必須是命令行中的第一個參數(shù)。

關鍵字? 說明(默認)

---------------------------------------------------

USERID? 用戶名/口令

FULL? 導出整個文件? (N)

BUFFER? 數(shù)據(jù)

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。緩沖區(qū)的大小

OWNER? 所有者用戶名列表

FILE? 輸出文件? (EXPDAT.DMP)

TABLES? 表名列表

COMPRESS? 導入一個范圍? (Y)

RECORDLENGTH? IO? 記錄的長度

GRANTS? 導出權限? (Y)

INCTYPE? 增量導出類型

INDEXES? 導出索引? (Y)

RECORD? 跟蹤增量導出? (Y)

ROWS? 導出數(shù)據(jù)行? (Y)

PARFILE? 參數(shù)文件名

CONSTRAINTS? 導出限制? (Y)

CONSISTENT? 交叉表一致性

LOG? 屏幕輸出的日志文件

STATISTICS? 分析對象? (ESTIMATE)

DIRECT? 直接路徑? (N)

TRIGGERS? 導出觸發(fā)器? (Y)

FEEDBACK? 顯示每? x? 行? (0)? 的進度

FILESIZE? 各轉(zhuǎn)儲文件的最大尺寸

QUERY? 選定導出表子集的子句

下列關鍵字僅用于可傳輸?shù)谋砜臻g

TRANSPORT_TABLESPACE? 導出可傳輸?shù)谋砜臻g元數(shù)據(jù)? (N)

TABLESPACES? 將傳輸?shù)谋砜臻g列表

E:\>imp? help=y

可以通過輸入? IMP? 命令和您的用戶名/口令

跟有您的用戶名? /? 口令的命令:

實例:? IMP? SCOTT/TIGER

或者,? 可以通過輸入? IMP? 命令和各種自變量來控制“導入”按照不同參數(shù)。

要指定參數(shù),您可以使用關鍵字:

格式:? IMP? KEYWORD=value? 或? KEYWORD=(value1,value2,...,vlaueN)

實例:? IMP? SCOTT/TIGER? IGNORE=Y? TABLES=(EMP,DEPT)? FULL=N

或? TABLES=(T1:? P1,T1:? P2),如果? T1? 是分區(qū)表

USERID? 必須是命令行中的第一個參數(shù)。

關鍵字? 說明(默認)

----------------------------------------------

USERID? 用戶名/口令

FULL? 導入整個文件? (N)

BUFFER? 數(shù)據(jù)緩沖區(qū)大小

FROMUSER? 所有人用戶名列表

FILE? 輸入文件? (EXPDAT.DMP)

TOUSER? 用戶名列表

SHOW? 只列出文件內(nèi)容? (N)

TABLES? 表名列表

IGNORE? 忽略創(chuàng)建錯誤? (N)

RECORDLENGTH? IO? 記錄的長度

GRANTS? 導入權限? (Y)

INCTYPE? 增量導入類型

INDEXES? 導入索引? (Y)

COMMIT? 提交數(shù)組插入? (N)

ROWS? 導入數(shù)據(jù)行? (Y)

PARFILE? 參數(shù)文件名

LOG? 屏幕輸出的日志文件

CONSTRAINTS? 導入限制? (Y)

DESTROY? 覆蓋表空間數(shù)據(jù)文件? (N)

INDEXFILE? 將表/索引信息寫入指定的文件

SKIP_UNUSABLE_INDEXES? 跳過不可用索引的維護? (N)

ANALYZE? 執(zhí)行轉(zhuǎn)儲文件中的? ANALYZE? 語句? (Y)

FEEDBACK? 顯示每? x? 行? (0)? 的進度

TOID_NOVALIDATE? 跳過指定類型? id? 的校驗

FILESIZE? 各轉(zhuǎn)儲文件的最大尺寸

RECALCULATE_STATISTICS? 重新計算統(tǒng)計值? (N)

下列關鍵字僅用于可傳輸?shù)谋砜臻g

TRANSPORT_TABLESPACE? 導入可傳輸?shù)谋砜臻g元數(shù)據(jù)? (N)

TABLESPACES? 將要傳輸?shù)綌?shù)據(jù)庫的表空間

DATAFILES? 將要傳輸?shù)綌?shù)據(jù)庫的數(shù)據(jù)文件

TTS_OWNERS? 擁有可傳輸表空間集中數(shù)據(jù)的用戶

備份例子1:導出備份數(shù)據(jù)

#!/bin/bash

#=============================================#

#?&n

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。bsp;????? 如果腳本用于crontab,下面Oracle環(huán)境變量必須設置????????? #

#=============================================#

ORACLE_BASE=/opt/oracle

ORACLE_HOME=$ORACLE_BASE/product/8.1.7

ORACLE_SID=oradb6

ORACLE_TERM=ansi

ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

NLS_LANG=American_America.ZHS16GBK

NLS_DATE_FORMAT=YYYYMMDDHH24MISS

LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

TMPDIR=/var/tmp

PATH=$PATH:$ORACLE_HOME/bin

export? ORACLE_BASE? ORACLE_HOME? ORACLE_SID? ORACLE_TERM? ORA_NLS33? NLS_LANG

export? NLS_DATE_FORMAT? LD_LIBRARY_PATH? TMPDIR? PATH

#============================================#

BACKUPDIR=/oradata/backup;? export? BACKUPDIR

USER_PASSWD=dbuser/oracle

RESULTFILE=/export/home/oracle/log/result.log

cd? $BACKUPDIR

[NextPage]

exp? $USER_PASSWD? log=$(date? '+%Y%m%d').log? file=$(date? '+%Y%m%d').dmp? owner=dbuser

buffer=4096000? rows=n

if? [? $?? !=? 0? ]

then

echo? "`date`? backup? exp? fail"? >>? $RESULTFILE

exit

fi

rm? -f? tables.txt

sqlplus? -s? $USER_PASSWD?

set? heading? off;

set? term? off;

set? echo? off;

set? pagesize? 0;

set? linesize? 1000;

set? trimspool? on;

set? trimout? on;

set? feedback? off;

set? colsep? |;

spool? tables.txt;

select? table_name? from? user_tables;

spool? off;

exit;

EOF

for? table? in? $(cat? tables.txt)

do

exp? $USER_PASSWD? log=${table}_$(date? '+%Y%m%d').log? file

=${table}_$(date? '+%Y%m%d').dmp? tables=$table? direct=y

if? [? $?? !=? 0? ]

then

echo? "`date`? backup? exp? $table? fail"? >>? $RESULTFILE

exit

fi

done

compress? -f? *.dmp

echo? "`date`? backup? succeed"? >>? $RESULTFILE

備份例子2:聯(lián)機日備份數(shù)據(jù)

#!/usr/local/bin/bash

first_msg()

{

echo? "******************************************************"

echo? "??? "

echo? "The? batch? process? BACKUP_DAILY? is? starting? at? [? 'date'? ]"

echo? "Excuting? by? LogName? =? [? $LOGNAME? ]"

echo? "??? "

}

final_msg()

{

echo? "??? "

echo? "The? batch? process? BACKUP_DAILY? completed? at? [? 'date'? ]"

echo? "Excuting? by? LogName? =? [? $LOGNAME? ]"

echo? ">>>>>? Please? Make

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。; Sure? That? It? Has? Been? Done? Successfully,? "

echo? ">>>>>? Otherwise? You? Must? Re-do? It."

echo? "??? "

echo? "*****************************************************"

}

#********************************

#????????????????????????? Main??????????????????????????? *

#********************************

USER_PASSWD=system/system

ARCHIVE_DEST=/appl/oracle/oradata/orafe/arch

DEVICE=/dev/rmt/ctape1

TRC_FILE=$TRC/Z_JOB_BACKUP_DAILY

TMP_SQL=$TRC/backup_daily_tmp.sql

BACKUP_DEST=${BACKUP_PATH}/$(date? '+%Y%m%d')

SUCCESS=0

FAIL=1

first_msg

mkdir? -m? 777? -p? $BACKUP_DEST

if? [? !? -d? $BACKUP_DEST? ]

then

echo? "$BACKUP_DEST? create? fail"

exit

fi

[NextPage]

#*******************************

#??????????? backup? archive? log??????????? *

#*******************************

echo? "=========================================="

echo? "Backup? archive? log? begin? on? [? 'date'? ]"

echo? "alter? system? archive? log? stop;"? >? $TMP_SQL

sqlplus? -s? $USER_PASSWD?

EOF

if? [? $?? !=? 0? ]

then

echo? "alter? archive? log? stop? fail"

exit

fi

cd? $ARCHIVE_DEST

FILE_QT='ls|grep? -c? "arch*"'

FILE='ls|grep? "arch*"'

echo? "alter? system? archive? log? start;"? >? $TMP_SQL

sqlplus? -s? $USER_PASSWD?

EOF

if? [? $?? !=? 0? ]

then

echo? "alter? archive? log? start? fail"

exit

fi

if? [? $FILE_QT? !=? 0? ]

then

mv? -f? $FILE? $BACKUP_DEST

cd? $BACKUP_DEST

compress? -f? *

tar? -cvf? $DEVICE? *

if? [? $?? !=? 0? ]

then

echo? "tar? to? tape? fail"

exit

fi

fi

echo? "Backup? archive? log? end? on? [? 'date'? ]"

echo? "=========================================="

final_msg

備份例子3:聯(lián)機全庫備份數(shù)據(jù)

#!/usr/local/bin/bash

first_msg()

{

echo? "******************************************************"

echo? "?&nbs

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。p;? "

echo? "The? batch? process? JOB_BACKUP_FULL? is? starting? at? [? 'date'? ]"

echo? "Excuting? by? LogName? =? [? $LOGNAME? ]"

echo? "??? "

}

final_msg()

{

echo? "??? "

echo? "The? batch? process? JOB_BACKUP_FULL? completed? at? [? 'date'? ]"

echo? "Excuting? by? LogName? =? [? $LOGNAME? ]"

echo? ">>>>>? Please? Make? Sure? That? It? Has? Been? Done? Successfully,? "

echo? ">>>>>? Otherwise? You? Must? Re-do? It."

echo? "??? "

echo? "******************************************************"

}

#**************************

#*??????????? backup_begin??????????? *

#**************************

backup_begin()

{

echo? "alter? tablespace? $1? begin? backup;"? >? $TMP_SQL

sqlplus? -s? $USER_PASSWD?

EOF

if? [? $?? !=? 0? ]

then

return? $FAIL

fi

return? $SUCCESS

}

#**************************

#*??????????? backup_end??????????????? *

#**************************

backup_end()

{

echo? "alter? tablespace? $1? end? backup;"? >? $TMP_SQL

sqlplus? -s? $USER_PASSWD?

EOF

if? [? $?? !=? 0? ]

then

return? $FAIL

fi

return? $SUCCESS

}

#********************************

#????????????????????????? Main??????????????????????????? *

#********************************

USER_PASSWD=system/system

BACKUP_DEST=$BACKUP_PATH/full

DEVICE=/dev/rmt/ctape1

BACKUP_CFG=$TRC/backup.cfg

TRC_FILE=$TRC/BACKUP_FULL

TMP_SQL=$TRC/backup_full_tmp.sql

SUCCESS=0

FAIL=1

first_msg

rm? -f? $BACKUP_CFG

sqlplus? -s? $USER_PASSWD?

set? heading? off;

set? term? off;

set? echo? off;

set? page

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。size? 0;

set? linesize? 1000;

set? trimspool? on;

set? trimout? on;

set? feedback? off;

set? colsep? =;

spool? $TRC/backup.spl;

select? tablespace_name,file_name? from? dba_data_files? order? by? tablespace_name,fi

le_name;

spool? off;

exit

EOF

tr? -d? '? '? $BACKUP_CFG

rm? -f? $TRC_FILE

if? [? !? -f? $BACKUP_CFG? ]

then

echo? "備份配置文件缺失"? >$TRC_FILE

echo? "$BACKUP_CFG? not? found"

exit

fi

mkdir? -m? 777? -p? $BACKUP_DEST

if? [? !? -d? $BACKUP_DEST? ]

then

echo? "備份目錄創(chuàng)建失敗"? >$TRC_FILE

echo? "$BACKUP_DEST? create? fail"

exit

fi

cd? $BACKUP_DEST

rm? -f? *

#*******************************

#??????????? backup? control? file????????? *

#*******************************

echo? "=========================================="

echo? "正在備份控制文件"? >? $TRC_FILE

echo? "Backup? control? begin? on? [? 'date'? ]"

echo? "alter? database? backup? controlfile? to? '$BACKUP_DEST/control.ctl';"? >? $TMP_SQL

sqlplus? -s? $USER_PASSWD?

EOF

if? [? $?? !=? 0? ]

then

echo? "備份控制文件失敗"? >? $TRC_FILE

echo? "Backup? control? file? fail"

exit

fi

echo? "Backup? control? end? on? [? 'date'? ]"

#*******************************

#??????????? backup? tablespaces??????????? *

#*******************************

TABLESPACES='cut? -d=? -f1? $BACKUP_CFG|uniq'

for? tablespace? in? $TABLESPACES

do

echo? "=========================================="

echo? "正在備份$tablespace"? >? $TRC_FILE

echo? "Backup? $tablespace? begin? on? [? 'date'? ]"

backup_begin? $tablespace

if? [? $?? !=? 0? ]

then

echo? "備份$tablespace失敗"? >? $TRC_FILE

echo? "Turn? on? backup? option? of? $tablespace? fail"

exit

fi

DATAFILES='awk? -v? var=$tablespace? -F? =? '$1==var??? {print? $2}'? $BACKUP_CFG'

for? datafile? in? $DATAFILES

do

正在看的ORACLE教程是:OracleEXP和IMP用法和介紹。;???????????? if? [? !? -r? $datafile? ]

then

backup_end? $tablespace

echo? "備份$tablespace失敗"? >? $TRC_FILE

echo? "$tablespace:$datafile? unreadable"

exit

fi

compress? -c? $datafile? >? $BACKUP_DEST/'basename? $datafile'.Z

if? [? $?? !=? 0? ]

then

backup_end? $tablespace

echo? "備份$tablespace失敗"? >? $TRC_FILE

echo? "Backup? $tablespace:$datafile? fail"

exit

, ??????????? fi

done

backup_end? $tablespace

echo? "Backup? $tablespace? end? on? [? 'date'? ]"

done

#**************************

#??????????????? tar? files??????????????? *

#**************************

echo? "=========================================="

echo? "正在備份至磁帶"? >? $TRC_FILE

echo? "tar? to? tape? on? [? 'date'? ]"

cd? $BACKUP_DEST

tar? -cvf? $DEVICE? *

if? [? $?? !=? 0? ]

then

echo? "備份至磁帶失敗"? >? $TRC_FILE

echo? "tar? to? tape? fail"

exit

fi

echo? "tar? to? tape? on? [? 'date'? ]"

echo? "=========================================="

echo? "全備份已完成"? >? $TRC_FILE

final_msg

總結

以上是生活随笔為你收集整理的imp oracle reschema_Oracle EXP和IMP用法和介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。