oracle数据库备份与恢复脚本
首先,创建必要的数据库用户,然后用脚本完成oracle数据库备份与恢复。
1:创建用户
create temporary tablespace user_temp
tempfile 'D:apptopwqporadataorcluser_temp.dbf'
size 500m
autoextend on
next 50m maxsize 2048m
extent management local;
create tablespace ts_mydb
logging
datafile 'D:apptopwqporadataorclts_mydb.dbf'
size 500m
autoextend on
next 50m maxsize 2048m
extent management local;
drop user mydb cascade;
create user mydb identified by mydb
default tablespace ts_mydb
temporary tablespace user_temp;
grant connect,resource,dba to mydb;
以上命令意义:
创建一个临时的表空间,临时文件名:是oracle实际存放的文件,size为这个文件的大小, autoextend 为容量满时的扩展大小。
创建用户之前,首先级联删除用户信息,然后创建用户的用户名,密码,最后是对用户进行授权。
这里授予了 connect, resource,dba三个权限,有关oracle用户权限的详细资料,大家百度一下。
2、导入数据库(oracle数据库恢复)
SET USERID=mydb/mydb@orcl
SET FROMUSER=test
SET TOUSER=mydb
SET FILENAME=test_bak2013-03-22.dmp
SET LOGNAME=mylog.log
imp %USERID% file=%FILENAME% fromuser=%FROMUSER% touser=%TOUSER% log=%LOGNAME%
其中 userid 用于导入到想导入的数据库的用户名/密码以及数据库名,
FROMUSER用于指备份的数据库的用户名, TOUSER用于将要导入的数据库中的用户, FILENAME 用于指定导入需要的 备份dmp数据库文件。
LOGNAME 代表了日志文件。 注意 导入的数据库必须和这个脚本放入同样的位置。
使用方法:copy以上代码保存到.bat文件,然后双击执行即可。
推荐,学习oracle,请关注oracle数据库教程栏目。
3、导出数据库(oracle数据库备份)
SET CURDATE=%date:~0,10%
SET USERID=test/test@orcl
SET OWNER=test
SET FILENAME=test_bak%CURDATE%.dmp
SET LOGNAME=test_bak%CURDATE%.log
exp %USERID% file=%FILENAME% owner=%OWNER% log=%LOGNAME%
代码说明:
userid 是导入的 用户名密码;
curdate是用于获取当前日期;
OWNER用于说明导出的为哪个用户的;
FILENAME为导出的文件名;
LOGNAME为导出的日志文件,
然后执行导出命令。