亚洲综合社区欧美综合色-欧美逼逼一区二区三区-国产老熟女高潮精品网站-国产日韩最新视频在线看

始創(chuàng)于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊(cè)有禮 登錄
  • 掛牌上市企業(yè)
  • 60秒人工響應(yīng)
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補(bǔ)償
全部產(chǎn)品
您的位置: 網(wǎng)站首頁(yè) > 幫助中心>文章內(nèi)容

Oracle菜鳥的一次Oracle恢復(fù)筆記

發(fā)布時(shí)間:  2012/8/14 18:05:30

最近開發(fā)環(huán)境的Oracle服務(wù)器磁盤空間滿了,于是又開始像以前一樣,到處刪東西,終于刪無(wú)可刪了,我又打起了oracle數(shù)據(jù)文件的主意,由于對(duì)oracle知之甚少,由此也引發(fā)了一系列的oracle錯(cuò)誤,后來(lái)經(jīng)過(guò)不懈努力,oracle終于又活了過(guò)來(lái)。成功之后,必然要將這次浪費(fèi)了幾個(gè)小時(shí)的事件記錄下來(lái),引以為戒吧。
由于不正常使用,Oracle服務(wù)器的硬盤磁盤空間滿了,沒(méi)法,到處刪東西,發(fā)現(xiàn)某個(gè)表空間沒(méi)什么用,但又不確定,于是,表空間沒(méi)做任何修改,而是直接在linux下把表空間的數(shù)據(jù)文件從一個(gè)磁盤移動(dòng)到另一個(gè)磁盤了(/data/掛載的是另一個(gè)磁盤):
-
 

[root@localhost ~]# cp /u01/app/Oracle/oradata/sj/sj_test.dbf /data/
[root@localhost ~]# rm /u01/app/Oracle/oradata/sj/sj_test.dbf
(移動(dòng)可以用mv的,請(qǐng)各位高手原諒本菜。)
此時(shí)心里想的是Oracle應(yīng)該在使用這個(gè)表空間的時(shí)候發(fā)現(xiàn)出錯(cuò)會(huì)報(bào)錯(cuò),而不是啟動(dòng)就報(bào)錯(cuò)(無(wú)知真可怕!)

有空間啦,于是興高采烈的開始制作樣板庫(kù),結(jié)果半下不到,死逼!

Oracle死了!

此時(shí)必然要做的就是重啟服務(wù)器:
SQL> Startup

沒(méi)用!

強(qiáng)制重啟:
SQL> Startup force;
Oracle instance started.

Total System Global Area 1073741824 bytes
Fixed Size                  1223540 bytes
Variable Size             197133452 bytes
Database Buffers          868220928 bytes
Redo Buffers                7163904 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 12 - see DBWR trace file
ORA-01110: data file 12: '/u01/app/Oracle/oradata/sourcejoy.com/sourcejoy.com.test.dbf'

分步重啟:
SQL> Startup mount;
SQL> Alter database open;
Alter database open
*
ERROR at line 1:
ORA-01157: cannot identify/lock data file 12 - see DBWR trace file
ORA-01110: data file 12: '/u01/app/Oracle/oradata/sourcejoy.com/sourcejoy.com.test.dbf'

暈了,開始到網(wǎng)上狂搜!

找到一篇文章

很符合,按照B情況來(lái):
SQL> Shutdown immediate;
Oracle instance shut down.
SQL> startup mount;
Oracle instance started.

Total System Global Area 1073741824 bytes
Fixed Size                  1223540 bytes
Variable Size             197133452 bytes
Database Buffers          868220928 bytes
Redo Buffers                7163904 bytes
Database mounted.

更改表空間數(shù)據(jù)文件位置:
SQL> alter database rename file '/u01/app/Oracle/oradata/sourcejoy.com/sourcejoy.com.test.dbf' to '/data/sourcejoy.com.test.dbf';

alter database rename file '/u01/app/Oracle/oradata/sourcejoy.com/sourcejoy.com.test.dbf' to
*
ERROR at line 1:
ORA-01511: error in renaming log/data files
ORA-01141: error renaming data file 12 - new file
'/data/sourcejoy.com.test.dbf' not found
ORA-01110: data file 12: '/u01/app/Oracle/oradata/sourcejoy.com/sourcejoy.com.test.dbf'
ORA-27041: unable to open file
Linux Error: 13: Permission denied
Additional information: 2

怎么回事?文件找不到?沒(méi)權(quán)限是啥?

退出sqlplus,到/data/下,文件存在啊,暈死。(這時(shí)是Oracle賬戶)

嘗試把文件拷回原來(lái)的位置:
[Oracle@localhost data]# cp sourcejoy.com.test.dbf /u01/app/oracle/oradata/sourcejoy.com/
Permission denied!

權(quán)限不夠,暈死!接下來(lái)肯定是要修改權(quán)限啦。

跳回root用戶:
[Oracle@localhost data]# su - root
Password: 

輸完密碼,開始修改權(quán)限:
[root@localhost ~]# cd /data/
[root@localhost data]# chmod 777 sourcejoy.com.test.dbf

回到sqlplus:
SQL> alter database rename file '/u01/app/Oracle/oradata/sourcejoy.com/sourcejoy.com.test.dbf'
  2  to
  3  '/data/sourcejoy.com.test.dbf';
Database altered.

成功!

我打開數(shù)據(jù)庫(kù)!
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01113: file 12 needs media recovery
ORA-01110: data file 12: '/data/sourcejoy.com.test.dbf'

我擦!

百度了一下,原來(lái)要recovery:
SQL> recovery database;
SP2-0734: unknown command beginning "recovery d..." - rest of line ignored.

暫時(shí)忍受,并按這廝的命令來(lái)(如果不行就打算罵娘啦!)

SQL> alter database datafile '/data/sourcejoy.com.test.dbf' online;
Database altered.

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01113: file 12 needs media recovery
ORA-01110: data file 12: '/data/sourcejoy.com.test.dbf'

報(bào)錯(cuò)都和這哥們兒描述的一樣!

SQL> recover database;
Media recovery complete.

SQL> alter database open;
Database altered.

成功!

教訓(xùn)、經(jīng)驗(yàn)和總結(jié):
1.別把Oracle當(dāng)白癡,數(shù)據(jù)庫(kù)有任何問(wèn)題這家伙肯定第一個(gè)知道!

2.Oracle是博大精深地,應(yīng)該好好扎實(shí)地了解它的基礎(chǔ)知識(shí)和常用知識(shí),哪怕你不是DBA,這樣平時(shí)做事情的時(shí)候才會(huì)心中有數(shù),不會(huì)像我一樣像個(gè)無(wú)頭蒼蠅到處亂撞。

3.Oracle的好多操作并沒(méi)有想象中那樣復(fù)雜,別害怕去操作oracle,其實(shí)它很溫柔,網(wǎng)上好多oracle操作都是很復(fù)雜的,考慮很多東西,所以會(huì)嚇退一些初學(xué)oracle的哥們兒,就像移動(dòng)oracle的表空間數(shù)據(jù)文件,網(wǎng)上的描述都是又是啟動(dòng)歸檔模式又是搞這又是搞那的,這些東西對(duì)于生產(chǎn)環(huán)境可能很重要,但對(duì)于初學(xué)者或者非DBA類的程序員,完全可以只考慮移走文件其他的都無(wú)所謂啦。


 


本文出自:億恩科技【1tcdy.com】

服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經(jīng)營(yíng)性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經(jīng)營(yíng)性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經(jīng)營(yíng)性ICP/ISP證:贛B2-20080012
  • 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
  • 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-60135900
  • 專注服務(wù)器托管17年
    掃掃關(guān)注-微信公眾號(hào)
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號(hào)總部企業(yè)基地億恩大廈  法律顧問(wèn):河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號(hào)
      1
     
     
     
     

    0371-60135900
    7*24小時(shí)客服服務(wù)熱線