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三个权限,详细的授权再查资料。
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 代表了日志文件。
注意,导入的数据库必须和这个脚本放入同样的位置。(oracle数据库教程)
使用方法:copy以上代码保存到.bat文件,然后双击执行即可。
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为导出的日志文件,然后执行导出命令。