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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

oracle表空间可以迁移,Oracle 表空间迁移

發布時間:2024/1/23 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle表空间可以迁移,Oracle 表空间迁移 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

遷移表空間databump

使用databump導入導出,兩個庫用戶必須一致,否則另一個庫導入的時候會報錯。所以兩個庫都是用helei用戶。

給兩個數據庫的用戶分別授予dba權限,這里只是實驗更清晰而已。

SQL> create user helei identified by MANAGER;

User created.

SQL> grant connect,resource to helei;

Grant succeeded.

SQL>grant dba to helei;

Grantsucceeded.

我們先查看表空間,我們要把主機HE3中的heleitbs表空間空間遷移到HE4的數據庫當中。

SQL>select TABLESPACE_NAME,STATUS from dba_tablespaces;

TABLESPACE_NAME?????????????? STATUS

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

SYSTEM?????????????????????????????? ONLINE

SYSAUX?????????????????????????????? ONLINE

UNDOTBS1?????????????????????? ONLINE

TEMP?????????????????????????????? ONLINE

USERS?????????????????????????????? ONLINE

EXAMPLE?????????????????????? ONLINE

6 rowsselected.

我們在HE3上的heleitbs表空間中創建一張表,所有的操作都用到helei用戶

SQL>createtablespace heleitbs datafile ‘/u01/app/oracle/oradata/orcl/heleitbs1.dbf‘ size10m;

Tablespacecreated.

SQL> createtable TTT (a int,b varchar2(20));

Tablecreated.

SQL> alter table TTT add constraint TTT_PRIKEYprimary key (a);

insert into ttt values(1,‘helei1‘);

insert into ttt values(2,‘helei2‘);

SQL> commit;

Commit complete.

2.先在兩個虛擬機上創建目錄,并且授權

[[email?protected]~]$ mkdir -p /home/oracle/dumpfile

[[email?protected]~]$ chown -R oracle. dumpfile

[[email?protected]~]$ chmod -R 755 dumpfile

在HE3數據庫中給文件夾做授權

SQL>createdirectory dumpfile as ‘/home/oracle/dumpfile‘;

Directorycreated.

SQL> grant all on directory dumpfile to public;

Grantsucceeded.

在HE4數據庫中給文件夾做授權

SQL>createdirectory dumpfile as ‘/home/oracle/dumpfile‘;

Directorycreated.

SQL> grant all on directory dumpfile to public;

Grantsucceeded.

3.在HE3庫中,需要用sys登錄,檢查一下表空間里面的表是否可以遷移。

查詢代碼:

EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK(‘需要遷移的表空間名字‘, TRUE);

SELECT * FROM TRANSPORT_SET_VIOLATIONS;

SQL> conn / as sysdba

Connected.

SQL>show user

USER is"SYS"

SQL>EXECUTEDBMS_TTS.TRANSPORT_SET_CHECK(‘heleitbs‘,true);

PL/SQLprocedure successfully completed.

SQL> select * from transport_set_violations;

no rowsselected

4.在HE3庫中,把heleitbs表空間變為只讀。

SQL> conn / as sysdba

Connected.

SQL> alter tablespace heleitbs read only;

Tablespacealtered.

SQL>select TABLESPACE_NAME,STATUS from dba_tablespaces;

TABLESPACE_NAME?????????????? STATUS

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

SYSTEM?????????????????????????????? ONLINE

SYSAUX?????????????????????????????? ONLINE

UNDOTBS1?????????????????????? ONLINE

TEMP?????????????????????????????? ONLINE

USERS?????????????????????????????? ONLINE

EXAMPLE?????????????????????? ONLINE

HELEITBS?????????????????????? READ ONLY

7 rowsselected.

5.使用databump導入導出把helei用戶的heleitbs表空間導出到系統中的文件夾中。

[[email?protected]]$expdp helei/MANAGERdumpfile=helei.dmp directory=dumpfile transport_tablespaces=heleitbs

Export: Release11.2.0.1.0 - Production on Sun Dec 13 23:59:37 2015

Copyright (c) 1982,2009, Oracle and/or its affiliates.? Allrights reserved.

Connected to: OracleDatabase 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

With thePartitioning, OLAP, Data Mining and Real Application Testing options

Starting"HELEI"."SYS_EXPORT_TRANSPORTABLE_01":? helei/******** dumpfile=helei.dmpdirectory=dumpfile transport_tablespaces=heleitbs

Processing objecttype TRANSPORTABLE_EXPORT/PLUGTS_BLK

Processing objecttype TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK

Master table"HELEI"."SYS_EXPORT_TRANSPORTABLE_01" successfullyloaded/unloaded

******************************************************************************

Dump file set forHELEI.SYS_EXPORT_TRANSPORTABLE_01 is:

/home/oracle/dumpfile/helei.dmp

******************************************************************************

Datafiles requiredfor transportable tablespace HELEITBS:

/u01/app/oracle/oradata/orcl/heleitbs1.dbf

Job"HELEI"."SYS_EXPORT_TRANSPORTABLE_01" successfullycompleted at 23:59:56

6.用scp把HE3的dumpfile文件夾里面的helei.dmp拷貝到HE4的dumpfile文件夾中。

[[email?protected]]$ scp -rp helei.dmpHE4:/home/oracle/dumpfile/

helei.dmp??????????????????????????????????????????????????????????????????100%?? 80KB? 80.0KB/s

在HE4虛擬機里查看一下dumpfile文件夾有沒有helei.dmp

[[email?protected]~]$ cd dumpfile/

helei.dmp

7.分別查看weixiaobin庫和ronger庫的數據文件存在的位置。

HE3庫

SQL>select name from v$datafile;

NAME

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

/u01/app/oracle/oradata/orcl/system01.dbf

/u01/app/oracle/oradata/orcl/sysaux01.dbf

/u01/app/oracle/oradata/orcl/undotbs01.dbf

/u01/app/oracle/oradata/orcl/users01.dbf

/u01/app/oracle/oradata/orcl/example01.dbf

/u01/app/oracle/oradata/orcl/heleitbs1.dbf

6 rowsselected.

HE4庫

SQL>select name from v$datafile;

NAME

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

/u01/app/oracle/oradata/orcl/system01.dbf

/u01/app/oracle/oradata/orcl/sysaux01.dbf

/u01/app/oracle/oradata/orcl/undotbs01.dbf

/u01/app/oracle/oradata/orcl/users01.dbf

/u01/app/oracle/oradata/orcl/example01.dbf

8.把HE3庫的數據文件heleitbs1.dbf拷貝到HE4庫里的數據文件當中。

[[email?protected]~]$cd /u01/app/oracle/oradata/orcl/

[[email?protected]]$ scp heleitbs1.dbfHE4:/u01/app/oracle/oradata/orcl/

heleitbs1.dbf??????????????????????????????????????????????????????????????100%?? 10MB? 10.0MB/s??00:00

然后查看一下HE4有沒有heleitbs1.dbf文件

[[email?protected]]$ cd /u01/app/oracle/oradata/orcl/

control01.ctl? example01.dbf?redo01.log? redo03.log??? system01.dbf? undotbs01.dbf

control02.ctl? heleitbs1.dbf?redo02.log? sysaux01.dbf? temp01.dbf???users01.dbf

9.這時用使用databump導入導出把HE4的dumpfile文件家里面的helei.dmp導入到自己的數據庫中

[[email?protected]~]$impdp helei/MANAGERdumpfile=helei.dmp directory=dumpfile transport_datafiles=‘/u01/app/oracle/oradata/orcl/heleitbs1.dbf‘

Import:Release 11.2.0.1.0 - Production on Mon Dec 14 00:36:33 2015

Copyright(c) 1982, 2009, Oracle and/or its affiliates.?All rights reserved.

Connectedto: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bitProduction

With thePartitioning, OLAP, Data Mining and Real Application Testing options

Mastertable "HELEI"."SYS_IMPORT_TRANSPORTABLE_01" successfullyloaded/unloaded

Starting"HELEI"."SYS_IMPORT_TRANSPORTABLE_01":? helei/******** dumpfile=helei.dmpdirectory=dumpfiletransport_datafiles=/u01/app/oracle/oradata/orcl/heleitbs1.dbf

Processingobject type TRANSPORTABLE_EXPORT/PLUGTS_BLK

Processingobject type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK

Job"HELEI"."SYS_IMPORT_TRANSPORTABLE_01" successfullycompleted at 00:36:49

10.把兩個庫中的heleitbs表空間都設置為讀寫模式。

兩個庫命令是一致的使用dba用戶和weixiaobin用戶都可以

SQL> alter tablespace heleitbs read write;

Tablespacealtered.

11.驗證,看看HE4虛擬數據中是不是HELEITBS表空間。看看表空間里有沒有TTT的表

SQL> select TABLE_NAME,TABLESPACE_NAME fromdba_tables where TABLESPACE_NAME=‘HELEITBS‘;

TABLE_NAME?????????????????????? TABLESPACE_NAME

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

TTT?????????????????????????????? HELEITBS

原文:http://suifu.blog.51cto.com/9167728/1722903

總結

以上是生活随笔為你收集整理的oracle表空间可以迁移,Oracle 表空间迁移的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。