oracle 用bat批处理调用.sql文件,创建或删除用户,给用户赋DBA权限,导入导出用户表
关键字: oracle bat 批处理 调用 .sql 文件 创建 删除 用户 dba 权限 导入 导出 用户 imp exp
首先创建一个bat文件,起名叫setupDB.bat,里边写上
说明:
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的内容
这个文件注释写的很清楚了
最后说下这个批处理的流程
首先是连接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指的是导入到哪个用户里
- 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指的是导入到哪个用户里