11G的华为手机误删视频恢复视频误删怎么恢复

博客访问: 5236175
博文数量: 2021
注册时间:
认证徽章:
快乐学习,快乐工作,让我们一起户外吧!
ITPUB论坛APP
ITPUB论坛APP
APP发帖 享双倍积分
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: Oracle
场景描述:表空间的误删除, 当前的控制文件不识别该表空间,必须用能识别该表空间的备份的控制文件
--做3次日志切换
--查看归档日志信息, 注意resetlogs前后,incarnation的变化
sys@TESTDB11select sequence# name from v$archived_log
&SEQUENCE# NAME
---------- ------------------------------
&&&&&&& 93 archive11_93_dbf
&&&&&&& 93 archive21_93_dbf
&&&&&&& 94 archive11_94_dbf
&&&&&&& 94 archive21_94_dbf
&&&&&&& 95 archive11_95_dbf
&&&&&&& 95 archive21_95_dbf
&&&&&&& 94 archive11_94_dbf
&&&&&&& 94 archive21_94_dbf
&&&&&&& 95 archive11_95_dbf
&&&&&&& 95 archive21_95_dbf
&&&&&&& 96 archive11_96_dbf
&&&&&&& 96 archive21_96_dbf
&&&&&&&& 1 archive11_1_dbf
&&&&&&&& 1 archive21_1_dbf
14 rows selected
--查看当前表空间的信息
sys@TESTDB11select tablespace_name from dba_tablespaces
TABLESPACE_NAME
------------------------------
6 rows selected
--创建一个新的表空间并在该表空间上创建一张表
sys@TESTDB11create tablespace newts datafile '/oradata/newts01.dbf' size 20m
Tablespace created
scott@TESTDB11create table tab_newts
tablespace newts as select
from salgrade
Table created
--手工备份该表空间
sys@TESTDB11alter tablespace newts begin backup
oracle@S1011exporthomeoracle$ cp oradatanewts01dbf pooldisk02backup01inconsistent
sys@TESTDB11alter tablespace newts end backup
--把该表空间存在时的控制文件备份出来
sys@TESTDB11alter database backup
controlfile to '/pooldisk02/backup01/inconsistent/control_newsts.bak'
Database altered
--做3次日志切换
--查看当前SCN,恢复时就恢复到这个SCN
sys@TESTDB11select current_scn from v$database
CURRENT_SCN
-----------
&&& 2529246
1 row selected
--表空间误删除,包括相应的对象和数据文件
sys@TESTDB11drop tablespace newts
including contents and datafiles
Tablespace dropped
--进行不完全恢复,是要还原所有的数据文件,然后执行不完全恢复,但当前的控制文件不认识newts表空间
sys@TESTDB11select name from v$tablespace
------------------------------
6 rows selected
--数据文件也不包括了
sys@TESTDB11select name from v$datafile
------------------------------
oradatasystem01dbf
oradatasysaux01dbf
oradataundotbs01dbf
oradatausers01dbf
oradataexample01dbf
5 rows selected
--因此需要使用一个可以识别该表空间的备份的控制文件来恢复
sys@TESTDB11shutdown abort
ORACLE instance shut down
--还原控制文件和数据文件
oracle@S1011exporthomeoracle$ cp pooldisk02backup01inconsistentcontrol_newstsbak u01apporacleoradataTestDB11control01ctl
oracle@S1011exporthomeoracle$ cp pooldisk02backup01inconsistentcontrol_newstsbak u01apporaclefast_recovery_areaTestDB11control02ctl
oracle@S1011exporthomeoracle$ cp pooldisk02backup01inconsistentdbf oradata
sys@TESTDB11startup mount
ORACLE instance started
Total System Global Area&
Fixed Size&&&&&&&&&&&&&&&&& 2230792 bytes
Variable Size&&&&&&&&&&&&
Database Buffers&&&&&&&&&
Redo Buffers&&&&&&&&&&&&&&& 2306048 bytes
Database mounted
--查看数据文件中检查点
idlecol name for a60
idleselect name checkpoint_change# from v$datafile_header
NAME&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& CHECKPOINT_CHANGE#
------------------------------------------------------------
------------------
oradatasystem01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2526335
oradatasysaux01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2526361
oradataundotbs01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2526381
oradatausers01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2526397
oradataexample01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2526409
oradatanewts01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2529022
6 rows selected
idlerecover database using backup controlfile until change 2529246
ORA00279 change 2526335 generated at 08132013 044344 needed for thread 1
ORA00289 suggestion
archive21_1_dbf
ORA00280 change 2526335 for thread 1 is in sequence #1
Specify log RETsuggested
ORA00279 change 2527038 generated at 08132013 045613 needed for thread 1
ORA00289 suggestion
archive21_2_dbf
ORA00280 change 2527038 for thread 1 is in sequence #2
ORA00278 log file '/archive2/1_1_.dbf' no longer needed for this recovery
ORA00279 change 2527103 generated at 08132013 045835 needed for thread 1
ORA00289 suggestion
archive21_3_dbf
ORA00280 change 2527103 for thread 1 is in sequence #3
ORA00278 log file '/archive2/1_2_.dbf' no longer needed for this recovery
ORA00279 change 2529206 generated at 08132013 053022 needed for thread 1
ORA00289 suggestion
archive21_4_dbf
ORA00280 change 2529206 for thread 1 is in sequence #4
ORA00278 log file '/archive2/1_3_.dbf' no longer needed for this recovery
ORA00279 change 2529221 generated at 08132013 053102 needed for thread 1
ORA00289 suggestion
archive21_5_dbf
ORA00280 change 2529221 for thread 1 is in sequence #5
ORA00278 log file '/archive2/1_4_.dbf' no longer needed for this recovery
ORA00279 change 2529225 generated at 08132013 053104 needed for thread 1
ORA00289 suggestion
archive21_6_dbf
ORA00280 change 2529225 for thread 1 is in sequence #6
ORA00278 log file '/archive2/1_5_.dbf' no longer needed for this recovery
ORA00308 cannot open archived log '/archive2/1_6_.dbf'
ORA27037 unable to obtain file status
SolarisAMD64 Error 2 No such file or directory
Additional information 3
--缺少日志,判断当前的数据文件中检查点,没有到达指定位置
idleselect name checkpoint_change# from v$datafile_header
NAME&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& CHECKPOINT_CHANGE#
------------------------------------------------------------
------------------
oradatasystem01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2529225
oradatasysaux01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2529225
oradataundotbs01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2529225
oradatausers01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2529225
oradataexample01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2529225
oradatanewts01dbf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2529225
6 rows selected
--查看当前的联机日志,确定哪一个没有归档,需要的信息就在其中
idleselect sequence# group# status from v$log
&SEQUENCE#&&&& GROUP# STATUS
---------- ---------- ----------------
&&&&&&&& 1&&&&&&&&& 1 INACTIVE
&&&&&&&& 3&&&&&&&&& 3 CURRENT
&&&&&&&& 2&&&&&&&&& 2 INACTIVE
idlecol member for a50
idleselect group# member from v$logfile
&&& GROUP# MEMBER
---------- --------------------------------------------------
&&&&&&&& 2 u01apporacleoradataTestDB11redo02log
&&&&&&&& 1 u01apporacleoradataTestDB11redo01log
&&&&&&&& 3 u01apporacleoradataTestDB11redo03log&&&&&&
idlerecover database using backup controlfile until change 2529246
ORA00279 change 2529225 generated at 08132013 053104 needed for thread 1
ORA00289 suggestion
archive21_6_dbf
ORA00280 change 2529225 for thread 1 is in sequence #6
Specify log RETsuggested
u01apporacleoradataTestDB11redo03log
Log applied
Media recovery complete&&&&&&&
--开库,确认已经恢复到删除表空间之前
Alter database open resetlogs
scott@TESTDB11select
from tab_newts
&&&& GRADE&&&&& LOSAL&&&&& HISAL
---------- ---------- ----------
&&&&&&&& 1&&&&&&& 700&&&&&& 1200
&&&&&&&& 2&&&&&& 1201&&&&&& 1400
&&&&&&&& 3&&&&&& 1401&&&&&& 2000
&&&&&&&& 4&&&&&& 2001&&&&&& 3000
&&&&&&&& 5&&&&&& 3001&&&&&& 9999
--查看表空间和相应的数据文件
sys@TESTDB11col file_name for a30
sys@TESTDB11select tablespace_name file_name from dba_data_files
TABLESPACE_NAME&&&&&&&&&&&&&&& FILE_NAME
------------------------------ ------------------------------
EXAMPLE&&&&&&&&&&&&&&&&&&&&&&& oradataexample01dbf
USERS&&&&&&&&&&&&&&&&&&&&&&&&& oradatausers01dbf
UNDOTBS1&&&&&&&&&&&&&&&&&&&&&& oradataundotbs01dbf
SYSAUX&&&&&&&&&&&&&&&&&&&&&&&& oradatasysaux01dbf
SYSTEM&&&&&&&&&&&&&&&&&&&&&&&& oradatasystem01dbf
NEWTS&&&&&&&&&&&&&&&&&&&&&&&&& oradatanewts01dbf
6 rows selected
阅读(566) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。博客访问: 52287
博文数量: 83
注册时间:
认证徽章:
冰冻三尺非一日之寒,滴水穿石非一日之功。
ITPUB论坛APP
ITPUB论坛APP
APP发帖 享双倍积分
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: Linux
& & &一般情况下,我们在安装的时候,都会创建一个Oracle用户,用该用户来安装和管理Oracle。Oracle用户的根目录就是/home/oracle。
通常安装Oracle数据库是按照官方文档的建议来创建和管理的数据库,这样也便于进行进行数据库的管理。
今天早上,一朋友就出现这个问题,在客户那里,使用rm –rf ./home命令误删除了整个/home目录,当时他整个人都快要崩了,不知道该如何去恢复,没有任何思路。居然犯这么低级的错误:rm -rf 这样的命令也敢用;哎,都是苦逼的DBA,这样的错误谁会没有犯过呢?所以,作为一名DBA,在执行任何的命令都要想清楚,尤其是在生产环境中,在使用rm命令的时候,最好不要使用-f参数,哎,还是慢慢的历练吧,遇到的坑越多,也许成长的越快吧!!!
&&该文主要是针对误删除/home/oracle 目录的解决方法。这里不涉及Oracle的数据文件的恢复。
1、在安装oracle 数据库的时候,我们都会创建相关的用户和组。&
[root@seiang11g
~]# groupadd
[root@seiang11g
~]# groupadd
[root@seiang11g
~]# groupadd
[root@seiang11g
~]# useradd
-g oinstall -G dba oracle
这里是用的命令来创建的。 和数据库创建一样,我们一般都是通过OUI来创建实例。所以我们在讲这个故障的处理之前,需要了解Linux手工创建用户和组的方法。
每个用户的创建,都会涉及到如下几个文件:
/etc/passwd (用户)
/etc/group (用户组)
/etc/shadow (密钥文件)
/home/username (家目录)
/etc/skel/.* (骨架文件)
目录/etc/skel目录一般是存放用户启动文件的目录,这个目录是由root权限控制,当添加用户时,这个目录下的文件自动复制到新添加的用户的家目录下;/etc/skel 目录下的文件都是隐藏文件,也就是类似.file格式的;我们可通过修改、添加、删除/etc/skel目录下的文件,来为用户提供一个统一、标准的、默认的用户环境。
目录下的文件,一般是用useradd命令添加用户(user)时,系统自动复制到新添加用户(user)的家目录下;如果我们通过修改 /etc/passwd 来添加用户时,我们可以自己创建用户的家目录,然后把/etc/skel 下的文件复制到用户的家目录下,然后要用chown 来改变新用户家目录的属主。
/etc/default/useradd&文件
通过useradd 添加用户时的规则文件,内容如下:
# useradd defaults file
HOME=/home&&&&&&&&&&&&&&&& --把用户的家目录建在/home中;
INACTIVE=-1 & & & & & & & & --是否启用帐号过期停权,-1表示不启用;
EXPIRE= & & & & & & & & & & & &--帐号终止日期,不设置表示不启用;
SHELL=/bin/bash &&&&&&&&&&&--所用SHELL的类型;
SKEL=/etc/skel & & & & & & & &--默认添加用户的目录默认文件存放位置;也就是说,当我们用useradd添加用户时,用户家目录下的文件,都是从这个目录中复制过去的;
在创建用户的时候,会在/etc/passwd,/etc/group,/etc/shadow三个文件中添加用户的信息,创建一个/home 下的用户根目录,然后把所有的骨架文件复制到用户的根目录下。
[root@seiang11g
/etc/passwd | grep oracle
oracle:x:::/home/oracle:/bin/bash
[root@seiang11g
~]# tail -3
/etc/group
oinstall:x:1001:
dba:x:1002:oracle
oper:x:1003:oracle
[root@seiang11g
/etc/shadow | grep oracle
oracle:$6$GjeAhxPv$XLNcGZyLVTsm/GTzQPCL57A1/uKIlGgcfFunveGhAe56qTiYW1RwWims77GpHvp3l2GysGqt63vJHBmlFkxRv/:99:7:::
当我们删除/home/oracle这个用户的根目录之后,用户的配置信息还存在系统的配置文件中,所以只需要还原骨架文件,在修改一下环境变量的信息,就可以了。
误删除/home/oracle目录的案例分析:
查看数据库的运行状态:正常运行
[oracle@seiang11g
~]$ ps -ef |
grep ora | grep -v grep
root&&&&& 1681&
:08 pts/0&&& 00:00:00 su - oracle
oracle&&& 1682&
:08 pts/0&&& 00:00:00 -bash
oracle&&& 1722&
:08 pts/0&&& 00:00:00 rlwrap sqlplus / as sysdba
oracle&&& 1723&
:08 pts/3&&& 00:00:00 sqlplus&& as sysdba
root&&&&& 1725&
:08 pts/1&&& 00:00:00 su - oracle
oracle&&& 1726&
:08 pts/1&&& 00:00:00 -bash
oracle&&& 1768&&&&
1& 0 16:08 ?&&&&&&& 00:00:00
/u01/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr LISTENER -inherit
oracle&&& 1774&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_pmon_seiang11g
oracle&&& 1776&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_psp0_seiang11g
oracle&&& 1778&&&&
1& 1 16:08 ?&&&&&&& 00:00:05 ora_vktm_seiang11g
oracle&&& 1782&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_gen0_seiang11g
oracle&&& 1784&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_diag_seiang11g
oracle&&& 1786&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_dbrm_seiang11g
oracle&&& 1788&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_dia0_seiang11g
oracle&&& 1790&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_mman_seiang11g
oracle&&& 1792&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_dbw0_seiang11g
oracle&&& 1794&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_lgwr_seiang11g
oracle&&& 1796&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_ckpt_seiang11g
oracle&&& 1798&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_smon_seiang11g
oracle&&& 1800&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_reco_seiang11g
oracle&&& 1802&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_mmon_seiang11g
oracle&&& 1804&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_mmnl_seiang11g
oracle&&& 1806&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_d000_seiang11g
oracle&&& 1808&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_s000_seiang11g
oracle&&& 1814&
:08 ?&&&&&&& 00:00:00 oracleseiang11g
(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle&&& 1816&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_arc0_seiang11g
oracle&&& 1818&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_arc1_seiang11g
oracle&&& 1820&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_arc2_seiang11g
oracle&&& 1822&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_arc3_seiang11g
oracle&&& 1824&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_qmnc_seiang11g
oracle&&& 1838&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_cjq0_seiang11g
oracle&&& 1850&&&&
1& 0 16:08 ?&&&&&&& 00:00:00 ora_q000_seiang11g
oracle&&& 1852&&&&
1& 0 16:08 ?&&&& &&&00:00:00 ora_q001_seiang11g
oracle&&& 1945&
:13 pts/1&&& 00:00:00 ps -ef&
直接把/home/oracle 目录删掉,我这里直接mv模拟rm。
[root@seiang11g
~]# cd /home
[root@seiang11g
drwx------& 15 oracle oinstall 4096 Aug& 9 15:08 oracle
drwx------.
&3 seiang seiang&&&& 78 Jul 10 09:46 seiang
[root@seiang11g
oracle/ oracle.bak
[root@seiang11g
[root@seiang11g
drwx------& 15 oracle oinstall 4096 Aug& 9 15:08 oracle.bak
drwx------.& 3 seiang seiang&&&& 78 Jul 10 09:46 seiang
[root@seiang11g
[root@seiang11g
home]# su -
login: Wed Aug& 9 16:08:15 CST 2017 on
warning: cannot change directory to /home/oracle: No such file or directory
-bash-4.2$
-bash-4.2$ sqlplus / as
sqlplus: command not found...
-bash-4.2$
-bash-4.2$ pwd
-bash-4.2$
-bash-4.2$ whoami
创建目录:
[root@seiang11g
home]# pwd
[root@seiang11g
home]# mkdir
[root@seiang11g
home]# chown
oracle:oinstall oracle
[root@seiang11g
drwxr-xr-x&& 5 oracle oinstall 8192 Aug& 9 16:33 oracle
drwx------& 15 oracle oinstall 4096 Aug& 9 15:08 oracle.bak
drwx------.& 3 seiang seiang&&&& 78 Jul 10 09:46 seiang
复制骨架文件:
[root@seiang11g
oracle]# cp -R
/etc/skel/.* /home/oracle/
[root@seiang11g
oracle]# chown
-R oracle:oinstall/home/oracle
[root@seiang11g
oracle]# ls -al
drwxr-xr-x& 3 oracle oinstall 8192 Aug& 9 16:30 .
drwxr-xr-x.
5 root&& root&&&&&& 52 Aug&
9 16:22 ..
-rw-r--r--& 1 oracle oinstall&& 18 Aug&
9 16:29 .bash_logout
-rw-r--r--& 1 oracle oinstall& 193 Aug&
9 16:29 .bash_profile
-rw-r--r--& 1 oracle oinstall& 231 Aug&
9 16:29 .bashrc
drwxr-xr-x& 4 oracle oinstall&& 39 Aug&
9 16:29 .mozilla
-rw-------& 1 oracle oinstall&&& 0 Aug&
9 16:29 .pwd.lock
-rw-r--r--& 1 oracle oinstall& 163 Aug&
9 16:29 .updated
修改oracle用户的环境变量:
[root@seiang11g
oracle]# vim
.bash_profile
.bash_profile
Get the aliases and functions
[ -f ~/.bashrc ]; then
&&&&&&& . ~/.bashrc
User specific environment and startup programs
PATH=$PATH:$HOME/.local/bin:$HOME/bin
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
ORACLE_SID=seiang11g
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
PATH=$ORACLE_HOME/bin:$PATH
sqlplus='rlwrap sqlplus'
rman='rlwrap rman'
[root@seiang11g
~]# su - oracle
login: Wed Aug& 9 16:16:48 CST 2017 on
[oracle@seiang11g
[oracle@seiang11g
~]$ sqlplus / as
Release 11.2.0.4.0 Production on Wed Aug 9 16:32:54 2017
(c) , Oracle.& All rights
Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
the Partitioning, OLAP, Data Mining and Real Application Testing options
SYS@seiang11g&&
恢复正常。但如果在/home/oracle目录下存在Oracle的数据文件,那么恢复就比这里要复杂多。
作者:SEian.G(苦练七十二变,笑对八十一难)
阅读(356) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。2012年10月 Oracle大版内专家分月排行榜第二2012年7月 Oracle大版内专家分月排行榜第二
2012年8月 Oracle大版内专家分月排行榜第二
2012年12月 Oracle大版内专家分月排行榜第三2012年10月 Oracle大版内专家分月排行榜第三2012年9月 Oracle大版内专家分月排行榜第三2011年11月 Oracle大版内专家分月排行榜第三2011年9月 Oracle大版内专家分月排行榜第三2011年7月 Oracle大版内专家分月排行榜第三
2012年8月 Oracle大版内专家分月排行榜第二
2012年12月 Oracle大版内专家分月排行榜第三2012年10月 Oracle大版内专家分月排行榜第三2012年9月 Oracle大版内专家分月排行榜第三2011年11月 Oracle大版内专家分月排行榜第三2011年9月 Oracle大版内专家分月排行榜第三2011年7月 Oracle大版内专家分月排行榜第三
匿名用户不能发表回复!|误删oracle11g表空间文件后,数据库未打开,请各位指点 - Oracle管理当前位置:& &&&误删oracle11g表空间文件后,数据库未打开,请各位误删oracle11g表空间文件后,数据库未打开,请各位指点www.MyException.Cn&&网友分享于:&&浏览:96次误删oracle11g表空间文件后,数据库未打开,请各位大虾指点自己也在网上找了一些解决办法,可木有成功。。Copyright (c) , Oracle.
All rights reserved.SQL& conn sys/123 as sysdba已连接。SQL& alter database open & 2SQL& shutdown immediate已经卸载数据库。ORACLE 例程已经关闭。SQL& startupORACLE 例程已经启动。Total System Global Area
bytesFixed Size
1375792 bytesVariable Size
bytesDatabase Buffers
bytesRedo Buffers
5804032 bytes数据库装载完毕。ORA-01157: 无法标识/锁定数据文件 9 - 请参阅 DBWR 跟踪文件ORA-01110: 数据文件 9: 'E:\PLSQL DEV\BBS.ORA'SQL& startup mountORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它SQL& alter database datafile 'E:\PLSQL DEV\BBS.ORA' offline drop & 2请问最后一句怎么没能执行??或者有木有更好的解决办法?------解决方案--------------------alter database open有没有执行成功啊
------解决方案--------------------SQL code
cmd窗口中執行:
sqlplus/nolog
------解决方案--------------------SQL code
SQL& alter database datafile 'E:\PLSQL DEV\BBS.ORA'
------解决方案--------------------1.创建一个新的表空间  create tablespace rainbow  datafile 'd:\oracle\oradata\oa_test5\rainbow01.dbf' size 10m;  2.在其中建表  create table test  (emp int)    3.插入数据  insert into test  (emp) values(1000);    4.备份控制文件  alter database backup controlfile to 'd:\control.bak';  5.关闭数据库    6.进行全备份  备份所有的数据文件  7.打开数据库  startup  8.删除表空间rainbow  drop tablespace rainbo 16:46:03  9.为了验证我们再更新另外一个表空间里的test2表  insert into test2 (emp) values(888);    10.关闭数据库,并用6进行的全备份restore所有的数据文件(不完全恢复一定要全部的数据文件)  11.打开至    12.执行不完全恢复  recover database until time':16:46:00' usin  (为什么要使用using backup controlfile 因为删除表空间后控制文件被修改了)  SQL& recover database until time':16:46:00' usin  ORA-00279: 更改 471722 (在 03/23/:44 生成) 对于线程 1 是必需的  ORA-00289: 建议: D:\ORACLE\ORADATA\OA_TEST5\ARCHIVE\ARC  ORA-00280: 更改 471722 对于线程 1 是按序列 # 1 进行的  指定日志: {&RET&=suggested | filename | AUTO | CANCEL}  D:\ORACLE\ORADATA\OA_TEST5\redo03.log  已应用的日志  完成介质恢复  13.打开数据库  alter dat  数据库已更改  14.查询原来的数据  select *  结果报错  ERROR at line 1:  ORA-00376: file 11 cannot be read at this time  ORA-01111: name for data file 11 is unknown - rename to correct file  ORA-01110: data file 11: '/opt/oracle/product/9.2.0/dbs/MISSING00011'  问题的原因:现在的控制文件中没有tablespace rainbow (前面已经将其删除)  虽然我们用备份的控制文件对数据库进行了修复但是数据库打开时当前的控制  文件仍然是最新的控制文件。  出现'/opt/oracle/product/9.2.0/dbs/MISSING00011' ,是因为数据库启动时  发现控制文件和system表空间中的dv信息不一致造成的  解决方法:重建控制文件  用备份出来的控制文件'd:\control.bak'重命名即可,或使用由alter  database backup control file to trace 备份的进行重建。  15.重新开启数据库并查询数据  SQL& select *  EMP  ----------  1000  SQL& select * from test2;  未选定行  说明数据库已经按我们的要求进行不完全恢复了。 共&2&页:
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有

我要回帖

更多关于 手机误删除视频恢复 的文章

 

随机推荐