首先创建一个bat文件,起名叫setupDB.bat,里边写上
sqlplus scott/tiger@zhpt @createUser.sql
imp dzjc/hldgajjzd file="dzjc.dmp" ignore=y fromuser=dzjc
imp drv_admin/oracleadmin file="drv_admin.dmp" ignore=y fromuser=drv_admin
imp veh_admin/oracleadmin file="veh_admin.dmp" ignore=y fromuser=veh_admin
pause
说明:
1:sqlplus scott/tiger@zhpt @createUser.sql这句的意思是连接oracle并且调用createUser.sql这个文件
2:执行完createUser.sql这个文件后再执行imp dzjc/hldgajjzd file="dzjc.dmp" ignore=y fromuser=dzjc句话
3:pause 可以让语句执行完停止在黑色窗口界面
下面是createUser.sql的内容
--把sys和zlkj改为具有sysdba权限的用户名和密码(如sys用户)
conn sys/zlkj@dzjc_2005 as sysdba
--删除原DZJC用户
--DROP USER DZJC CASCADE
--/
--创建用户DZJC,密码为 hldgajjzd
CREATE USER DZJC IDENTIFIED BY "hldgajjzd"
/
--给DZJC用户DBA权限
GRANT DBA TO DZJC
/
--用DZJC用户连接数据库
CONN DZJC/hldgajjzd@zhpt
commit;
INSERT INTO "DZJC"."DZJC_YHMC"(userid,pwd,username,glbm) VALUES ('0','admin888','admin888','admin');
commit;
--创建用户DRV_DZJC,密码为 oracleadmin
CREATE USER DRV_DZJC IDENTIFIED BY "oracleadmin"
/
--给DRV_DZJC用户DBA权限
GRANT DBA TO DRV_DZJC
/
--用DRV_DZJC用户连接数据库
CONN DRV_DZJC/oracleadmin@zhpt
/
commit;
--创建用户VEH_DZJC,密码为 oracleadmin
CREATE USER VEH_DZJC IDENTIFIED BY "oracleadmin"
/
--给VEH_DZJC用户DBA权限
GRANT DBA TO VEH_DZJC
/
--用VEH_DZJC用户连接数据库
CONN VEH_DZJC/oracleadmin@zhpt
/
commit;
exit
这个文件注释写的很清楚了
最后说下这个批处理的
流程
首先是连接Oracle,调用createUser.sql文件,createUser.sql文件创建了3个新用户并且都赋了DBA权限,然后回到批处理,执行了3次imp语句,就是导入了3个表给新建的3个用户
imp dzjc/hldgajjzd file="dzjc.dmp" ignore=y fromuser=dzjc
imp后跟的用户名和密码,指的是用哪个用户导出的就用哪个用户去导入
file是备份的文件的路径
ignore是指追加,用户里存在的数据就把数据追加到表里
fromuser指的是导入到哪个用户里
黑色头发:http://heisetoufa.iteye.com/