备份数据库中的表与还原

备份数据库中的表与还原,第1张

大致思路是:

-- 只保留新增的记录,前提是必须要有一个唯一ID字段

-- 备份数据表 到 tbsrc_171201

select id,fld1,fld2 into tbsrc_171201 from tbsrc

-- 对 tbsrc 表 *** 作,(新增/删除/更新数据)

-- 将新增记录插入备份表

insert into tbsrc_171201 (id,fld1,fld2) select id,fld1,fld2 from tbsrc where id >(select max(id) as maxid from tbsrc_171201)

-- 将原表清空

truncate table tbsrc

-- 再将备份表插回到原表中

insert into tbsrc (id,fld1,fld2) select id,fld1,fld2 from tbsrc_171201 order by id

-- 再删除备份表

drop table tbsrc_171201

什么数据库?

Oracle备份:

逻辑备份

开始à运行àcmd

在命令行窗口输入备份命令—即导出命令

导出scott用户模式—这将导出scott用户的所有对象exp scott/tigerfile=c:\scott.dmp

或者exp system/managerowner=(scott) file=c:\sys.dmp

导出scott用户的dept表和emp表exp scott/tigerfile=c:\scott2.dmp tables=(dept,emp)

或者exp system/manager tables=(scott.dept,scott.emp)file=c:\sys2.dmp

导出scott用户模式和wks030用户模式—这将导出scott用户和wks030用户的所有对象exp system/managerowner=(scott, wks030) file=c:\sys3.dmp

导出scott的emp表以及 wks030的tbuser表和tbscore表exp system/manager tables=(scott.emp,wks030.tbuser,wks030.tbscore)file=c:\sys4.dmp

导出整个数据库(要求必须是管理员)—这将导出整个数据库的内容, 不推荐尝试, 时间太长, 文件太大exp system/managerfull=y file=c:\sys5.dmp

要点

普通用户可以导出自己的表或整个模式

DBA可以导出其他用户的表或模式

DBA可以导出整个数据库

Owner和tables是2种导出模式, 不可同时使用owner: 导出指定用户的整个模式tables: 导出指定的表


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9952048.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存