Oracle数据库-备份整个数据库与还原整个数据库数据

这个功能是为了防止数据库中的数据损坏,而拿备份的表去顶替损坏的表

这个功能是在DOS窗口实现的,可并非是在Oracle数据库中执行的

先说本地的导出与导入:

备份(也叫导出):

exp 用户名/密码@本地服务名 file=目标地址

举例: exp sys/sys@orcl file=C:\Users\Administrator\Desktop

注:
1、@orcl一般本地库的没动的话都叫这个
2、C:\Users\Administrator\Desktop是本地桌面地址
3、导出的文件是在硬盘上生成后缀名为dmp的文件

还原【导入】:

imp 用户名/密码@本地服务名 file=文件的位置 ignore=y

举例:imp sys/sys@orcl file=C:\Users\Administrator\Desktop\某.dmp full=y ignore=y

注:
1、ignore=y的作用是忽视一些不必要的错误
如果不加的话有时候会报:ORACLE 这些对象由 XXXX 导出, 而不是当前用户
2、有时候会提示IMP-00031:必须指定 FULL=Y 或提供 .....(记不清了)
这时候需要 ignore=y 改为 full=y 就可以了(在这里向评论区的那位同志道歉我之前没遇见过这个问题,抱歉)
3、(2020年10月26日12:08:26改)full=y是导入全部文件的含义

 

有本地的当然有远程的导出与导入:

备份【导出】:

exp 用户名/密码@网络服务名 file=目标地址

还原【导入】:

imp 用户名/密码@网络服务名 file=文件位置 ignore=y

注意:如果从A用户导出,然后导入B用户,则需要加上 fromuser=A touser=B

举例:imp 用户名/密码@网络服务名 file=文件位置 ignore=y fromuser=A touser=B

如果你发现导入数据报错,请往下看

oracle 导入DMP文件时IMP-00013: 只有 DBA 才能导入由其他 DBA 导出的文件 IMP-00000: 未成功终止导入

报这个错误

主要是一个DBA用户权限问题,导出数据的用户拥有DBA权限,而我要导入的用户没有这个权限而已,我们需要给要导入的用户加上DBA权限

按照网上的其他教程用同一个用户给同一个用户权限.... 对不起我在想,要是他没有权限是怎么给同一用户赋予权限的????

首先在DOS窗口,执行

sqlplus

然后会让你输入用户名,你可以输入用system或者sys用户赋予登录

密码就是管理口令

然后就会碰见如下

就如上图一样,挨个执行

grant dba to usernam
注:2这里直接敲回车
grant dba to 用户名;

即可

 

©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页