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 为创建的备份目录路径