oracle数据库的备份还原小知识
数据库备份
查询空表并执行SQL
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0
执行备份语句
--备份数据库,在数据库所在电脑执行exp 数据库用户名/密码@orcl file=D:\文件名 log=d:\explog.log--将同一局域网上的Oracle数据库导出备份到本机电脑上,在本地执行exp 数据库用户名/密码@192.168.120.114/ORCL file=D:\文件名 log=d:\explog.log
数据库还原
查看表空间位置
SELECT * FROM Dba_Data_Files ddf WHERE ddf.tablespace_name = 'USERS';
创建表空间
create tablespace 表空间loggingdatafile '表空间路径\表空间.dbf'size 50mautoextend onnext 50m maxsize 20480mextent management local;
创建用户
create user 新建用户名 identified by 密码 default tablespace 表空间 temporary tablespace temp;
将DBA权限授给创建的用户
grant dba to 新建用户名;
查看数据文件位置
select name from v$datafile;select * from dba_tablespaces;
删除表空间
DROP TABLESPACE 表空间 INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;
删除用户
drop user RCGL_CNNC CASCADE;
数据还原命令
--fromuser 和 touser 两个参数k而已去掉imp 新建用户名/密码@ORCL file=D:\文件名称 fromuser=来源用户名 touser=还原用户名 buffer=1024000 log=D:\imp.log ignore=y;
使用Windows自带的定时任务,实现自动备份功能
数据库备份且删除七天前的文件,可添加到Windows任务中,自动执行。下面代码使用记事本保存,修改为.bat可执行文件即可
set m=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%exp 用户名/密码@orcl file=D:\文件路径\文件名称%m%.dmpforfiles P D:\备份文件路径 /D -7 /S /M *.dmp /C "cmd /c del @path"
文章转载自心有玲惜遇奇缘,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




