oracle 用bat批處理調用.sql檔案,建立或刪除使用者,給使用者賦DBA許可權,匯入匯出使用者表

來源:互聯網
上載者:User
首先建立一個bat檔案,起名叫setupDB.bat,裡邊寫上 Sql代碼
  1. sqlplus scott/tiger@zhpt @createUser.sql   
  2.   
  3. imp dzjc/hldgajjzd file="dzjc.dmp" ignore=y fromuser=dzjc   
  4.   
  5. imp drv_admin/oracleadmin file="drv_admin.dmp" ignore=y fromuser=drv_admin   
  6.   
  7. imp veh_admin/oracleadmin file="veh_admin.dmp" ignore=y fromuser=veh_admin   
  8.   
  9. pause  
sqlplus scott/tiger@zhpt @createUser.sqlimp dzjc/hldgajjzd file="dzjc.dmp" ignore=y fromuser=dzjcimp drv_admin/oracleadmin file="drv_admin.dmp" ignore=y fromuser=drv_adminimp veh_admin/oracleadmin file="veh_admin.dmp" ignore=y fromuser=veh_adminpause

說明:
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的內容

Sql代碼
  1. --把sys和zlkj改為具有sysdba許可權的使用者名稱和密碼(如sys使用者)   
  2. conn sys/zlkj@dzjc_2005 as sysdba    
  3.   
  4. --刪除原DZJC使用者   
  5. --DROP USER DZJC CASCADE   
  6. --/   
  7. --建立使用者DZJC,密碼為 hldgajjzd   
  8. CREATE USER DZJC IDENTIFIED BY "hldgajjzd"  
  9. /   
  10. --給DZJC使用者DBA許可權   
  11. GRANT DBA TO DZJC   
  12. /   
  13. --用DZJC使用者串連資料庫   
  14. CONN DZJC/hldgajjzd@zhpt   
  15.   
  16. commit;   
  17.   
  18. INSERT INTO "DZJC"."DZJC_YHMC"(userid,pwd,username,glbm) VALUES ('0','admin888','admin888','admin');   
  19.   
  20. commit;   
  21.   
  22. --建立使用者DRV_DZJC,密碼為 oracleadmin   
  23. CREATE USER DRV_DZJC IDENTIFIED BY "oracleadmin"  
  24. /   
  25. --給DRV_DZJC使用者DBA許可權   
  26. GRANT DBA TO DRV_DZJC   
  27. /   
  28. --用DRV_DZJC使用者串連資料庫   
  29. CONN DRV_DZJC/oracleadmin@zhpt   
  30. /   
  31.   
  32. commit;   
  33.   
  34. --建立使用者VEH_DZJC,密碼為 oracleadmin   
  35. CREATE USER VEH_DZJC IDENTIFIED BY "oracleadmin"  
  36. /   
  37. --給VEH_DZJC使用者DBA許可權   
  38. GRANT DBA TO VEH_DZJC   
  39. /   
  40. --用VEH_DZJC使用者串連資料庫   
  41. CONN VEH_DZJC/oracleadmin@zhpt   
  42. /   
  43.   
  44. commit;   
  45.   
  46. exit  
--把sys和zlkj改為具有sysdba許可權的使用者名稱和密碼(如sys使用者)conn sys/zlkj@dzjc_2005 as sysdba --刪除原DZJC使用者--DROP USER DZJC CASCADE--/--建立使用者DZJC,密碼為 hldgajjzdCREATE USER DZJC IDENTIFIED BY "hldgajjzd"/--給DZJC使用者DBA許可權GRANT DBA TO DZJC/--用DZJC使用者串連資料庫CONN DZJC/hldgajjzd@zhptcommit;INSERT INTO "DZJC"."DZJC_YHMC"(userid,pwd,username,glbm) VALUES ('0','admin888','admin888','admin');commit;--建立使用者DRV_DZJC,密碼為 oracleadminCREATE USER DRV_DZJC IDENTIFIED BY "oracleadmin"/--給DRV_DZJC使用者DBA許可權GRANT DBA TO DRV_DZJC/--用DRV_DZJC使用者串連資料庫CONN DRV_DZJC/oracleadmin@zhpt/commit;--建立使用者VEH_DZJC,密碼為 oracleadminCREATE 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指的是匯入到哪個使用者裡

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.