我需要为以下任务创建一个批处理脚本:
并从命令提示符中导入Oracle 11g转储。
在正常情况下,我总是遵循这些步骤:
步骤1:打开命令提示符并启动SQL*Plus:
C:\user>sqlplus sys/sys@MySID as sysdba;步骤2:删除现有用户
SQL:> DROP USER TEST CASCADE; 步骤3:创建用户并授予dba权限,
SQL:> CREATE USER TEST identified by test123 default tablespace users temporary tablespace temp quota unlimited on users;
SQL:> GRANT dba to TEST;
SQL:> COMMIT;
SQL:> EXIT;步骤4:返回命令提示符,在新创建的用户上导入oracle转储。
imp userid ='TEST/test123@MySID' file='D:\Dumps\Oracle\Imported\exp_TEST1_at_MYDEV_20121108.dmp' log='D:\Dumps\OracleLog\NewImp160913_run.log' rows=y full=y ignore=y; 使用上述步骤,我可以删除用户,创建用户并成功导入oracle 11g转储。
我需要使用批处理脚本来完成这些任务。
发布于 2014-10-16 01:02:30
作为SQLPLUS脚本(thebatch.sql):
DROP USER TEST CASCADE;
CREATE USER TEST identified by test123
default tablespace users temporary tablespace temp
quota unlimited on users;
GRANT dba to TEST;
HOST imp userid ='TEST/test123@MySID' file='D:\Dumps\Oracle\Imported\exp_TEST1_at_MYDEV_20121108.dmp' log='D:\Dumps\OracleLog\NewImp160913_run.log' rows=y full=y ignore=y;
QUIT现在,我不是DOS脚本专家,但是您可以拥有一个script (the_drop_crt_user.sql),如下所示:
DROP USER TEST CASCADE;
CREATE USER TEST identified by test123
default tablespace users temporary tablespace temp
quota unlimited on users;
GRANT dba to TEST;
QUIT然后运行sql脚本,然后运行IMP的DOS脚本:
SQLPLUS sys/sys@MySID as sysdba @ the_drop_crt_user.sql
IMP userid=.....https://stackoverflow.com/questions/26378213
复制相似问题