文章詳情頁
實戰經驗Oracle數據庫基本操作步步詳解
瀏覽:44日期:2023-11-25 19:07:22
一,約束操作1:更改約束名稱:ALTER TABLE TName RENAME CONSTRAINT oldname TO newname;2:刪除約束ALTER TABLE TName DROP CONSTRAINT cname3:停止約束ALTER TABLE TName MODIFY CONSTRAINT cname DISABLE;4:起用約束ALTER TABLE TName MODIFY CONSTRAINT cname ENABLE VALIDATE;5:新增約束ALTER TABLE TName ADD CONSTRAINT cname FOREIGN KEY (ORG_ID) REFERENCES ref_table (ORGID);二,字段操作1:更改字段數據類型:ALTER TABLE TName MODIFY(ORG_ID VARCHAR2(50 BYTE));2:更改字段數據長度:ALTER TABLE TName MODIFY(ORG_ID VARCHAR2(80 BYTE));3:修改表的列名alter table TName rename column xx to yy;三,表操作1:刪除表數據:truncate table TName;2:復制空表結構create table new_table as select * from old_table where 1=2;3:復制表(含記錄)create table new_table as select * from old_table ;四,存儲過程1:命令行編譯存儲過程ALTER PROCEDURE procedure_name COMPILE;五,數據庫鏈接(DBlink)1:建立數據庫連接CREATE DATABASE LINK DBaseLinkName CONNECT TO UserName IDENTIFIED BY PassWord USING 'NetServiceName';六,Oracle服務器常用命令行(1)數據庫治理相關bbed.exe 數據塊瀏覽和編輯工具dbv.exe 數據文件邏輯檢測工具eXP.exe 數據導出工具imp.exe 數據導入工具mig.exe 數據庫移植工具nmumigrate.exe Data Gatherer移植工具ocopy.exe 裸分區數據文件備份工具oradim.exe Oracle服務創建、刪除工具orakill.exe Oracle線程刪除工具orapwd.exe Oracle密碼文件創建工具orastack.exe Oracle進程堆棧修改工具oratclsh.exe TCL腳本解釋器otrccol.exe trace命令行服務治理工具otrccref.exe trace治理文件生成工具otrcfmt.exe trace數據格式化工具otrcrep.exe trace數據統計報表生成工具rman.exe 備份與恢復工具setlinks.exe 磁盤分區治理工具sqlldr.exe sql Load數據批量導入工具sqlplus.exe 命令行的sqlplussvrmgrl.exe Oracle實例治理工具tkprof.exe SQL語句跟蹤文件解析工具vppcntl.exe Data Gatherer服務治理工具(2)Internet Directory相關bulkload.exe 使用SQL*Loader生成目錄對象的工具bulkdelete.exe 子樹刪除工具bulkmodify.exe 目錄對象修改工具ldifwrite.exe 將目錄中的信息轉換成LDIF格式ldapadd.exe 向目錄中增加目錄對象、屬性、值的工具ldapaddmt.exe ldapadd的多線程版本ldapbind.exe 客戶端認證工具ldapcompare.exe 屬性值比較工具ldapdelete.exe 將目錄對象從目錄中刪除的工具ldapmoddn.exe 修改DN和RDN的工具ldapmodify.exe 屬性修改工具ldapmodifymt.exe ldapmodify的多線程版本ldapsearch.exe 查找和獲取目錄中目錄對象工具oidpasswd.exe Internet Directory密碼治理工具 oidreconcile.exe 目錄對象同步工具(3)NLS相關Csscan.exe 數據庫字符集轉換測試工具lxbcnf.exe NLS配置工具lxegen.exe 自定義日期格式生成工具lxinst.exe 自定義字符集生成工具(4)Net8相關agtctl.exe 異構服務代理控制程序cmctl.exe 連接服務治理工具lsnrctl.exe 監聽服務治理工具naegen.exe 哈夫曼參數生成工具namesctl.exe 名字服務治理工具okdstry.exe 刪除Kerberos證書工具okinit.exe 創建Kerberos證書工具oklist.exe 檢查Kerberos證書工具tnsping.exe 服務名連接測試工具trcasst.exe SQL*Net跟蹤文件解析工具(5)interMedia相關ctxhx.exe ConText文本轉換工具ctxkBTc.exe ConText詞典編譯工具ctxload.exe ConText詞典導入/導出工具(6)開發相關lmsgen.exe OCI使用的消息文件轉換工具loadpsp.exe PL/SQL Server Page裝載器ott.exe Oracle對象類型轉換工具sqlj.exe sqlj翻譯器wrap.exe 存儲過程加密工具XML.exe XML解析器xmlcg.exe XML C++ Class 生成器七,Soralis環境下Oracle治理1:啟動數據庫治理命令:dbca八,Oracle性能優化1:ORACLE的優化器共有3種: a. RULE (基于規則) b. COST (基于成本) c. CHOOSE (選擇性) 2.ORACLE 采用兩種訪問表中記錄的方式:a.全表掃描 全表掃描就是順序地訪問表中每條記錄. ORACLE采用一次讀入多個數據塊(database block)的方式優化全表掃描.b.通過ROWID訪問表采用基于ROWID的訪問方式情況,提高訪問表的效率, , ROWID包含了表中記錄的物理位置信息..ORACLE采用索引(INDEX)實現了數據和存放數據的物理位置(ROWID)之間的聯系. 通常索引提供了快速訪問ROWID的方法,因此那些基于索引列的查詢就可以得到性能上的提高.3:選擇最有效率的表名順序(只在基于規則的優化器中有效) ; ORACLE的解析器按照從右到左的順序處理FROM子句中的表名,因此FROM子句中寫在最后的表(基礎表 driving table)將被最先處理. 在FROM子句中包含多個表的情況下,你必須選擇記錄條數最少的表作為基礎表.當ORACLE處理多個表時, 會運用排序及合并的方式連接它們.首先,掃描第一個表(FROM子句中最后的那個表)并對記錄進行派序,然后掃描第二個表(FROM子句中最后第二個表),最后將所有從第二個表中檢索出的記錄與第一個表中合適記錄進行合并. ; 假如有3個以上的表連接查詢, 那就需要選擇交叉表(intersection table)作為基礎表, 交叉表是指那個被其他表所引用的表.5. WHERE子句中的連接順序. ; ORACLE采用自下而上的順序解析WHERE子句,根據這個原理,表之間的連接必須寫在其他WHERE條件之前, 那些可以過濾掉最大數量記錄的條件必須寫在WHERE子句的末尾.九,Oracle數據庫重建1:數據庫重建應注重的問題在利用import進行數據庫重建過程中,有些視圖可能會帶來問題,因為結構輸入的順序可能造成視圖的輸入先于它低層次表的輸入,這樣建立視圖就會失敗.要解決這一問題,可采取分兩步走的方法:首先輸入結構,然后輸入數據:imp user/pwd@dabaseSID file=empdata.dmp rows=Nimp user/pwd@dabaseSID file=empdata.dmp full=Y buffer=64000commit=Y ignore=Y2:快速編譯所有視圖---- 當在把數據庫倒入到新的服務器上后(數據庫重建),需要將視圖重新編譯一遍,因為該表空間視圖到其它表空間的表的連接會出現問題,可以利用PL/SQL的語言特性,快速編譯。SQL >SPOOL ON.SQLSQL >SELECT ‘ALTER VIEW ‘TNAME’COMPILE;’ FROM TAB;SQL >SPOOL OFF然后執行ON.SQL即可。SQL >@ON.SQL授權和創建同義詞也可以快速進行:SQL >SELECT ‘GRANT SELECT ON ’TNAME’ TO USERNAME;’ FROM TAB;SQL >SELECT ‘CREATE SYNONYM‘TNAME’ FOR USERNAME.’TNAME’;’ FROM TAB;第一條命令輸入所有數據庫結構,但無記錄.第二次輸入結構和數據,64000字節提交一次.ignore=Y選項保證第二次輸入既使對象存在的情況下也能成功.
排行榜
