不同的default tablespace資料遷移
今天一個同事很肯定的告訴我,當imp物件時,如果匯出的原始表空間不存在的話會報錯,我奇怪,我覺得會匯入使用者的default tablespace,如果default tablespace沒有指定的話,那麼9i會匯入system tablespace, 10g會匯入users tablespace.
親手做了一個試驗,證明我的理解沒有錯:
匯出資料庫sid:testdb
create user leiz
identified by leiz
default tablespace leiz
grant connect, resource to leiz
CREATE TABLESPACE "leiz"
LOGGING
DATAFILE 'D:\ORACLE\ORADATA\NCPCDB\leiz.ora' SIZE 5M EXTENT
MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO
匯入資料庫sid:ncpcdb
create user coolyl
identified by coolyl
default tablespace coolyl
grant connect, resource to coolyl
CREATE TABLESPACE "coolyl"
LOGGING
DATAFILE 'D:\ORACLE\ORADATA\NCPCDB\coolyl.ora' SIZE 5M EXTENT
MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO
1. 匯出匯入使用者的預設表空間不一致
C:\Documents and Settings\zhanglei>exp file=c:\leiz.dmp tables=test1
Export: Release 9.2.0.1.0 - Production on 星期五 3月 13 16:43:45 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
連線到: Oracle9i Enterprise Edition Release 9.2.0.8.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production
已匯出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集
即將匯出指定的表透過常規路徑 ...
. . 正在匯出表 TEST1 23145 行被匯出
在沒有警告的情況下成功終止匯出。
C:\Documents and Settings\zhanglei>imp fromuser=leiz touser=coolyl file=c:\leiz.dmp
Import: Release 9.2.0.1.0 - Production on 星期五 3月 13 16:44:30 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
連線到: Oracle9i Enterprise Edition Release 9.2.0.8.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production
經由常規路徑匯出由EXPORT:V09.02.00建立的檔案
警告: 此物件由 LEIZ 匯出, 而不是當前使用者
已經完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的匯入
. . 正在匯入表 "TEST1" 23145行被匯入
成功終止匯入,但出現警告。
select b.table_name, b.tablespace_name from user_tables b
TEST1 LEIZ
select b.table_name, b.tablespace_name from user_tables b
TEST1 COOLYL
結果:成功匯入,匯入到使用者的預設表空間下了,與有無原始表空間無關。
2. 匯入使用者未指定表空間
9i -> 9i
C:\Documents and Settings\zhanglei>imp fromuser=leiz touser=coolyl file=c:\leiz.dmp
Import: Release 9.2.0.1.0 - Production on 星期五 3月 13 16:44:30 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
連線到: Oracle9i Enterprise Edition Release 9.2.0.8.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production
經由常規路徑匯出由EXPORT:V09.02.00建立的檔案
警告: 此物件由 LEIZ 匯出, 而不是當前使用者
已經完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的匯入
. . 正在匯入表 "TEST1" 23145行被匯入
成功終止匯入,但出現警告。
select b.table_name, b.tablespace_name from user_tables b
TEST1 SYSTEM
9i -> 10g
C:\Documents and Settings\zhanglei>imp fromuser=leiz touser=coolyl file=c:\leiz.dmp
Import: Release 9.2.0.1.0 - Production on 星期五 3月 13 16:53:09 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
連線到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Produc
tionWith the Partitioning, OLAP and Data Mining options
經由常規路徑匯出由EXPORT:V09.02.00建立的檔案
警告: 此物件由 LEIZ 匯出, 而不是當前使用者
已經完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的匯入
. . 正在匯入表 "TEST1" 23145行被匯入
成功終止匯入,但出現警告。
select b.table_name, b.tablespace_name from user_tables b
TEST1 USERS
結果:如果未指定使用者的預設表空間,9i自動匯入到system表空間,10g自動匯入到users表空間
總結論:實踐是檢驗真理的唯一標準
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9252210/viewspace-567223/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 不同的default tablespace資料遷移(二)
- 伺服器資料遷移的方法-硬體不同如何遷移資料伺服器
- 利用TRANSPORT_TABLESPACE特性在同一db下不同使用者之間遷移資料!
- 遷移資料庫的檔案到不同路徑(轉)資料庫
- 資料的遷移
- sqlplus copy在不同庫db遷移資料SQL
- 遷移資料.
- 【遷移】使用rman遷移資料庫資料庫
- 使用資料庫冷備份方式進行資料庫遷移,資料庫檔案遷移到不同的目錄資料庫
- Specifying the Default Tablespace Type (78)
- 【資料遷移】使用傳輸表空間遷移資料
- Kafka資料遷移Kafka
- 資料庫遷移資料庫
- redis資料遷移Redis
- 轉資料遷移
- ORACLE 資料遷移Oracle
- DXWB 資料遷移
- Harbor資料遷移
- 資料檔案的遷移
- 【資料遷移】RMAN遷移資料庫到ASM(三)遷移onlinelog等到ASM資料庫ASM
- Overriding the Default Tablespace Type (79)
- 資料庫移動路徑一例。相同平臺不同路徑遷移資料庫
- 不同使用者,不同表空間遷移
- 不同場景下 MySQL 的遷移方案MySql
- 資料遷移(1)——通過資料泵表結構批量遷移
- 資料庫檔案的遷移資料庫
- ABP8.1的資料遷移
- gitlab資料遷移Gitlab
- 資料庫遷移 :理解資料庫
- Mysql資料遷移方法MySql
- Fastdfs資料遷移方案AST
- 【Redis】 redis資料遷移Redis
- 【Hive】hive資料遷移Hive
- laravel資料庫遷移Laravel資料庫
- Odoo遷移資料庫Odoo資料庫
- exp,imp 遷移資料
- NAS資料遷移初探
- redis資料庫遷移Redis資料庫