IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁(yè)數(shù)據(jù)庫(kù)Oracle → Oracle 10g表空間物理位置轉(zhuǎn)移

Oracle 10g表空間物理位置轉(zhuǎn)移

時(shí)間:2015-06-28 00:00:00 來(lái)源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(7)

  上周五花了幾個(gè)小時(shí),專門來(lái)了解了下ORACLE表空間轉(zhuǎn)移的知識(shí),因?yàn)闇y(cè)試站點(diǎn)ORACLE所在的磁盤只剩下十幾M的空間了。于是我將表空間轉(zhuǎn)移到另外一個(gè)磁盤,過(guò)程如下:

  操作環(huán)境:

  數(shù)據(jù)庫(kù):Oracle Database 10g Enterprise Edition Release 10.2.0.1.0

  表空間:USERS

  轉(zhuǎn)移前使用的數(shù)據(jù)庫(kù)文件:C:\oracle\product\10.2.0\oradata\orcl\USERS01.DBF

  轉(zhuǎn)移后使用的數(shù)據(jù)庫(kù)文件:D:\DB Data\Oracle\orcl\USERS01.DBF

  簡(jiǎn)要操作步驟:

  第一步:登陸數(shù)據(jù)庫(kù)

  第二步:停止數(shù)據(jù)庫(kù)

  第三步:在open模式下啟動(dòng)數(shù)據(jù)庫(kù)

  第四步:將表空間(USERS)脫機(jī)

  第五步:手工將表空間所使用的數(shù)據(jù)庫(kù)文件(C:\oracle\product\10.2.0\oradata\orcl\USERS01.DBF),

  復(fù)制到你要轉(zhuǎn)移的目錄(D:\DB Data\Oracle\orcl\USERS01.DBF),

  第六步:將表空間與新目錄下的數(shù)據(jù)庫(kù)文件關(guān)聯(lián)

  第七步:將表空間聯(lián)機(jī),提交,OK,完成。

  詳細(xì)SQL:

  第一步:

  C:\>sqlplus /nolog

  SQL> conn / as sysdba

  第二步:

  SQL> shutdown immediate

  第三步:

  SQL> startup open

  第四步:

  SQL> alter tablespace eucrmspace offline;

  第五步:

  手工拷貝數(shù)據(jù)庫(kù)文件到你想到達(dá)的目錄下。

  第六步:【操作前后可以用SQL來(lái)查詢表空間所使用的數(shù)據(jù)庫(kù)文件的變化情況:select name from v$datafile;】

  SQL> alter tablespace eucrmspace rename datafile

  'C:\oracle\product\10.2.0\oradata\orcl\USERS01.DBF'??? to? ' D:\DB Data\Oracle\orcl\USERS01.DBF';

  第七步:

  SQL> alter tablespace eucrmspace online;

  SQL>commit;

  SQL>exit;

  注意:

  1.??? 轉(zhuǎn)移表空間時(shí),請(qǐng)確保不要對(duì)該表空間執(zhí)行任何寫操作(如項(xiàng)目程序仍在運(yùn)行),否則可能后面報(bào)錯(cuò)

  我測(cè)試了下,邊轉(zhuǎn)移邊對(duì)該表空間執(zhí)行寫操作,結(jié)果在執(zhí)行第六步時(shí),報(bào)錯(cuò)了:

  ERROR 位于第 1 行:

  ORA-01113: 文件 11 需要介質(zhì)恢復(fù)

  ORA-01110: 數(shù)據(jù)文件 11: 'D:\DB Data\Oracle\orcl\USERS01.DBF '

  2.第五步(復(fù)制文件操作),必須是在第四步之后,否則第六步可能會(huì)報(bào)錯(cuò),錯(cuò)誤信息同上差不多

  3.如果第六步報(bào)錯(cuò)了,只能這樣恢復(fù):將現(xiàn)在使用的數(shù)據(jù)庫(kù)文件(D:\DB Data\Oracle\orcl\USERS01.DBF),重新還原成之前所使用的數(shù)據(jù)庫(kù)文件(C:\oracle\product\10.2.0\oradata\orcl\USERS01.DBF),即重新執(zhí)行第五、六、七步,只不過(guò)第五步的SQL稍微改下。

  …….

  SQL>rollback;

  SQL> alter tablespace eucrmspace rename datafile

  ' D:\DB Data\Oracle\orcl\USERS01.DBF'??? to? 'C:\oracle\product\10.2.0\oradata\orcl\USERS01.DBF';

  ……

  下面是完整的操作命令:

  C:\Documents and Settings\XXX>sqlplus /nolog

  SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 11月 15 16:29:14 2010

  Copyright (c) 1982, 2005, Oracle.? All rights reserved.

  SQL> conn / as sysdba

  已連接。

  SQL> shutdown immediate

  數(shù)據(jù)庫(kù)已經(jīng)關(guān)閉。

  已經(jīng)卸載數(shù)據(jù)庫(kù)。

  ORACLE 例程已經(jīng)關(guān)閉。

  SQL> startup open

  ORACLE 例程已經(jīng)啟動(dòng)。

  Total System Global Area? 612368384 bytes

  Fixed Size????? 1250428 bytes

  Variable Size? 83889028 bytes

  Database Buffers??? 520093696 bytes

  Redo Buffers??? 7135232 bytes

  數(shù)據(jù)庫(kù)裝載完畢。

  數(shù)據(jù)庫(kù)已經(jīng)打開。

  SQL> alter tablespace users offline;

  表空間已更改。

  SQL> select name from v$datafile;

  NAME

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

  C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF

  C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF

  C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF

  C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF

  SQL> alter tablespace USERS rename datafile 'C:\oracle\product\10.2.0\oradata\orcl\USERS01.DBF' to 'D:\DB Data\Oracle\orcl\USERS01.DBF';

  表空間已更改。

  SQL> select name from v$datafile;

  NAME

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

  C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF

  C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF

  C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF

  D:\DB DATA\ORACLE\ORCL\USERS01.DBF

  SQL> alter tablespace users online;

  表空間已更改。

  SQL> commit;

  提交完成。

關(guān)鍵詞標(biāo)簽:Oracle

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門文章 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索 為UNIX服務(wù)器設(shè)置Oracle全文檢索

相關(guān)下載

    人氣排行 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 ORACLE SQL 判斷字符串是否為數(shù)字的語(yǔ)句 ORACLE和SQL語(yǔ)法區(qū)別歸納(1) oracle grant 授權(quán)語(yǔ)句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法