Oracle 数据库备份

1、使用管理员账号创建对应的directory目录

登录数据库

sqlplus / as sysdba

创建directory

create or replace directory dumpdir as 'F:\container';

2、给用户赋予使用该目录的权限

grant read,write on directory dumpdir to Scott;

查看创建的目录位置

select * from dba_directories ;

3、开始备份数据库(完全备份)

expdp system/root@orcl directory=dumpdir  dumpfile='date_full_%U.dmp' logfile='date_full.log' full=y;

4、在创建好备份目录后可以写成脚本进行备份bat

@echo off   


::数据库泵备份所有
::其中mkgk/mkgk 代表是的用户名和密码,@代表的数库

expdp system/root@orcl directory=dumpdir dumpfile='date_full_%U.dmp' logfile='date_full.log' full=y;

echo  创建备份存放目录

::设置日期相关变量
set year=%date:~0,4%
set month=%date:~5,2%
set day=%date:~8,2%
set path=E:\oracle_backup\data\%year%-%month%-%day%
mkdir %path%

echo  移动备份数据到指定目录

move /-y E:\app\administrator\databak\*.* %path%

::echo 自动删除指定日期内的备份

::自动删除3天前的备份
::-3是删除3天之前的,可以根据需要修改

::forfiles /p "E:\oracle_backup\3dControlSys\mkgk\data" /s /m *.* /d -3 /c "cmd /c del @path"

::echo 正在删除文件

exit

注:expdp system/root@orcl directory=dumpdir dumpfile='date_full_%U.dmp' logfile='date_full.log' full=y;

中的directory 为创建的备份目录路径

你可能感兴趣的:(数据库,数据库,Oracle数据库备份)