精华内容
下载资源
问答
  • 备份数据库时忘记备份口令文件怎么恢复? 我用全备份覆盖了原来的文件,但是没有覆盖口令文件,因为当时忘记辈分了,然后用internal登陆系统提示没有权限,怎么办?备份, 恢复, internal, 系统, 提示 orapwd重建...

    备份数据库时忘记备份口令文件,怎么恢复?

    我用全备份覆盖了原来的文件,但是没有覆盖口令文件,因为当时忘记辈分了,然后用internal登陆系统提示没有权限,怎么办?


    备份, 恢复, internal, 系统, 提示



    orapwd重建

    展开全文
  • 对于数据库管理员来说不能仅寄希望于计算机操作系统的安全运行,而是要建立一整套的数据库备份恢复机制。一、如何对数据库进行还原与备份Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把...

    任何数据库在长期使用过程中,都会存在一定的安全隐患。对于数据库管理员来说不能仅寄希望于计算机操作系统的安全运行,而是要建立一整套的数据库备份与恢复机制。

    一、如何对数据库进行还原与备份

    Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。

    Oracle支持三种方式类型的输出,分别是表方式(T方式),将指定表的数据导出、用户方式(U方式),将指定用户的所有对象及数据导出)、全库方式(Full方式),瘵数据库中的所有对象导出。

    数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。

    增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。 增量导出包括三种类型:“完全”增量导出、“增量型”增量导出、“累积型”增量导出。数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。

    二、备份

    备份可以分为两种,主要是冷备份和热备份。

    冷备份的优点是:

    1、是非常快速的备份方法(只需拷文件)

    2、容易归档(简单拷贝即可)

    3、容易恢复到某个时间点上(只需将文件再拷贝回去)

    4、能与归档方法相结合,做数据库“最佳状态”的恢复。

    5、低度维护,高度安全。

    如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括:

    1、所有数据文件

    2、所有控制文件

    3、所有联机REDO LOG文件

    4、 Init.ora文件(可选)

    注意:冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。

    下面是作冷备份的完整例子。

    (1) 关闭数据库

    sqlplus /nolog

    sql

    Tag标签:

    展开全文
  • Oracle只有数据文件恢复数据库恢复前准备工作1备份数据文件文件路径为%ORACLE_NOME%/oradata/xxxx(xxxx为数据库实例)2备份ORACLE安装路径下的D:\app\Administrator\diag\rdbms\orcl\orcl\trace\alert_xxxx.log...

    Oracle只有数据文件恢复数据库

    恢复前准备工作

    1备份数据文件,文件路径为%ORACLE_NOME%/oradata/xxxx(xxxx为数据库实例)

    2备份ORACLE安装路径下的D:\app\Administrator\diag\rdbms\orcl\orcl\trace\alert_xxxx.log

    (xxxx为数据库实例)

    恢复步骤

    1安装oracle数据库,安装时不要创建数据库实例

    2创建数据库实例:安装完成后创建数据库实例,实例名与原数据库实例相同,并创建

    监听服务。

    3拷贝数据文件:停止oracle相关服务,拷贝备份的数据文件(包括数据文件及日志文件)到新安装的oracle数据库

    安装位置对应路径下,删除新成的控制文件及日志文件(%ORACLE_NOME%/oradata/下所有文件)、完成后重启oracle相关服务。

    4准备重建控制文件脚本:打开事先备份的alert_XXX.log文件,查找最后一个create controlfile语句并修改以下部分

    若该语句中包含NORESETLOGS,则将其改为RESETLOGS;原因是重做日志文件已经丢失。

    LOGFILE段是指重做日志文件到期望的文件位置。

    DATAFILE段是指定到数据文件的实际文件位置。不能包含临时表空间用到的文件,否则报错(ora-01503,ora-01160,ora-01110)

    注意:creat controlfile语句中如果包含NOARCHIVELOG,则为非归档模式,如为ARCHIVELOG,则为归档模式,没有则保持没有。

    5重建控制文件

    打开sqlplus使用DBA登录数据库

    关闭数据库

    示例:SQL>shutdown immediate;

    启动数据库,但不挂载数据文件

    示例:SQL>startup nomount;

    重建控制文件,执行准备好的重建控制文件脚本

    示例;

    Create controlfile

    reuse set database "orcl"

    MAXINSTANCES 8

    MAXLOGHISTORY 1

    MAXLOGFILES 16

    MAXLOGMEMBERS 3

    MAXDATAFILES 100

    Datafile

    'd:\app\Administrator\oradata\orcl\SYSTEM01.DBF',

    'd:\app\Administrator\oradata\orcl\SYSAUX01.DBF',

    'd:\app\Administrator\oradata\orcl\UNDOTBS01.DBF',

    'd:\app\Administrator\oradata\orcl\USERS01.DBF',

    'd:\app\Administrator\oradata\orcl\ZWILLING_USERS.DBF'

    LOGFILE GROUP 1

    ('d:\app\Administrator\oradata\orcl\redo01.log') SIZE 51200K,

    GROUP 2 ('d:\app\Administrator\oradata\orcl\redo02.log')

    SIZE 51200K,

    GROUP 3

    ('d:\app\Administrator\oradata\orcl\redo03.log') SIZE 51200K RESETLOGS;

    带resetlogs参数启动数据库,重新生成重做日志文件

    SQL>alter database open resetlogs

    注意:执行启动数据库时报错(ORA-01194,ORA-01110),解决办法:recover重做日志文件。

    示例:SQL>recover database using backup controlfile until cancel;回车,当提示Specify

    log:{=suggested|filename|AUTO|CANCEL}

    输入日志文件地址如:d:\app\Administrator\oradata\orcl\redo01.log

    日志文件redo01.log还有错误,继续SQL>alter database open resetlogs;

    SQL>recover

    database using backup controlfile until cancel;

    输入日志文件地址如:d:\app\Administrator\oradata\orcl\redo02.log

    提示介质恢复完成,

    使用带resetlogs参数启动数据库SQL>alter database open resetlogs

    6添加临时表空间

    示例:

    SQL>alter

    tablespace temp add tempfile

    2  'd:\app\Administrator\oradata\orcl\TEMP01.DBF' reuse;

    7测试:退出sqlplus,重启数据库服务,使用原数据库普通用户的用户名密码登录;

    展开全文
  • 备份的control file,但之后我做了ddl操作,导致当前的control ...file来恢复数据库?  步骤1:检查当前redo和archive文件  sys@PAN>select group#,sequence#,archived,status,first_change#

        有备份的control file,但之后我做了ddl操作,导致当前的control file比备份的新,然后control file全部丢失,怎么用备份的control file来恢复数据库?

        步骤1:检查当前redo和archive文件

            sys@PAN>select group#,sequence#,archived,status,first_change# from v$log;

     

            GROUP SEQUENCE# ARC STATUS           FIRST_CHANGE#

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

                 1          4 NO  CURRENT                 443342

                 2          2 YES INACTIVE                443335

                 3          3 YES INACTIVE                443338

                

            sys@PAN>select name from v$archived_log where name is not null;

     

            NAME

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

            /u01/flash_recovery_area/PAN/archivelog/2013_06_23/o1_mf_1_1_8wg0nhky_.arc

            /u01/flash_recovery_area/PAN/archivelog/2013_06_23/o1_mf_1_2_8wg0njog_.arc

            /u01/flash_recovery_area/PAN/archivelog/2013_06_23/o1_mf_1_3_8wg0nlhz_.arc

        步骤2:冷备

        步骤3

            alter database backup controlfile to trace;

            生成一个trace文件,可以用于恢复控制文件,它是一个文本文件。

        步骤4

            alter database backup controlfile to '/backup/pancontrol.bak';

            备份当前的控制文件。

        步骤5

            创建一个表空间,然后在此表空间里建表,加数据,目的是让controlfile改变成新的。

            create tablespace ts_test02 datafile '/u01/oradata/pan/ts_test02_01.dbf' size 10m;

            sqlplus scott/tiger

            create table tb_test02 (id int) tablespace ts_test02;

            insert into tb_test02 values(1);

            insert into tb_test02 values(2);

            insert into tb_test02 values(3);

            commit;

            现在这些改变在哪个日志文件里呢?

            sys@PAN>select group#,sequence#,archived,status from v$log;

     

                GROUPSEQUENCE# ARC STATUS

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

                     1          4 NO  CURRENT

                     2          2 YES INACTIVE

                     3          3 YES INACTIVE

     

            Elapsed: 00:00:00.01

            理论上在1号日志中,一会要用这个做恢复。

        步骤6

            删除当前controlfile

        步骤7

            shutdown abort

        步骤8

            用备份controlfile转储。

            [oracle@oracle11g pan]$ cp /backup/pancontrol.bak control01.ctl

            [oracle@oracle11g pan]$ cp /backup/pancontrol.bak control02.ctl

        步骤9

            起库到mount,若到open会出错:

            sys@PAN>alter database open;

            alter database open

            *

            ERRORat line 1:

            ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

        步骤10

            尝试使用备份的controlfile来恢复数据库。

            recover database using backup controlfile;

            结果:

            sys@PAN>recover database using backup controlfile;

            ORA-00279: change 443470 generated at 06/23/2013 10:23:49 needed for thread 1

            ORA-00289: suggestion : /u01/flash_recovery_area/PAN/archivelog/2013_06_23/o1_mf_1_4_%u_.arc

            ORA-00280: change 443470 for thread 1 is in sequence #4

            Specify log: {<RET>=suggested | filename | AUTO | CANCEL}

           

            看下这个目录下有没有这个归档日志,发现没有。也就是说数据库会先找你的归档日志来恢复,但我们知道以前的那些DDL操作被记录到1号联机日志里了,所以我要用1号redo日志来做恢复。

           

            继续:

            recover database using backup controlfile;

            ORA-00279: change 443470 generated at 06/23/2013 10:23:49 needed for thread 1

            ORA-00289: suggestion : /u01/flash_recovery_area/PAN/archivelog/2013_06_23/o1_mf_1_4_%u_.arc

            ORA-00280: change 443470 for thread 1 is in sequence #4

            Specifylog: {<RET>=suggested | filename | AUTO | CANCEL}

            /u01/oradata/pan/redo01.log

            ORA-00283: recovery session canceled due to errors

            ORA-01244: unnamed datafile(s) added to control file by media recovery

            ORA-01110: data file 9: '/u01/oradata/pan/ts_test02_01.dbf'

            ORA-01112: media recovery not started

            又出错了!它说没有这个文件,因为日志里记录着ts_test02_01.dbf,但控制文件里却没有,好的,现在我查看下控制文件里那个文件叫什么。

            sys@PAN>select file#,status,name from v$datafile;

     

                 FILE# STATUS NAME

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

                     1 SYSTEM  /u01/oradata/pan/system01.dbf

                     2 ONLINE  /u01/oradata/pan/sysaux01.dbf

                     3 ONLINE  /u01/oradata/pan/lxtbs01.dbf

                     4 ONLINE  /u01/oradata/pan/users01.dbf

                     5 ONLINE  /u01/oradata/pan/undotbs02.dbf

                     6 ONLINE  /u01/oradata/pan/ts_test01.dbf

                     7 ONLINE  /u01/oradata/pan/ts_readonly01.dbf

                     8 ONLINE  /u01/oradata/pan/app2_01.dbf

                     9 RECOVER /u01/oracle/dbs/UNNAMED00009

     

            9 rows selected.

            现在明白了,控制文件里的这个文件名为“/u01/oracle/dbs/UNNAMED00009”,我把它先重命名成正确的。

            sys@PAN>alter database rename file '/u01/oracle/dbs/UNNAMED00009'

            2  to '/u01/oradata/pan/ts_test02_01.dbf';

            现在再一次恢复,使用1号redo日志。

            recover database using backup controlfile;

            ORA-00279: change 443687 generated at 06/23/2013 10:27:38 needed for thread 1

            ORA-00289: suggestion : /u01/flash_recovery_area/PAN/archivelog/2013_06_23/o1_mf_1_4_%u_.arc

            ORA-00280: change 443687 for thread 1 is in sequence #4

            Specify log: {<RET>=suggested | filename | AUTO | CANCEL}

            /u01/oradata/pan/redo01.log

            Log applied.

            Media recovery complete.

            果然,恢复成功!

            步骤11

            alter database open resetlogs;

            步骤12 冷备

     

    展开全文
  • SQL数据库置疑数据怎么恢复

    千次阅读 2016-05-04 17:20:38
    可以从磁盘和分区恢复丢失的数据库文件与数据库备份文件,包括(mdf,ndf,dat,bak文件)以及DBF ORA dmp,ibdata1 ibd myd,db dat,EDB等文件。数据库碎片恢复软件可以解决:市面上恢复软件无法恢复情况下的恢复,...
  • 常有新手问我该怎么备份数据库,下面介绍3种备份数据库的方法: (1)备份数据库文件 MySQL中的每一个数据库和数据表分别对应文件系统中的目录和其下的文件。 在Linux下数据库文件的存放目录一般为/var/lib/mysql...
  • 数据库备份就是在你硬盘坏了。系统崩溃坏了。数据文件损坏了,工作人员误删除数据的时候让你不伤心,不害怕。数据库的备份不同与一般的文件备份。一个备份方案总是跟客户的需求有关系的,一个从来没有新数据增加的...
  • 常有新手问我该怎么备份数据库,下面介绍3种备份数据库的方法: MySQL中的每一个数据库和数据表分别对应文件系统中的目录和其下的文件。在Linux下数据库文件的存放目录一般为/var/lib/mysql。在...
  • 怎么防止数据库备份文件(.bak)被别人拿去,不能恢复或者恢复后看不到自己的表结构
  • 怎么接触数据库,尤其是Oracle,所以在此留个脚印吧。 此文章主要介绍exp/imp命令,需要关掉数据库操作后进行,同时当备份恢复的时候最好清空数据,...1、数据库备份(保存以下内容为expdb.bat) @echo off ----...
  • MySQL数据库备份恢复

    千次阅读 2006-01-21 08:45:00
    MySQL数据库备份恢复完全可以在B/S下实现,其他数据库也是,这是肯定的,但是怎么实现呢?首先,建两个个bat文件或者cmd文件(bat可在98及NT下执行,cmd只能在NT下执行),备份:rem 判断mysql服务是否启动,...
  • MongoDB是怎么实现数据的备份恢复,故障切换以及数据库服务器的负载均衡等功能的呢?本文我们就介绍这些知识。 备份恢复 在创建MongoDB服务的时候,通过--dbpath指定目录就是存放mongdb数据库文件目录,我们...
  • MongoDB是怎么实现数据的备份恢复,故障切换以及数据库服务器的负载均衡等功能的呢?本文我们就介绍这些知识。 备份恢复 在创建MongoDB服务的时候,通过--dbpath指定目录就是存放mongdb数据库文件目录,我们...
  • MySQL数据库备份恢复完全可以在B/S下实现,其他数据库也是,这是肯定的,但是怎么实现呢? 首先,建两个个bat文件或者cmd文件(bat可在98及NT下执行,cmd只能在NT下执行), 备份: rem 判断mysql服务是否...
  • 数据库bak文件怎么打开

    万次阅读 2011-12-01 09:56:06
    1、打开SQL企业管理器,在...3、点击新建好的数据库名称(如论坛数据库Forum)-->然后点上面菜单中的工具-->选择恢复数据库 4、在弹出来的窗口中的还原选项中选择从设备-->点选择设备-->点添加-->然后选择你的备份
  • 原来刚学数据库的时候,不知道数据库备份和还原,就直接去拷贝数据库mdf和ldf文件,后来会了数据库备份和还原,一直也就没有注意拷贝mdf和ldf带来的问题。 现在需要参考原来拷贝的代码和数据库(拷贝的mdf和ldf...
  • 原来刚学数据库的时候,不知道数据库备份和还原,就直接去拷贝数据库mdf和ldf文件,后来会了数据库备份和还原,一直也就没有注意拷贝mdf和ldf带来的问题。 现在需要参考原来拷贝的代码和数据库(拷贝的mdf和ldf...
  • 恢复方法:1、停止数据库服务。2、将需要恢复数据库文件复制到另外的位置。3、启动数据库服务。4、确认要恢复数据库文件...7、用第2步中备份的.mdf文件覆盖新数据库的同名文件。8、启动数据库服务。9、运行alter...
  • 3.数据文件或者表空间没有进行过备份数据库也没有全库备份数据文件异常丢失;测试步骤:1:查看是否已开启归档模式:14:25:59 SQL> archive log listDatabase log mode Archive ModeAutomatic archival Enabled...
  • 从另外一台机器机器导出的完整备份文件,copy到其他机器去,并且两台服务器中的数据库名都是相同的,但是无论怎么选择还原方式,都是提示“备份集中的数据库备份与现有的 XXXXXX 数据库不同”。 真的很奇怪,以前...
  • 手机是非常方便的社交工具,所以在日常工作中除了电脑,...一、通过互盾安卓恢复大师恢复然后选择【免ROOT恢复】,该功能需要通过手机备份文件,然后备份文件之后,即开始解析数据库;而后扫描完成之后就可以看到...
  • 我按照这篇文章做到了第五步,然后就显示正“在恢复数据库,请等待恢复操作完成。” http://blog.csdn.net/giraffe_zj/article/details/7377898 并且在消息的最下面有个黄色的感叹号显示“查询已完成,但有错误”。...
  • 今天忽然想起这样一个问题, 如果从冷备份恢复的时候,数据文件放在和原来不一样的目录的话,要怎么处理呢? 问题如下.   http://www.itpub.net/viewthread.php?tid=1364656&extra=page%3D1&frombbs=1
  • Oracle 部分恢复法 我们有的时候需要做恢复测试,但是由于目标数据库太大,如果完全恢复数据文件,那么需要很大的存储空间,但是如果不做恢复测试,又无法怎么数据库备份是否可用,这里给大家介绍一种部分恢复法,...
  • SQL server数据库没有备份,现有*.LDF和*.MDF文件,数据量比较大,用软件LOG explore恢复会卡主,有什么办法可以恢复历史数据啊!!!
  • 2.导出数据库备份 3.数据导入与恢复 4.更改配置 5.恢复数据库应用 若是SQL Serve迁移,将使用的工具或命令是 Navicat Premium、sqlserver management studio,完整备份导出数据(文件类型bak); 若
  • 数据库备份就有恢复,只知道备份,不懂恢复是不行的,服务器总是会出毛病,况且现在利用云服务器的公司很多,真有天云服务器奔溃了,还是要自己恢复数据的,在公司数据大于一切。  我所在的公司就是将应用放在云...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 249
精华内容 99
关键字:

数据库备份文件怎么恢复