【OCP、OCM、高可用等】小麥苗課堂網絡班招生簡章(從入門到專家)--課程大綱
-
小麥苗信息
-
我的個人信息
-
- 網名:小麥苗
- QQ:646634621
- QQ羣:618766405
- 我的博客:http://blog.itpub.net/26736162/abstract/1/
- 微信公衆號:xiaomaimiaolhr,二維碼如下:
- 小麥苗的微信二維碼如下所示,加我時請備註相關信息:
- 我的微店地址:https://weidian.com/s/793741433?wfr=c&ifr=shopdetail
- 出版的數據庫類叢書:http://blog.itpub.net/26736162/viewspace-2142121/
- 博客鏈接:http://blog.itpub.net/26736162/abstract/1/
- 小麥苗課堂資料(視頻+講課資料):https://share.weiyun.com/5fAdN5m
-
現有課程
課程名稱 |
課時 |
上課時間(可根據情況調整) |
價格 |
|
OCP(從入門到專家) |
每年1期,35課時左右/期 |
每週一、週三、週四、週六 |
20:00-22:00 |
1588 |
OCM認證 |
每年N期,9課時/期 |
每週二、週五 |
20:00-22:00 |
22888 |
高可用課程(rac+dg+ogg) |
每年1期,20課時左右/期 |
每週一、週三、週四、週六 |
20:00-22:00 |
1888 |
Oracle初級入門 |
每年1期,15課時左右/期 |
每週一、週三、週四、週六 |
20:00-22:00 |
800 |
Oracle健康檢查腳本 |
可微信或微店購買。 |
88 |
||
Oracle數據庫技能直通車 |
包含如下3個課程: ①《11g OCP網絡課程培訓》(面向零基礎)價值1600元 ②《11g OCM網絡班課程培訓》(Oracle技能合集)價值10000+元 ③《RAC + DG + OGG 高可用網絡班課程》價值2000元 以上3個課程全部打包只要5888,只要5888所有課程帶回家,終身指導!所有課程都是在線講課,不是播放視頻,課件全部贈送! 注意:以上OCP和OCM課程只包括培訓課程,不包括考試費用。 |
5888 |
注意:
- 每次上課前30分鐘答疑。
- OCM實時答疑,提供和考試一樣的練習模擬環境,只要按照老師講的方式來練習,可以保證100%通過。
- 授課方式:YY語音網絡直播講課(非視頻) + QQ互動答疑 + 視頻複習。其中,OCM在上海開設現場班。
- OCP課時可以根據大家學習情況進行增加或縮減。
- 以上所有課程均可循環聽課。
- 12c OCM課程私聊。
-
Oracle初級入門課程,只教大家最實用+最常用的Oracle操作維護知識。
-
網絡連接說明
培訓項目
連接地址
DB筆試面試歷史連接
OCP培訓說明連接
OCM培訓說明連接
高可用(RAC+DG+OGG)培訓說明連接
OCP最新題庫解析歷史連接(052)
微店地址
我的信息
QQ:646634621 微信號:lhrbestxh
-
Oracle健康檢查腳本
-
小麥苗健康檢查腳本特點
-
小麥苗健康檢查腳本有如下的特點:
- 綠色版、免安裝、純SQL文本
- 跨平臺,只要有SQL*Plus環境即可運行
- 兼容Oracle 10g、11g及12c版本
- 一次購買,終身免費升級
- 檢查內容非常全面
- 腳本可視化,可以看到腳本內容,因此可供學習使用
- 只有1個SQL腳本,不存在嵌套調用腳本等其它問題
- 生成html文件的健康檢查結果
- 對結果進行過濾,列出了數據庫有問題的內容
-
健康檢查部分結果展現
列出部分結果,其它的內容可以參考:http://blog.itpub.net/26736162/viewspace-2129512/
-
對指標有相應的解釋
鼠標經過時有相應的解釋,如下圖所示:
-
健康檢查結果
該腳本檢查的內容較多,所以我對結果進行了過濾,如下:
點擊鏈接即可查看結果:
-
數據庫基本信息
數據庫基本信息一目瞭然:
-
運行過程
執行過程如下:
[oracle@redhat4 ~]$ locale -a | grep zh_CN
zh_CN
zh_CN.gb18030
zh_CN.gb2312
zh_CN.gbk
zh_CN.utf8
[oracle@redhat4 ~]$ export LANG=zh_CN.gbk
[oracle@redhat4 ~]$ echo $LANG
zh_CN.gbk
[oracle@redhat4 ~]$ NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
[oracle@redhat4 ~]$ sqlplus / as sysdba @DB_healthcheck_lhr_11g_v4.9.sql
SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 1月 20 18:52:59 2016
Copyright (c) 1982, 2005, Oracle. All rights reserved.
連接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
數據庫巡檢腳本編寫者::小麥苗 [版權所有侵權必究] QQ: 646634621
說明:
用於檢查Oracle 10g、11g數據庫各項指標,包括數據庫主要參數、主要對象情況、存儲空間配置、數據庫性能(AWR、ASH、ADDM)、RMAN備份情況等。
注意事項:
① 若使用非sys用戶執行腳本,則需要用sys用戶賦予檢查用戶對x$bh的查詢權限,否則熱塊不能查詢 create or replace view bh as select * from sys.x$bh; create or replace public synonym x$bh for bh
② 若有亂碼可以設置下環境變量:NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"
③ 執行腳本的用戶至少應該賦予DBA角色,且賦予可以查詢任何數據字典的權限 grant select any dictionary to XXX
+----------------------------------------------------------------------------+
巡檢腳本執行過程將持續數分鐘,隨庫的大小不同而變化。
開始執行......
+----------------------------------------------------------------------------+
-----Oracle Database Check STRAT,Starting Collect Data Dictionary Information----
請等待......
start.....設置環境變量、配置html表頭....
。。。。。。省略。。。。。。
-
OCM
【OCM】想考11g和12c OCM的小夥伴可以加我微信(lhrbestxh)私聊,非誠勿擾。11g OCM可以保證最低學費、最快訓練速度和100%的通過率,非誠勿擾。
-
11g OCM考試內容思維導圖
-
第一場
-
第二場
-
第三場
-
第四場
-
第五場
-
第六場
-
第七場
-
第八場
-
第九場
-
12c OCM
若要考12C OCM請加小麥苗的微信私聊。
-
OCM培訓說明連接
OCM培訓說明連接:https://mp.weixin.qq.com/s/7-R6Cz8RcJKduVv6YlAxJA
-
OCP
-
OCP培訓說明網絡連接
-
OCP培訓說明連接:https://mp.weixin.qq.com/s/2cymJ4xiBPtTaHu16HkiuA
-
講課資料及視頻下載地址
-
- 小麥苗OCP課程講課資料下載地址:https://share.weiyun.com/a218681375a20d9be37f626fded2d626
- 小麥苗分享的其它資料: https://share.weiyun.com/5UZtOLs
-
-
OCP講課文檔
這裏只列舉部分:
-
OCP第1期相關視頻說明
- 小麥苗OCP 11g課程第1節--RHEL5.5的安裝和基本配置(使用邏輯卷):https://v.qq.com/x/page/u0534y1g6u3.html
- 小麥苗OCP 11g課程第2節--數據庫軟件的圖形化安裝和靜默安裝,MD5,配置YUM源,安裝rlwrap軟件:https://v.qq.com/x/page/m05348z2s4v.html
- 小麥苗OCP 11g課程第3節--圖形化建庫、靜默建庫、靜默刪庫、乾淨地卸載數據庫軟件、配置數據庫資源開機啓動、pmap、判斷數據庫位數等:https://v.qq.com/x/page/x0535r1ucah.html
- 【已加密】小麥苗OCP 11g課程第4節--SQL語句的分類,如何查看在線和離線文檔、sqlplus的使用和設置(導出csv和html文件)、ERRORLOGGING的作用
- 【已加密】小麥苗OCP 11g課程第5節--基本SELECT語句的寫法,NULL的注意事項,Quote (q)語法、模糊查詢、WHERE子句和排序
- 小麥苗OCP 11g課程第6節--IS NULL走索引,LIKE模糊查詢走索引,DUAL表詳解(包括恢復),Oracle中的函數、隱式類型轉換:https://v.qq.com/x/page/s0540b5ih94.html
- 小麥苗OCP 11g課程第7節--函數的高級應用,組函數,COUNT的用法和區別,MAX和MIN優化寫法:http://v.qq.com/x/page/l0540f9nhgh.html
- 【已加密】小麥苗OCP 11g課程第8節--多表連接、笛卡兒積、層次查詢(樹形查詢)、WITH語法、子查詢、合併查詢(集合查詢)、connect by和笛卡兒積快速構造大表
- 【已加密】小麥苗OCP 11g課程第9節--創建和管理表、數據字典、數據類型介紹、操作數據(INSERT、UPDATE、DELETE、MERGE)、DML語句優化的方法
- 【已加密】小麥苗OCP 11g課程第10節--約束、視圖、外鍵約束必須創建索引(死鎖)、Top-N 分析、物化視圖簡介
- 【已加密】小麥苗OCP 11g課程第11節--序列、索引、同義詞、DBLINK、爲什麼索引沒有被使用、哪些操作會導致索引失效、監控索引的使用、預估索引的大小、索引的選擇性
- 【已加密】小麥苗OCP 11g課程第12節--匿名塊、存儲過程、函數、包的開發、異常處理、自治事務、分批提交DML、利用觸發器完成一些監控功能、存儲過程和函數返回集合類型
- 小麥苗OCP 11g課程第13節--ASM的安裝和配置、磁盤組的簡單維護、創建ASM磁盤的幾種常見方式(asmlib)、靜默安裝GRID軟件、EM的創建和使用、如何查看磁盤是否包含數據、如何讓crs_stat命令顯示完整、kfod命令等:http://v.qq.com/x/page/s0560te3pju.html
- 【已加密】小麥苗OCP 11g課程第14節--體系結構(內存結構、進程結構、存儲結構)--內存組件(SGA+PGA)、數據庫和實例的區別、ASMM和AMM、歸檔模式的切換、多路複用控制文件等
- 小麥苗OCP 11g課程第15節--EM的維護、參數文件(spfile和pfile)、啓動和關閉、告警日誌、Oracle Restart(重點)等:http://v.qq.com/x/page/j06000r2u4a.html
- 【已加密】小麥苗OCP 11g課程第16節--ASM相關維護(磁盤組、OS和ASM文件格式轉換)等
- 【已加密】小麥苗OCP 11g課程第17節--Oracle網絡管理(動態註冊和靜態註冊、限定IP訪問、sqlnet.ora、listener.ora、tnsnames.ora文件的作用、TWO_TASK、SYS登錄報權限不足、ORA-12547等)
- 【已加密】小麥苗OCP 11g課程第18節--表空間和數據文件管理(bigfile、OMF、表空間大小查詢、表空間擴展、表空間配額、移動數據文件、如何刪除表空間數據文件)
- 【已加密】小麥苗OCP 11g課程第19節--數據庫用戶管理、權限和角色、密碼文件(Oracle的兩種認證方式等等)
- 【已加密】小麥苗OCP 11g課程第20節--鎖和會話(視圖之間的關聯關係、如何徹底殺掉會話等)、Undo(作用,存儲內容、快清除、ORA-01555)、審計(分類,FGA審計、sysdba審計、AUD$表遷移等)
- 【已加密】小麥苗OCP 11g課程第21節--AWR(如何獲取和閱讀)、ASH(如何診斷系統問題)、ADDM、統計信息(學好SQL優化必修的一節課)等
- 【已加密】小麥苗OCP 11g課程第22節--exp、imp(從dmp文件獲取相關信息,例如查看字符集,延遲段創建等)、數據泵expdp和impdp(徹底停止expdp,exclude、include,TTS,network_link,expdp卡死等)等
- 【已加密】小麥苗OCP 11g課程第23節--sqlldr(各種錯誤處理、酒店開房數據導入)、外部表(字符集設置)、補丁集更新(PSU、one-off補丁、熱補丁)
- 【已加密】小麥苗OCP 11g課程第24節--故障類別、SCN(系統檢查點SCN、文件檢查點SCN、開始SCN和結束SCN)、實例恢復(前滾和回滾)、閃回體系(包括7種閃回技術及其原理)、DBA_SOURCE的使用
- 【已加密】小麥苗OCP 11g課程第25節--延遲段創建導致不能導出空表(只在11.2.0.1中存在)、RMAN簡介及其常用命令(show all的配置、list、report、delete等)、備份恢復的類型
- 【已加密】小麥苗OCP 11g課程第26節--catalog庫、RMAN備份(累積和差異增量備份)、塊改變跟蹤、備份腳本分享、定時任務(crontab + windows下的任務計劃)
- 【已加密】小麥苗OCP 11g課程第27節--密碼文件恢復、spfile恢復、控制文件恢復、在線redo和歸檔文件的恢復、v$archived_log的清理
- 【已加密】小麥苗OCP 11g課程第28節--數據文件恢復、表空間恢復(Undo表空間的恢復)、DRA(數據恢復顧問)、rm -rf誤操作的恢復過程、TRUNCATE恢復方法、在丟失歸檔的情況下如何進行數據文件的恢復
- 【已加密】小麥苗OCP 11g課程第29節--日誌挖掘logminer、bbed簡介、壞塊的檢測(dbv、rman等)和恢復(BMR、bbed等)、如何確定壞塊的對象名、OS備份(冷備和熱備及其恢復)、非歸檔模式備份和恢復、RESETLOGS和NORESETLOGS區別、跨版本恢復、只存在備份片的恢復、恢復流程圖
- 【已加密】小麥苗OCP 11g課程第30節--實驗課(數據泵之NETWORK_LINK、duplicate from active複製數據庫ASM到FS、TSPITR(表空間基於時間點恢復)、TTS(傳輸表空間))、測試庫搭建等
- 【已加密】小麥苗OCP 11g課程第31節--JOB(DBMS_JOB、DBMS_SCHEDULER、創建刪除JOB、是否正在運行、運行日誌、故障處理)、分區表(分區類型、分區表查詢優化、索引失效、普通錶轉換爲分區表有哪些辦法、壓縮分區、分區表收集統計信息)
-
OCP培訓課程大綱
注:
- 1學時=1小時
- 1課時=1次課=2學時=2小時
- 培訓大綱是培訓文檔的縮減版,只列舉出了最重要的一部分內容,最終講課內容以講課文檔爲準,大家可以參考後邊的目錄部分,目錄部分是最全的部分。
-
安裝與卸載
課程模塊
培訓要點
學時
VMware Workstation虛擬機的相關知識
- 安裝和卸載
- 版本介紹(32位和64位)
- 網絡配置(配置固定IP地址並且可以上外網)
- 快照的介紹
- VMware Tools
- 主機和虛擬機資源共享
- 主機和虛擬機時間同步
- 虛擬機的配置文件
0.5
Linux的安裝(RHEL 5.5)
- 邏輯卷的管理方式
- 用戶的環境變量配置
- PS1環境變量的作用
- su - oracle和su oracle的區別
- 網絡環境的簡單配置(配置固定IP地址並且可以上外網)、防火牆的配置
- 學會修改主機名
- MD5值的簡介和計算
- 其它OS知識
1.5
Oracle軟件單機安裝
- 讓Oracle DB、監聽和oem開機啓動(dbstart)
- 配置sudo
- 圖形界面和靜默方式安裝單機軟件
1
Oracle ASM的安裝
- GI的基本安裝和配置(圖形界面+靜默安裝)
-
創建ASM磁盤的幾種方式演示
- Faking方式
- /etc/sysconfig/rawdevices配置raw
- Udev方式
- ASMLIB方式
- 如何查看磁盤是否包含數據(lquerypv、hexdump)
- 添加loop設備的方法
- 如何讓crs_stat命令顯示完整
- 靜默創建ASM實例和grid用戶的監聽
- 命令創建OEM:emca -config dbcontrol db -repos recreate
2
Oracle監聽和TNS的簡單配置
- 學會使用netmgr
- 靜默創建監聽
0.1
刪除數據庫的幾種方式
- dbca -silent
- DROP DATABASE;
0.2
創建數據庫
- DBCA圖形創建
-
靜默創建
- 如何設置靜默創建數據庫爲歸檔模式
- 靜默建庫常見問題的處理
- 手動創建數據庫
0.5
管理工具介紹
- PLSQL Developer軟件使用
- 學會安裝Windows和Linux下的綠色版的Oracle客戶端軟件
- 綠色版SecureCRT和SecureFX
- Xshell調用圖形界面
0.5
Oracle軟件的卸載
- Windows平臺(主要是清理註冊表)
- Linux平臺
0.5
其它內容
- 如何判斷Oracle是32位還是64位?
- 在多個不同版本的數據庫情況下,如何確定實例的ORACLE_HOME地址?
0.5
Windows下環境變量的配置
- 代碼頁(Code Page)
-
環境變量的分類
- 系統環境變量
- 用戶環境變量
-
環境變量的設置方法
- 批處理註冊表
- 界面配置
- SETX命令直接配置
0.5
-
SQL基礎部分
課程模塊
培訓要點
學時
SQL簡介及分類
- SQL語句的分類
- COMMIT的類型
- 教會如何查看在線和離線官方文檔
0.5
SQL*Plus
- 如何導出csv、xls文件
- 如何導出漂亮的html文件
- 如何使用上下左右方向鍵
- 執行腳本時的搜尋路徑
- @與@@、&與&&的區別
- glogin.sql文件的作用,如何修改命令提示符?
- ERRORLOGGING的作用
- sqlplus調用SQL腳本
- shell、bat調用sqlplus命令執行SQL命令
- 把sqlplus執行結果傳遞給shell
- 把shell程序參數傳遞給sqlplus
- 爲了安全要求每次執行shell都手工輸入密碼
- 爲了安全從文件讀取密碼
- sqlplus中將行轉爲列輸出
- 登錄SQL*Plus的幾種方式(EZCONNECT方式)
- 安裝SQL*Plus的幫助腳本
0.5
基本SELECT語句
- 語法
- 別名
- 運算符
- 去重
-
空值
- NULL的注意事項,例如如果子查詢結果中包含NULL值,那麼NOT IN (NULL、AA、BB、CC)返回爲空。
- IS NULL 走索引
- Quote (q)語法
- Oracle特殊字符的處理
0.5
WHERE條件和排序
-
條件
- 條件中使用字符串和日期
-
比較條件
-
模糊查詢
- 1.LIKE模糊查詢如何使用索引
- 2.如何搜索包括%和_符號的行
- IN和OR(IN中最多支持1000個列舉項)
- BETWEEN(between包括邊界值)
- 使用NULL/NOT NULL條件
- 邏輯條件(AND、OR 、NOT)--注意添加括號,防止形成笛卡兒積
-
-
排序
- 升序(ASC)
- 降序(DESC)
- 列別名排序
- 多列排序
0.5
連接類型
- 交叉連接(笛卡兒積)
-
內連接(簡單連接)
-
等值連接
- 自然連接
- 自連接
- 非等值連接
-
-
外連接
- 左外連接
- 右外連接
- 全外連接
0.2
查詢分類
-
子查詢
-
主查詢和子查詢的關係
- 標量子查詢---性能問題
-
關聯子查詢(標準子查詢)
- 相關子查詢
- 非相關子查詢(獨立子查詢)
-
返回的行數
- 單行子查詢
- 多行子查詢
-
返回的列數
- 單列子查詢
- 多列子查詢
- 子查詢中的IN和EXISTS
-
- 主查詢
0.2
合併查詢(集合查詢)
- UNION
- UNION ALL
- INTERSECT
- MINUS
- 應用
0.2
函數
-
單行函數
- 字符函數
- 數字函數
- 日期函數
- 轉換函數(隱式類型轉換(字符列的值應該加上單引號))
- 通用函數
- 條件表達式有 CASE表達式、DECODE 函數
-
多行函數(組函數)
- 組函數的概念及應用
- AVG、SUM、MAX、MIN(MAX和MIN的優化寫法)
- COUNT
- DISTINCT
- GROUP BY和HAVING
- 嵌套組函數
-
擴展內容
- 如何將一個數字轉換爲字符串並且按照指定格式顯示?
- ORA-00904: "wm_concat":invalid identifier錯誤解決
- 如何判斷一個字符串是否含有中文漢字?
- 如何讓日期顯示爲"年-月-日時:分:秒"的格式?
- NLS_LANGUAGE的使用
- 如何判斷當天是否月份最後一天?
- COUNT(1)、COUNT(*)、COUNT(常量)、COUNT(主鍵)、COUNT(ROWID)、COUNT(非空列)、COUNT(允許爲空列)、COUNT(DISTINCT 列名) 的區別(結果和效率)
2
dual表
- 基本使用
- 刪除後的恢復(若被刪除則數據庫不能啓動,需要設置REPLICATION_DEPENDENCY_TRACKING=FALSE)
- 擴展
0.2
操作數據
-
INSERT
- 插入特殊值
- 插入指定日期
- 插入可輸入變量
- 從另外一個表複製
- 在INSERT語句中使用子查詢
-
DELETE
- 一道OCM考題
- 記得加WHERE條件
- 查找和刪除重複的記錄
-
UPDATE
- 關聯更新一定要加WHERE條件
- 優化寫法
-
MERGE(數據合併)
- 語法、概念
- MERGE語句在優化中的巨大作用
- 提高DML語句性能的寫法
0.5
存儲過程、函數、包的開發
-
PL/SQL塊
- 分支
- 循環(遊標FOR循環)
- 控制
-
存儲過程
- 編寫
- 存過中捕獲異常的行號
- 存儲過程和函數的區別是什麼?
- 存過中的動態執行語句(動態sql)
- 存過返回集合
-
函數
- 函數返回集合
- 函數返回系統遊標
- 函數返回索引表
-
包
- 一個項目一個包,或一個系統一個包
-
異常處理
-
分類
- 預定義異常
- 非預定義異常
- 自定義異常
-
拋出異常
- 通過PL/SQL運行時引擎
- 使用RAISE語句
- 調用RAISE_APPLICATION_ERROR存儲過程
- SQLCODE和SQLERRM
- 如何捕獲錯誤並記錄到表中?
- 存過中捕獲異常的行號(DBMS_UTILITY.FORMAT_ERROR_BACKTRACE)
-
-
Oracle分批提交DML
- 分批 update
- 分批 delete
- 分批 insert
2
-
基本對象的管理
課程模塊
培訓要點
學時
DBLINK
- 概念、分類、創建語法(2種方式)、刪除
- 相關權限、數據字典
- 講解一道OCM的考題
0.2
約束
- 約束的概念和原則
- 定義約束
-
幾種常見的約束
- NOT NULL約束
- UNIQUE約束
- PRIMARY KEY約束(非空且唯一)
-
FOREIGN KEY約束
- 1.外鍵列需創建索引,否則易引起鎖問題,導致死鎖的產生
- 2.找出沒有建立索引的外鍵
- CHECK約束
-
管理約束
- 添加約束
- 刪除約束
- 級聯約束
- 查看約束
- 禁用、啓用約束
0.5
視圖
- 視圖的概念和優勢
- 分類
- 視圖中的規則
- 管理視圖
- TOP-N分析
-
物化視圖簡介
- 對比"有無物化視圖"前後執行計劃的區別
-
擴展
- DBA_UPDATABLE_COLUMNS的作用
- 在什麼情況下可以對視圖執行增、刪、改操作?
0.3
其它數據庫對象
-
序列
- 講解一道OCP和OCM的考題
- 概念、語法、修改、刪除
- 性能問題
-
索引
- 概念、作用、創建、刪除
-
分類
- 複合索引
- 函數索引
- 位圖索引
- 分區索引
- 全文索引
- 虛擬索引
- 不可見索引
- 重點:不能使用索引的情況
-
擴展
- 哪幾種情況不能使用索引
- 如何預估即將創建索引的大小?
- 如何監控索引的使用狀況?
- 哪些操作會導致索引失效?
- 什麼是索引的選擇性(Index Selectivity)?
- IS NULL如何用到索引?
-
同義詞
- 概念、創建、刪除
- 擴展
- PLAN_TABLE表的真諦
0.5
創建和管理表
-
表的分類
- 普通堆表(heap table)---最多包含1000列
-
全局臨時表
- 會話級
- 事務級
-
分區表
- 範圍分區
- 列表分區
- HASH分區
- 組合分區
- 索引組織表(IOT)
- 簇表
- 外部表
- 數據字典(dict和tab)
-
創建表
- CTAS及其優化
- default選項
- 數據類型
- 刪除表
- 引用表
-
修改表alter
- 重命名(rename)表或字段的名稱
- 添加、修改、刪除列
- SET UNUSED及其恢復
- 移動表所在的表空間
- 修改表的存儲特徵
-
truncate
- DELETE、DROP和TRUNCATE的區別
-
給表和列添加註釋(COMMENT語句)
- 提供一個SQL生成開發語句
0.5
-
數據庫管理
-
體系結構和Oracle Restart
課程模塊
培訓要點
學時
DB 服務器體系結構
-
內存結構
-
SGA
-
共享池(Shared Pool)
-
庫緩存(Library Cache)
- 共享SQL區(Shared SQL Area)
- 私有SQL區(Private SQL Area)
- 共享PL/SQL區(Shared PL/SQL Area)
- 控制結構區(Control Structure Area)
- 數據字典緩存(Data Dictionary Cache)
- 保留池(Reserved Pool)
- 結果緩存(Result Cache)
-
-
數據緩衝區(Database Buffer Cache)
- 回收池(Recycle Pool)
- 保留池(Keep Pool)
- 默認池(Default Pool)
- Redo日誌緩衝區(Redo Log Buffer)
- 大池(Large Pool)
- Java池(Java Pool)
- 流池(Streams Pool)
-
-
PGA
- Private SQL Area(私有SQL區)
- Cursor and SQL Areas(遊標和SQL區)
- Session Memory(會話內存)
- Work Area(工作區)
-
- AMM和ASMM
-
進程結構
- USER PROCESS(用戶進程)
-
SERVER PROCESS(服務器進程)
- LOCAL=NO
- LOCAL=YES
- BACKGROUND PROCESSES(後臺進程)
- 守護程序/應用程序進程
-
存儲結構(物理結構)
- 數據文件
- 控制文件---新增控制文件
- 聯機Redo日誌文件
- 參數文件
-
歸檔日誌文件
- 歸檔和非歸檔的區別
- 歸檔和非歸檔模式互相切換
- 密碼文件
- 備份文件
- 告警日誌和跟蹤文件
2
體系結構部分擴展
-
AMM和ASMM
- 區別
- 互換
- 自動PGA內存管理
- UGA介紹
- SHOW SGA和V$SGA的結果區別
0.5
Oracle Restart
- 簡介
- Oracle Restart進程啓動順序
- 控制Oracle Restart
- 選擇正確的SRVCTL實用程序
- Oracle Restart配置
- 使用SRVCTL實用程序
- 獲取有關SRVCTL實用程序的幫助
- 使用SRVCTL實用程序啓動和關閉組件
- 查看組件狀態
- 顯示組件的Oracle Restart配置
- 手動向Oracle Restart配置添加組件
1
Oracle DB 系統
-
Oracle DB
-
物理結構
- 數據文件(Data files)
- 控制文件(Control files)
- 聯機Redo日誌文件(Online Redo log files)
- 參數文件(Parameter file)
- 歸檔日誌文件(Archive log files)
- 密碼文件(Password file)
-
邏輯結構
- 表空間(Tablespace)
-
段(Segment)
- 數據段
- 索引段
- 還原段
- 臨時段
- 區(Extent)
-
塊(Block)
- 數據塊dump文件詳解
-
-
數據庫實例
-
OS分配的一塊內存
- SGA
- PGA
- 一些後臺進程(PMON、SMON、LGWR、CKPT、DBWn等)
-
- 實例和數據庫的區別
2
-
-
管理數據庫實例
課程模塊
培訓要點
學時
管理數據庫實例
-
OEM
-
簡介和分類
- Database Control(數據庫控制)
- Grid Control(GC,網格控制)
-
維護
- 卸載:emca -deconfig dbcontrol db -repos drop
- 單機重建:emca -config dbcontrol db -repos recreate
- 集羣重建:emca -config dbcontrol db -repos recreate -cluster
- OEM的運行日誌路徑:$ORACLE_HOME/$HOSTNAME_$ORACLE_SID/sysman/log
- OEM的安裝日誌路徑:$ORACLE_HOME/cfgtoollogs/emca/
- 啓動:emctl start dbconsole
- 關閉:emctl stop dbconsole
- 運行狀態:emctl status dbconsole
- OEM的界面地址:https://192.168.59.128:1158/em/
- 端口的配置文件:$ORACLE_HOME/install/portlist.ini
-
-
初始化參數文件
-
初始化參數值的類型
-
系統使用情況
- 普通參數
-
非凡參數
- 過時參數
- 強調參數
- 隱含參數--隱含參數的設置方法
- 推導參數
-
生效時間
-
動態參數
- 立即生效
- 延遲生效
- 靜態參數----SPFILE
-
-
- 簡化初始化參數
- 初始化參數:示例
- 使用SQL*Plus查看參數
- 更改初始化參數值
- PFILE和SPFILE的區別是什麼?
-
-
數據庫啓動和關閉
-
啓動Oracle DB實例
- 啓動Oracle DB實例:NOMOUNT
- 啓動Oracle DB實例:MOUNT
- 啓動Oracle DB實例:OPEN
-
關閉Oracle DB實例
- SHUTDOWN NORMAL
- SHUTDOWN TRANSACTIONAL
- SHUTDOWN IMMEDIATE
- SHUTDOWN ABORT
- 數據庫處於RESTRICT、QUIESCE和SUSPEND狀態的區別是什麼?
- 數據庫的啓動經歷幾個過程
-
-
告警日誌
- Oracle 10g和11g告警日誌文件的位置在哪裏?
- 告警日誌的包含內容
-
管理告警日誌
- V$DIAG_ALERT_EXT
- ①使用外部表方式
- ②視圖V$DIAG_ALERT_EXT
- ③利用SHELL腳本
- 使用跟蹤文件
2
-
-
ASM
課程模塊
培訓要點
學時
ASM
- 簡介
-
ASM對於管理員的好處
- ASM是什麼?它有哪些優點?
-
ASM實例
- 主要進程
- ASM實例初始化參數
- 數據庫實例與ASM之間的交互
- ASM相關動態性能視圖
-
系統權限
- SYSASM、SYSDBA或SYSOPER
- 使用OEM管理ASM用戶
-
啓動和停止ASM實例
- SQL*Plus
- srvctl
- asmcmd
-
ASM磁盤
- 創建ASM磁盤的幾種方法
- ASM文件和FS文件轉換的幾種方法
- 分配單元(AU)
- ASM磁盤有幾種冗餘方式?
- ASM 磁盤的相關視圖
-
ASM磁盤組
- ASM故障組
-
管理磁盤組
- 創建和刪除磁盤組
- 向磁盤組添加磁盤
- 從磁盤組刪除磁盤
- 再平衡(Rebalance)
- ASM磁盤組兼容性
- ASM磁盤組屬性
-
檢索ASM元數據
- 視圖
- asmcmd
- 與ASM相關的有哪些進程?
- ASMLIB是什麼?常用命令有哪些?其運行日誌路徑在哪裏?
- 在採用asmlib時,確認物理磁盤的方法
- udev是什麼?如何配置udev?
- 多路徑(multipath)是什麼?如何配置多路徑?
- asmcmd工具詳細介紹
- asm相關的OCP題目講解
- ASM管理命令行三工具:KFOD、KFED和AMDU
2
-
網絡管理
課程模塊
培訓要點
學時
網絡管理
-
監聽
- 配置
- 管理
- 靜態監聽和動態監聽
- listener.ora
-
服務名
- tnsnames.ora
- 簡便連接(EZCONNECT方式)
-
測試Oracle Net連接
- tnsping
-
其它實用內容
- 動態註冊和靜態註冊有什麼區別?
- 在Oracle中,如何限定特定IP訪問數據庫?
- 如何跟蹤tnsping過程?
- 如何啓動Oracle數據庫的監聽日誌?
- 解釋GLOBAL_NAMES設爲TRUE的用途。
- tnsnames.ora文件的作用是什麼?
- sqlnet.ora文件的作用是什麼?
- TWO_TASK環境變量的作用是什麼?
- 在Windows環境下,錯誤"ORA-12560: TNS: 協議適配器錯誤"的常見原因有哪些?
- Oracle的SYS用戶登錄報權限不足(ORA-01031: Insufficient Privileges)的常見原因有哪些?
- 在沒有配置ORACLE_HOME環境變量的情況下,如何快速獲取數據庫軟件的ORACLE_HOME目錄?
- 造成錯誤"ORA-12547: TNS:lost contact"的常見原因有哪些?
2
-
-
管理數據庫存儲結構(表空間和數據文件)
課程模塊
培訓要點
學時
管理數據庫存儲結構(表空間和數據文件)
- 表空間和數據文件
- 表數據的存儲方式
- 瀏覽存儲結構
- 表空間的存儲
-
預配置的數據庫中的表空間
- SYSTEM和SYSAUX表空間
-
SYSTEM和SYSAUX表空間佔用過大的處理
- 一、SYSTEM表空間的清理--AUD$的清理
- 二、SYSAUX表空間的清理--AWR的信息清理
- 變更表空間
- 表空間操作
-
Oracle管理的文件(OMF)
- 數據文件的OMF管理
- 日誌文件的OMF管理
- 使用OMF管理控制文件
- 使用OMF 創建ASM文件涉及的一些參數
- 擴大數據庫
- 改變數據文件的名稱和位置、移動數據文件
- 什麼是用戶的表空間配額(User tablespace Quota)
- 如何正確的刪除表空間數據文件?
-
表空間管理
- 表空間大小查詢
- 創建新的表空間
- 表空間大小爲空的原因
- 擴展表空間
- 表空間收縮
- 修改表空間名稱
- 表空間的管理方式
-
數據文件管理
- DBA_DATA_FILES
- 數據文件大小查詢
- 設置數據文件爲自動增長
- 改變數據文件的大小
- 數據文件的大小爲空
- 什麼是大文件表空間(Bigfile Tablespace)?
1.5
-
用戶、密碼文件、權限及角色
課程模塊
培訓要點
學時
數據庫事務處理
- 數據庫事務的開始與結束
- COMMIT和ROLLBACK語句
- 事務控制
- 事務的控制示例
- 隱式事務處理
用戶及其密碼文件
-
創建、密碼
- 如何重建SCOTT用戶
- 使用工具來創建用戶
-
修改密碼
- Oracle用戶密碼含特殊字符時的登陸問題
-
密碼文件
- 創建、作用
-
Oracle的兩種認證方式
- OS驗證
- 密碼文件驗證
-
PROFILE管理密碼
- 賬戶鎖定
- 給賬戶(用戶)解鎖
- 終止密碼
- 密碼歷史
- 修改密碼爲永不過期
- Oracle用戶被鎖原因及辦法
-
用戶的狀態(ACCOUNT_STATUS的九種狀態)
-
基本狀態
- 正常(OPEN)
-
鎖定狀態
- LOCKED
- LOCKED(TIMED)
-
過期狀態
- EXPIRED
- EXPIRED(GRACE)
-
組合狀態
- EXPIRED & LOCKED(TIMED)
- EXPIRED(GRACE) & LOCKED(TIMED)
- EXPIRED & LOCKED
- EXPIRED(GRACE) & LOCKED
-
-
在不知道用戶密碼的情況下如何更改密碼
- 用原密碼的密文來更改密碼
- 直接更新USER$基表
- user$.lCOUNT列記錄了失敗的登陸次數
- 11g密碼區分大小寫--sec_case_sensitive_logon
- 密碼延遲驗證
- 哪些用戶密碼沒有被修改過
- 密碼複雜性校驗
- 刪除用戶
-
擴展
- SCHEMA和USER的區別
- 重建scott用戶
- 使用工具來創建用戶
- 使用profile管理口令
- 什麼是用戶的表空間配額(User tablespace Quota)
- 回收DBA角色時需要注意什麼問題
權限
- 概念、視圖、基本權限
-
Oracle權限分類
- 系統權限(System Privilege)--DBA_SYS_PRIVS
- 對象權限(Object Privilege)--DBA_TAB_PRIVS
- 角色權限(Role Privilege)--DBA_ROLE_PRIVS
- 列權限--DBA_COL_PRIVS
-
如何獲取用戶的權限
- DBMS_METADATA.GET_GRANTED_DDL
- 通過數據字典來獲取
- 通過exp或expdp來獲取
-
擴展
- 如何讓普通用戶可以TRUNCATE其他用戶的表?
- 關於UNDER ANY TABLE/VIEW權限的解釋
- 用戶的權限分爲哪幾類?如何導出用戶的權限?
角色
- DBA、SYSDBA和SYSOPER的區別
- 概念、創建、刪除
-
分類
-
預定義角色
- DBA
- CONNECT
- RESOURCE
- Oracle有哪些預定義角色?
- 自定義角色
-
- 角色生效和失效
-
鎖和會話
課程模塊
培訓要點
學時
鎖
- 鎖的概念、作用
- 併發和並行
-
鎖的分類
-
操作/保護對象不同
-
DML鎖
- 行鎖(TX,事務鎖)
- 表鎖(TM)
0:NONE
1:NULL
2:SS(Row-S)
3:SX(Row-X)
4:S(Share)
5:SSX(S/Row-X)
6:X(Exclusive)
- 死鎖
-
行級死鎖
1、主鍵、唯一索引的死鎖
2、外鍵未加索引
3、位圖索引遭到併發更新
4、常見事務引發的死鎖
5、自治事務引發的死鎖
- 塊級死鎖
- ITL死鎖
-
DDL鎖(字典鎖)
- 排它DDL鎖(XDDL)
- 共享DDL鎖(SDDL)
- 分析鎖、可中斷解析鎖
-
系統鎖
- 閂鎖(Latches)
- 互斥體(Mutexes)
- 內部鎖(Internal Locks)
-
-
-
用戶與系統
- 自動鎖(隱式鎖)
- 顯式鎖
- 鎖的兼容性
- 鎖的數據字典---字段之間的關聯關係
- 新建或重建索引過程中的鎖信息的變化
- SELECT ... FOR UPDATE
- DML_LOCKS和DDL_LOCK_TIMEOUT參數
- 在編譯存儲過程、函數等對象時無響應-
- 新建或重建索引的鎖信息
- 對於錯誤"ORA-08104: this index object 68111 is being online built or rebuilt",應該如何處理?
1
會話
- V$SESSION視圖
- 如何查看某一個會話是否被其它會話阻塞?
- 如何查到會話正在執行的SQL語句?
- 如何徹底殺掉會話?V$SESSION的STATUS爲KILLED的情況下如何找到相關的後臺OS進程?
- 如何讓普通用戶可以殺掉自己用戶的會話?
- SESSIONS和PROCESSES的關係
- 如何根據OS進程快速獲得DB進程信息與正在執行的語句?
- 怎麼殺掉特定的數據庫會話?
- 如何快速的清理Oracle的進程?
1
-
審計和Undo
課程模塊
培訓要點
學時
審計
- 責任分離
- 數據庫安全性
- 監視合規性
- 標準數據庫審計
- 配置審計線索
- 統一審計線索
- 默認審計
- 什麼是審計(Audit)?
- 審計如何分類
- 遷移SYS.AUD$表到其它表空間
- 審計中BY ACCESS和BY SESSION的區別是什麼?
- 如何對SYSDBA和SYSOPER進行審計?
- 什麼是細粒度審計?
- FGA審計和標準審計有什麼區別?
1
Undo
- 還原數據
- 事務處理和還原數據
- 存儲還原信息
- 還原數據與重做數據
-
管理還原
- 配置還原保留時間
- 保證還原保留時間
- 將還原表空間改爲固定大小
- 一般還原信息
- 使用還原指導
0.5
Undo和Redo
- Undo的作用
- Undo段存儲的內容
-
塊清除:
- 快速塊清除(Fast Commit Cleanout)
- 延時塊清除(Delayed Block Cleanout)
- Undo表空間
- 系統回滾段(System Rollback Segment)與延遲迴滾段(Deferred Rollback Segment)
- ORA-01555
- Redo日誌文件(Redo Log Files)的作用是什麼?
- 如何管理聯機Redo日誌組與成員?
- 在Oracle中,如果聯機Redo日誌文件損壞,那麼如何恢復?
1
-
AWR、ASH、ADDM和統計信息
課程模塊
培訓要點
學時
AWR、ASH、ADDM和統計信息
-
統計信息(學習SQL優化的必修課)
- 統計信息的簡介和分類
- 索引統計信息
- 表統計信息
- 列統計信息
- 系統統計信息
- 內部對象統計信息
-
自動收集統計信息
- 統計信息何時變爲陳舊狀態(10%的含義)?
- 修改自動收集統計信息的時間
- DBA_TAB_MODIFICATIONS
- 怎樣收集表的統計信息?怎樣收集分區表的統計信息?
- 什麼是動態採樣(Dynamic Sampling)?
- 如何鎖住統計信息?
- 什麼是待定的統計信息(Pending Statistic)?
- 什麼是直方圖(Histogram)?
- 什麼是多列統計信息(Extended Statistics)?
- 基表COL_USAGE$的作用是什麼?
- 新建索引後統計信息是否自動收集?
- 什麼是基數反饋(Cardinality Feedback)?
- 如何查詢表和索引的歷史統計信息
- Oracle如何併發地收集統計信息?
- 當收集表的統計信息時應該注意哪些問題?
- 什麼是基數(Cardinality)和可選擇率(Selectivity)?
- 使用SPLIT來拆分某個分區的時候,其拆分出來的新分區的統計信息行數是多少?
- 當自動收集任務運行時,哪些對象會被收集?
- 分區表統計信息的更新機制是怎樣的?
- 如何查詢表的DML操作數據變化量?
- 對錶執行TRUNCATE操作會將表的統計信息也清除掉嗎?
-
自動負載信息庫(AWR)
- AWR 基礎結構
- AWR 基線
- Enterprise Manager 和 AWR
- 管理 AWR
- 統計級別
- 什麼是AWR?
- 如何獲取AWR報告?
- 定時生成AWR報告
- AWR報告中主要關注哪些方面內容?
-
ASH
- 什麼是ASH?
- 如何獲取ASH報告?
- 如何查看過去某一段時間數據庫系統的會話是否有問題?
-
自動數據庫診斷監視器 (ADDM)
- 什麼是ADDM?
- 如何獲取ADDM報告?
-
自動維護任務
- 簡介
- 自動維護任務配置
-
服務器生成的預警
- 設置閾值
- 創建和測試預警
- 預警通知
- 對預警作出響應
2
-
-
JOB和分區
課程模塊
培訓要點
學時
JOB
-
DBMS_JOB
- 創建、刪除
- 後臺進程
- dbms_job package 用法介紹
-
殺JOB
- 刪除其它用戶下的job用 sys.dbms_ijob.remove()
- 殺會話+殺後臺進程
-
what的寫法
- 存儲過程
- 匿名塊
-
數據字典
- 所有job(dba_jobs)
- 正在運行(dba_jobs_running)
- RAC中指定dbms_job運行在指定實例(instance)
- 權限
- PL/SQL工具創建和管理job
-
DBMS_SCHEDULER
- DBMS_JOB和DBMS_SCHEDULER之間的區別
-
創建、刪除
- 帶參數
- 不帶參數
- 通過dbms_scheduler去執行shell腳本
- 權限
- 輕量級job(Lightweight Jobs)
- PL/SQL工具創建和管理job
- RAC中如何指定JOB的運行實例
-
如何判斷SCHEDULER JOB是否正在運行?
- DBA_SCHEDULER_JOBS視圖的STATE列
- DBA_SCHEDULER_RUNNING_JOBS
-
如何查詢SCHEDULER JOB的運行日誌?
- DBA_SCHEDULER_JOB_LOG和DBA_SCHEDULER_JOB_RUN_DETAILS
- 通過DBMS_SCHEDULER如何調用SHELL腳本?-
- 如何批量刪除JOB?
- 數據字典
1
分區
- 分區表簡介
- 何時考慮分區?
- 分區表有什麼優點
-
有哪些類型的分區?如何選擇用哪種類型的分區表?
- 範圍分區(RANGE PARTITION)
- 哈希分區(HASH PARTITION)
- 列表分區(LIST PARTITION)
- 引用分區(REFERENCE PARTITION)
- 複合分區(組合分區)
-
INTERVAL分區(間隔分區)
- 月分區
- 天分區
- 系統分區
- 分區模板
-
分區表的維護
- 添加分區(add partition)
- 收縮表分區(coalesce partitions)
- 刪除分區和刪除子分區(drop partition)
- 添加子分區
-
截斷表分區(Truncate Partition)--截斷一個分區表中的一個分區的數據
- 截斷分區表的子分區
- 截斷帶有約束的分區表
- 注意事項
-
移動表分區(Move Partition)
- 將一個表的分區從一個表空間移動到另一個表空間
- 壓縮表Move--compress
- 合併分區(Merge Partitions)
- 重命名某一個分區(Rename Partition)
- 交換表分區(Exchange Partitions)
-
修改 list 表分區
- 修改 list 表分區--Add Values
- 修改list 表分區--Drop Values
- 拆分表分區(Split Partition)--分區切割
-
修改分區表屬性
- 修改表分區默認屬性(Modify Default Attributes)
- 修改表分區當前屬性(Modify Partition)
- 修改分區表的logging屬性
- 並行度
- 修改表子分區模板(Set Subpartition Template)
-
分區表的查詢優化
- 單分區查詢
- 跨分區查詢
- 分區表常用數據字典視圖有哪些?
- Oracle之INTERVAL分區的STORE IN屬性存儲在哪張表中?
- 如何查詢某個分區是否是INTERVAL分區表?
-
分區表的壓縮
- 分區表壓縮
- 含有子分區的分區表壓縮
- 分區表哪些分區被壓縮了
- 解壓縮
-
分區表單個分區分析(分區表收集統計信息)
- 指定partname和GRANULARITY
-
普通錶轉換爲分區表有哪些辦法?
- (1)導出/導入方法(Export/Import Method)
- (2)子查詢插入方法(Insert With a Subquery Method)
- (3)分區交換方法(Partition Exchange Method)
- (4)在線重定義方法(DBMS_REDEFINITION Method)
- 分區表中lob類型的字段
- 分區表性能注意事項
-
索引失效的情況
- 分區表
- 非分區表
1
-
-
備份和恢復(包括閃回)
課程模塊
培訓要點
學時
備份和恢復的概念
-
故障類別
- 語句失敗
- 用戶進程失敗
- 網絡故障
- 用戶錯誤
- 介質故障
-
實例恢復
- 實例故障
- 瞭解實例恢復:檢查點 (CKPT) 進程
- 實例恢復的階段
- 優化實例恢復
- 使用 MTTR 指導
- 實例恢復和介質恢復的區別
- 配置可恢復性
- 配置快速恢復區
0.5
SCN
- SCN的組成
-
SCN的分類
- 系統檢查點SCN(System Checkpoint SCN)
- 文件檢查點SCN(Datafile Checkpoint SCN)
- 開始SCN(Start SCN)
- 結束SCN(Stop SCN)
- 如何查看系統當前SCN
- SCN與時間的相互轉換
0.3
備份
- rman 連接數據庫
- RMAN數據字典
-
rman命令
- 列出備份信息(list)
- 刪除備份(delete)
-
報告命令(report)
- 可以報告哪些文件需要備份
- 報告不可恢復的備份集
- 報告數據庫的信息
- 交叉檢查(crosscheck)
- VALIDATE DATABASE
-
RMAN的配置
- CONFIGURE RETENTION POLICY 配置備份保留策略
- CONFIGURE BACKUP OPTIMIZATION 配置備份優化
- CONFIGURE DEFAULT DEVICE TYPE 配置 IO 設備類型
- CONFIGURE CONTROLFILE AUTOBACKUP 配置控制文件自動備份
- CONFIGURE DEVICE TYPE 設置並行備份
- CONFIGURE DATAFILE BACKUP COPIES 設置備份文件冗餘度
- CONFIGURE MAXSETSIZE 配置備份集的最大尺寸
- CONFIGURE ARCHIVELOG DELETION POLICY
- RMAN中關於備份或歸檔文件狀態OBSOLETE和EXPIRED的區別是什麼?
- 物理備份和邏輯備份分別是什麼?
- 差異增量備份和累積增量備份的區別是什麼?
- 什麼是塊改變跟蹤?
-
完全備份
- 全庫備份腳本分享
- 增量備份
-
文件備份
- 數據文件備份
- 控制文件
- spfile
- 表空間備份
1
恢復
- TRUNCATE恢復方法
- TSPITR(表空間基於時間點恢復)
- rm -rf誤操作的恢復過程
- 在丟失歸檔的情況下如何進行數據文件的恢復
- 數據文件OFFLINE之後必須要做的一件事是什麼?
-
什麼是DRA(Data Recovery Advisor,數據恢復指導)?
- list failure:列出DRA記錄的故障
- advise failure:顯示建議修復的選項
- repair failure:使用RMAN的建議和關閉故障
- rm -rf 誤操作的恢復過程
- 丟失了控制文件(多種恢復方法演示)
- 丟失了在線重做日誌文件
-
數據文件恢復
- 在NOARCHIVELOG模式下丟失了數據文件
- 在ARCHIVELOG模式下丟失了非關鍵數據文件
- 在ARCHIVELOG模式下丟失了系統關鍵數據文件
- 數據故障
- 只存在備份片如何恢復數據庫
- spfile恢復(多種恢復方法演示)
-
表空間恢復
- Undo表空間
- SYSTEM表空間
- 其它表空間
-
歸檔日誌的恢復
- restore archivelog 的各種選項
- 怎樣清除v$archived_log視圖中的過期信息
1
閃回
-
閃回的分類
- 閃回刪除(Flashback DROP)--10g,基於回收站(Recycle Bin)特性實現
- 閃回數據庫(Flashback Database)--基於閃回恢復區(Flash Recovery Area)中的閃回日誌;10g開始引入,後臺進程爲:RVWR(Recovery Writer)
- 閃回數據歸檔(Flashback Data Archive)--基於閃迴歸檔區(Flashback Archive)中的數據,11g開始引入,進程fbda(Flashback Data Archiver Process)
- 閃回版本查詢(Flashback Version Query),10g
- 閃回查詢(Flashback Query),9i
- 閃回事務查詢(Flashback Transaction Query),10g
- 閃回表(Flashback TABLE),10g
-
其它內容
- 什麼是閃回?閃回有哪些分類?
- Oracle的回收站是什麼?
- 什麼是閃回數據歸檔(Flashback Data Archive)?
- 什麼是閃回數據庫?
- 如何讓普通用戶可以對DBA_SOURCE視圖進行閃回查詢?
- 存儲過程被覆蓋了,如何恢復?
1
RMAN 高級應用之 Duplicate 複製數據庫
- Duplicating an Active Database
- Cloning A Database On The Same Server Using Rman Duplicate From Active Database
- Duplicating a Database with a Target Connection
- Duplicating a Database with Recovery Catalog Without Target Connection
- Duplicating a Database Without Recovery Catalog or Target Connection
1
bbed簡介
- bbed簡介
0.1
rman之塊介質恢復
- 壞塊的簡介
- 壞塊的檢測方法
- BMR恢復壞塊
- 如何確定壞塊的對象名
- 如果發現有壞塊,那麼如何檢索其它未壞的數據?
-
模擬壞塊
-
blockrecover恢復壞塊
- 創建演示環境
- 單塊數據塊損壞的恢復處理
- 多塊數據塊損壞的恢復處理
- 壞塊的對象定位與影響
-
bbed模擬
- bbed修復壞塊示例
-
0.5
非歸檔模式備份恢復
- 非歸檔的備份方法
- 非歸檔模式下的恢復
- 非歸檔模式的備份與恢復示例
0.2
OPEN RESETLOGS
- 使用alter database open resetlogs的場合
- 爲什麼使用RESETLOGS?
- RESETLOGS會執行什麼操作?
0.1
4條RECOVER DATABASE命令的區別是什麼?
- 1 RECOVER DATABASE USING BACKUP CONTROLFILE
- 2 RECOVER DATABASE UNTIL CANCEL
- 3 RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL;
- 4 RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE;
0.1
日誌挖掘logminer
- 日誌挖掘logminer
0.1
利用增量數據庫備份進行恢復
- 利用增量數據庫備份進行恢復
0.1
跨版本恢復
- RMAN可以跨版本或跨平臺執行還原或複製命令嗎?
- 跨大版本恢復
- 跨小版本恢復
1
OS備份(物理備份)和恢復
-
冷備份(一致性備份、脫機備份) --cool backup
- 冷備份的優缺點
- 冷備份一般步驟
- 冷備腳本的寫法
- 存在冷備下的還原(非歸檔模式)
-
丟失數據文件
- 丟失system表空間
- 丟失sysaux
- undo丟失
- 自己建立的表空間(如users,ts_test)
- temp表空間
- 日誌文件丟失
- 控制文件丟失
- 參數文件丟失
- 密碼文件丟失
-
熱備份(非一致性備份、聯機備份) --只能用於歸檔模式
- 簡介
-
熱備的過程
- 基於數據庫的熱備
- 基於表空間的熱備
- 控制文件的熱備
- 參數文件的熱備
- 臨時表空間的數據文件、日誌文件不需要備份
- 熱備份的相關視圖
-
存在熱備下的還原
- 還原控制文件
-
還原數據文件
- 可以脫機的表空間文件
- 不可以脫機的表空間文件
0.5
12C中RMAN恢復的新特性
- 新的備份用戶特權(SYSBACKUP)
- 可以直接在RMAN中執行SQL語句
- 在RMAN中提供了表級別恢復(RECOVER TABLE)
- RMAN自動恢復到REDO終點的步驟簡化(UNTIL AVALIABLE REDO)
- 通過網絡遠程恢復數據庫(Restore/Recover from Service)
0.5
-
-
-
移動數據(exp、expdp、sqlldr、外部表)
課程模塊
培訓要點
學時
exp和imp
-
EXP導出數據
- 導出表
- 導出方案
- 導出數據庫
-
IMP導入數據
- 導入表
- 導入方案
- 導入數據庫
- imp導入常見問題處理
-
其它實用內容
-
可以從dmp文件獲取哪些信息?
- 一、獲取基本信息:導出的版本、時間、導出的用戶
- 二、獲取dmp文件中的表信息
- 三、解析dmp文件生成parfile文件
- 四、如何查看dmp文件的字符集
- 五、如何將US7ASCII字符集的dmp文件導入到ZHS16GBK字符集的數據庫中?
- exp的query參數
- 什麼是延遲段創建(Deferred Segment Creation)?
- Oracle 11g不能導出空表的三種解決方法
-
exp導出ASH數據
- 方法1:ctas建表導出,有的客戶不讓建表
- 方法2:導出基表的數據
-
常見錯誤
- XP-00091: Exporting questionable statistics 問題處理方法
- EXP-00026: conflicting modes specified
- IMP-00013: only a DBA can import a file exported by another DBA
- IMP-00031: 必須指定 FULL=Y 或提供 FROMUSER/TOUSER 或 TABLES 參數
- IMP-00002: 無法打開要讀取的imp D:/admin.dmp
- EXP-00008: 遇到 ORACLE 錯誤 904
- imp導入報錯:IMP-00037: Character set marker unknown
- IMP-00010: not a valid export file, header failed verification
- imp-00051,imp-00008
- IMP-00132: first file in the multi-file export is 32
-
0.5
數據泵(expdp和impdp)
- Oracle 數據泵:概覽
- Oracle 數據泵:優點
- Oracle Database 11g 中的數據泵增強功能
- 數據泵的目錄對象
- 創建目錄對象
- 數據泵導出與導入客戶機:概覽
- 數據泵實用程序:界面與模式
- 使用 Database Control 進行數據泵導出
-
數據泵導出示例
- 數據泵導出示例:基本選項
- 數據泵導出示例:高級選項
- 數據泵導出示例:文件
- 數據泵導出示例:調度
- 數據泵導出示例:複查
- 數據泵導入示例:impdp
-
其它實用內容
- 數據泵的一些常用語法命令
- 如何徹底停止expdp進程?
- Oracle用戶密碼含特殊字符時如何登陸?
-
如何獲取數據庫DDL的創建語句
- imp示例
- imp的indexfile選項(indexfile導出表和索引的ddl語句)
- impdp示例
- expdp時顯示時間 metrics
- NETWORK_LINK 選項
-
只導出元數據
- 【IMPDP】使用 TRANSFORM選項去掉表空間和存儲子句
- 如何導出存儲過程、函數、包和觸發器的定義語句?如何導出表的結構?如何導出索引的創建語句?
-
12c中關於數據泵的新特性
- expdp VIEWS_AS_TABLES選項導出視圖
- 關閉redo日誌的生成(TRANSFORM=DISABLE_ARCHIVE_LOGGING:Y)
-
過濾對象(exclude、include)
- 導出數據庫連接
- 導出JOB
- dba_export_objects
- 重定義表的Schema或表空間
- 優化導入/導出效率
- impdp傳輸表空間(OCM考題)
- expdp 導出sys用戶下的表報錯ORA-39165 和ORA-39166
- 數據泵導出導入卡死
- 使用隱含Trace參數診斷Oracle Data Pump故障
- 全庫導出和導入演示
0.5
SQL*Loader
- 使用 SQL*Loader 加載數據
- SQL*Loader 控制文件
- 直接路徑加載與常規路徑加載的比較
- 如何將文本文件或Excel中的數據導入數據庫?
- 4G大文件導入示例。
0.2
外部表
- 外部表的優點
- 使用ORACLE_LOADER定義外部表
- 使用ORACLE_DATAPUMP填充外部表
-
使用外部表
- 基礎
- 只有1列
- 外部表的parallel
-
利用外部表查看告警日誌
- 先來個最簡單的使用方法
- 再來個稍微複雜點的
0.2
-
-
管理補丁程序
課程模塊
培訓要點
學時
管理補丁程序
- PSU、SPU(CPU)、BP、one-off patch等概念簡介
- 什麼是Metalink或MOS
- Upgrade與Update
- 如何查找最新的PSU?
- 如何確認當前數據庫已經安裝了什麼PSU?
- 如何安裝PSU?
-
PSU安裝演示
- 11.2.0.3.0升級到11.2.0.3.1
-
熱補丁安裝演示( One-off Patch)
- 一道OCM考題
0.5
-
實驗課
課程模塊
培訓要點
學時
實驗課
- 數據泵之NETWORK_LINK
- Duplicating an Active Database(duplicate複製數據庫)
- Duplicating a Database Without Recovery Catalog or Target Connection
- Duplicating a Database Without Recovery Catalog or Target Connection
- TSPITR(表空間基於時間點恢復)
- 直接複製數據文件實現linux平臺數據庫複製到windows平臺數據庫
- 利用rman來實現linux平臺數據庫複製到windows平臺數據庫
- 熱備下的測試庫搭建
- 傳輸表空間(TTS)一例(linux asm -> win 文件系統)
- 傳輸表空間(TTS)一例(win文件系統 -> linux asm )
- 傳輸表空間(TTS)一例(AIX asm -> linux asm )
- 傳輸表空間(TTS)一例(linux asm -> AIX asm)
- 傳輸表空間(TTS)一例(linux asm -> AIX asm)--基於RMAN備份
- 傳輸表空間(TTS)一例(AIX asm -> linux asm )--基於RMAN
- AIX平臺數據庫遷移到Linux--基於RMAN(真實環境)
2
-
OCP講課內容思維導圖
-
安裝與卸載
-
-
SQL基礎部分
-
基本對象的管理
-
數據庫管理部分
-
體系結構和Oracle Restart
-
-
管理數據庫實例
-
ASM
-
網絡管理
-
表空間及數據文件
-
事務處理及用戶
-
用戶權限及角色
-
鎖和會話
-
審計和Undo
-
AWR、ASH、ADDM、統計信息
-
JOB和分區
-
備份和恢復(包括閃回)
-
移動數據
-
管理補丁程序
-
實驗課
-
OCP講課文檔目錄
-
數據庫安裝部分的目錄
-
第1章 安裝Oracle軟件 - 6 -
1.1 Oracle DB 管理員的任務 - 6 -
1.2 用於管理 Oracle DB 的工具 - 7 -
1.3 制定安裝計劃 - 8 -
1.4 Oracle Grid Infrastructure 和Oracle DB 安裝:系統要求 - 9 -
1.5 準備操作系統 - 10 -
1.5.1 設置環境變量 - 11 -
1.5.2 檢查系統要求 - 12 -
1.5.3 OUI - 13 -
1.5.4 GI安裝 - 15 -
1.5.4.1 Installation Option(安裝選項) - 15 -
1.5.4.2 選擇產品語言 - 16 -
1.5.4.3 創建 ASM 磁盤組 - 17 -
1.5.4.4 定義 ASM 口令 - 17 -
1.5.4.5 定義已授權的操作系統組 - 19 -
1.5.4.6 指定安裝位置 - 20 -
1.5.4.7 創建清單 - 21 -
1.5.4.8 執行先決條件檢查 - 22 -
1.5.4.9 驗證安裝概要數據 - 23 -
1.5.4.10 監視安裝進度 - 24 -
1.5.4.11 執行root配置腳本 - 25 -
1.5.4.12 執行 Configuration Assistant - 25 -
1.5.4.13 完成安裝 - 27 -
1.5.4.14 配置 FRA 磁盤組 - 27 -
1.5.5 安裝 Oracle DB 軟件 - 30 -
1.5.5.1 選擇安裝類型 - 30 -
1.5.5.2 選擇網格安裝選項 - 31 -
1.5.5.3 選擇語言設置 - 32 -
1.5.5.4 選擇數據庫版本 - 33 -
1.5.5.5 指定安裝位置 - 34 -
1.5.5.6 選擇操作系統組 - 35 -
1.5.5.7 執行先決條件檢查 - 36 -
1.5.5.8 安裝概要頁 - 37 -
1.5.5.9 安裝產品頁 - 38 -
1.5.5.10 安裝完成 - 39 -
1.5.5.11 安裝選項:無提示模式 - 41 -
1.5.5.12 小測驗 - 41 -
1.5.5.13 小結 - 42 -
1.5.6 使用DBCA創建Oracle DB - 42 -
1.5.6.1 計劃數據庫 - 42 -
1.5.6.2 選擇適當的字符集 - 44 -
1.5.6.3 Database Configuration Assistant (DBCA) - 48 -
1.5.6.4 Database Templates(數據庫模板) - 49 -
1.5.6.5 Database Identification(數據庫標識) - 49 -
1.5.6.6 Management Options(管理選項) - 50 -
1.5.6.7 Database Credentials(數據庫身份證明) - 50 -
1.5.6.8 Database File Locations(數據庫文件位置) - 51 -
1.5.6.9 Recovery Configuration(恢復配置) - 52 -
1.5.6.10 Database Content(數據庫內容) - 52 -
1.5.6.11 Initialization Parameters(初始化參數) - 53 -
1.5.6.12 Database Storage(數據庫存儲) - 54 -
1.5.6.13 Create Options(創建選項) - 54 -
1.5.7 創建數據庫設計模板 - 57 -
1.5.8 使用 DBCA 刪除數據庫 - 58 -
1.5.9 小測驗 - 60 -
1.5.10 小結 - 60 -
第2章 RHEL 5.5的OS版本 - 60 -
2.1 安裝VMware Workstation 12 Pro - 60 -
2.1.1 校驗MD5值 - 61 -
2.2 安裝RHEL 5.5的OS版本 - 63 -
2.2.1 簡易安裝 - 63 -
2.2.2 一般安裝過程 - 68 -
2.2.2.1 開始安裝 - 83 -
2.2.2.2 建立自定義的分區結構 - 87 -
2.2.2.3 繼續 - 92 -
2.3 其它軟件安裝 - 99 -
2.3.1 安裝VMware Tools - 99 -
2.3.1.1 安裝完成後設置共享文件 - 104 -
2.3.1.2 設置桌面背景和桌面的大小 - 105 -
2.3.2 設置主機IP地址 - 106 -
2.3.3 中文環境切換成英文環境 - 107 -
2.3.4 配置本地yum源(rhel 5.5) - 107 -
2.3.5 安裝rlwrap - 108 -
2.4 對/dev/sdb進行分區 - 109 -
2.4.1 邏輯卷管理的命令 - 116 -
第3章 安裝11.2.0.3 64位單機數據庫軟件 - 117 -
3.1 安裝前的準備工作 - 117 -
3.1.1 軟件準備 - 117 -
3.1.2 檢查硬件 - 117 -
3.1.3 修改hosts文件、修改主機名 - 118 -
3.1.4 安裝軟件包檢查 - 118 -
3.1.5 內核參數--shell限制 - 120 -
3.1.5.1 /etc/security/limits.conf - 120 -
3.1.5.2 /etc/pam.d/login - 121 -
3.1.5.3 /etc/profile - 121 -
3.1.5.4 /etc/sysctl.conf - 121 -
3.1.6 關閉防火牆 - 122 -
3.1.7 關閉耗費資源的服務 - 123 -
3.1.8 禁用selinux - 123 -
3.2 新建用戶和組 - 124 -
3.2.1 配置用戶的環境變量 - 124 -
3.3 新建安裝目錄 - 125 -
3.4 將oracle使用者加入到sudo羣組中 - 125 -
3.5 準備oracle安裝文件 - 125 -
3.5.1 拷貝安裝文件 - 125 -
3.5.1.1 計算MD5值 - 128 -
3.5.2 解壓安裝文件 - 129 -
3.6 開始安裝 - 130 -
3.6.1 安裝前的檢查 - 141 -
3.6.2 執行root.sh腳本 - 144 -
3.7 擴展(靜默安裝軟件) - 145 -
第4章 創建數據庫 - 148 -
4.1 DBCA圖形創建 - 148 -
4.1.1 啓動監聽 - 159 -
4.2 DBCA靜默方式建庫(必會) - 161 -
4.2.1.1 什麼是靜默建庫? - 161 -
4.3 CREATE DATABASE手動建庫(OCM) - 163 -
4.4 刪除數據庫的幾種方式 - 164 -
4.5 在多個不同版本的數據庫情況下,如何確定實例的ORACLE_HOME地址? - 164 -
第5章 配置監聽和TNS - 165 -
5.1 靜默創建監聽 - 167 -
第6章 其它 - 167 -
6.1 讓Oracle DB、監聽和oem開機啓動(dbstart) - 167 -
6.1.1 方法1:配置Linux的service服務 - 168 -
6.1.2 方法2:配置/etc/rc.d/rc.local文件 - 170 -
6.1.3 總結 - 172 -
6.2 PLSQL Developer軟件使用和Windows 下綠色版Oracle客戶端的安裝和使用 - 172 -
6.2.1 Linux下綠色版Oracle客戶端的安裝 - 172 -
6.3 配置glogin.sql - 173 -
6.4 如何判斷Oracle是32位還是64位? - 173 -
第7章 數據庫軟件的卸載 - 176 -
第8章 安裝grid軟件 - 177 -
8.1 OS修改 - 177 -
8.1.1 編輯 /etc/security/limits.conf 文件,在文件尾部添加如下內容: - 177 -
8.1.2 添加grid用戶 - 177 -
8.1.3 配置grid用戶的環境變量 - 178 -
8.1.4 擴展磁盤空間 - 179 -
8.2 ASM磁盤準備(創建asm磁盤) - 179 -
8.2.1 創建ASM磁盤的方法1--Faking方式 - 179 -
8.2.2 創建ASM磁盤的方法2--直接修改/etc/sysconfig/rawdevices配置raw(rhel6之後不支持) - 182 -
8.2.3 創建ASM磁盤的方法3--Udev方式 - 184 -
一、 uuid方式 - 184 -
2、 配置 udev 綁定的 scsi_id - 187 -
3、 創建並配置udev rules文件 - 188 -
4、 udevadm進行測試 - 189 -
5、 添加完成後,重啓 udev,不同 Linux 發行版本重啓方式不一樣。 - 189 -
6、 查看綁定的 asm,如果此時還是看不到 asm disk,請重啓操作系統後再查看。 - 189 -
二、 raw方式 - 190 -
8.2.4 創建ASM磁盤的方法4--ASMLIB方式 - 191 -
一、 系統版本號 - 191 -
二、 Oracle asmlib下載 - 191 -
三、 上傳並安裝上述的三個rpm軟件包 - 193 -
四、 配置ASM - 193 -
五、 系統添加磁盤 - 194 -
六、 grid軟件安裝完畢後配置asm_diskstring 路徑 - 195 -
七、 測試 - 197 -
8.3 安裝grid軟件 - 198 -
8.3.1 解壓軟件 - 198 -
8.3.2 開始安裝grid軟件(圖形界面) - 199 -
8.3.2.1 創建ASM磁盤組 - 203 -
8.3.2.2 執行root腳本 - 209 -
8.3.2.3 繼續安裝 - 210 -
8.3.2.4 測試ASM實例 - 211 -
8.3.3 靜默安裝grid軟件(可選) - 212 -
8.3.3.1 安裝grid軟件 - 212 -
8.3.3.2 靜默創建ASM實例 - 215 -
8.3.3.3 靜默創建grid用戶的監聽 - 216 -
8.4 創建DATA和FRA的ASM磁盤組 - 218 -
8.5 創建asm管理的數據庫 - 221 -
8.6 創建EM - 223 -
8.7 其它擴展 - 225 -
8.7.1 在AIX或Linux下,如何查看磁盤是否包含數據? - 225 -
8.7.2 如何讓crs_stat命令顯示完整 - 227 -
8.7.3 kfod命令 - 227 -
8.7.3.1 在採用asmlib時,確認物理磁盤的方法 - 228 -
-
Oracle基本SQL部分及其基本管理
目錄 - 1 -
序言 - 12 -
第1章 SQL簡介 - 12 -
1.1 SQL的起源和分類 - 13 -
1.1.1 SQL的起源 - 13 -
1.1.2 SQL的分類 - 13 -
1.2 提交(COMMIT)類型 - 15 -
1.3 如何查詢在線和離線的官方文檔 - 19 -
第2章 SQL*Plus工具 - 20 -
2.1 SQL 與 SQL*Plus - 20 -
2.2 SQL 語句與SQL*Plus - 20 -
2.2.1 關係對比 - 20 -
2.2.2 關係圖 - 21 -
2.3 登錄 SQL*Plus - 21 -
2.3.1 EZCONNECT方式 - 22 -
2.3.2 使用 SQL*Plus - 24 -
2.4 SQL*Plus和SQL Developer - 24 -
2.4.1 從Shell腳本調用SQL*Plus - 25 -
2.4.1.1 shell調用 - 25 -
一、 最簡單的shell裏調用sqlplus - 25 -
二、 把sqlplus執行結果傳遞給shell方法一 - 26 -
三、 把sqlplus執行結果傳遞給shell方法二 - 26 -
四、 把shell程序參數傳遞給sqlplus - 27 -
五、 爲了安全要求每次執行shell都手工輸入密碼 - 27 -
六、 爲了安全從文件讀取密碼 - 28 -
2.4.1.2 bat調用 - 28 -
2.4.2 從SQL*Plus調用SQL腳本 - 29 -
2.4.3 sqlplus中將行轉爲列輸出 - 31 -
2.5 SQL*Plus的設置 - 34 -
2.5.1 顯示錶結構 - 35 -
2.5.2 SET TIMING ON; 和 SET TIME ON - 35 -
2.5.3 SQL*Plus編輯命令 - 35 -
2.5.4 使用 LIST, n, 和 APPEND - 36 -
2.5.5 SQL*Plus 文件命令 - 36 -
2.5.5.1 導出csv、和html文件 - 37 -
一、 導出csv文件格式 - 37 -
二、 導出html文件格式 - 38 -
2.5.6 如何使用上下左右方向鍵 - 40 -
2.5.7 設置執行腳本時的搜尋路徑 - 41 -
2.5.8 SQL*Plus中@和@@的區別是什麼? - 41 -
2.5.9 SQL*Plus中&與&&的區別是什麼? - 41 -
2.5.10 glogin.sql腳本的作用是什麼?如何修改命令的提示符? - 42 -
2.5.11 SQL*Plus的ERRORLOGGING的作用是什麼? - 42 -
2.5.12 如何給SQL*Plus安裝幫助? - 43 -
2.6 iSQL*Plus 簡介 - 44 -
2.6.1 iSQL*Plus概覽 - 46 -
2.6.2 SQL 和iSQL*Plus 交互作用 - 46 -
第3章 基本SELECT語句 - 46 -
3.1 SELECT語句的功能 - 47 -
3.2 選擇所有列 - 48 -
3.3 選擇指定的列 - 48 -
3.4 SQL語句的編輯 - 49 -
3.5 列標題默認屬性 - 49 -
3.6 算術表達式 - 51 -
3.7 定義空值 - 52 -
3.7.1 NULL的注意事項 - 54 -
3.7.2 IS NULL 走索引 - 55 -
3.7.3 多表查詢中的空值問題 - 56 -
3.7.3.1 情形一: - 57 -
3.7.3.2 情形二: - 58 -
3.8 定義列別名 - 59 -
3.9 連字運算符 - 61 -
3.9.1 文字字符串 - 62 -
3.10 相同的行--去重(distinct) - 62 -
3.11 Quote (q)--11g新增 - 64 -
3.12 Oracle特殊字符的處理 - 67 -
3.13 本章學習目的 - 68 -
第4章 條件和排序 - 69 -
4.1 用選擇限定行 - 69 -
4.1.1 限定語法 - 70 -
4.1.2 使用WHERE子句 - 71 -
4.1.3 條件中使用字符串和日期 - 71 -
4.1.4 比較條件 - 72 -
4.1.4.1 使用比較條件 - 72 -
4.1.4.2 使用BETWEEN條件 - 73 -
4.1.4.3 使用IN條件 - 73 -
4.1.4.4 使用LIKE條件 - 75 -
一、 LIKE模糊查詢如何使用索引 - 77 -
4.1.4.5 使用NULL/NOT NULL條件 - 79 -
4.1.5 邏輯條件(AND、OR 、NOT) - 81 -
4.1.5.1 注意問題 - 83 -
4.1.6 優先規則 - 84 -
4.2 排序 - 85 -
4.2.1 降序排序 - 86 -
4.2.2 用列別名排序 - 87 -
4.2.3 多列排序 - 88 -
4.3 總結 - 89 -
第5章 Oracle SQL 單行函數 - 89 -
5.1 學習目的 - 89 -
5.2 SQL函數介紹 - 89 -
5.3 SQL函數分類 - 90 -
5.3.1 單行函數 - 90 -
5.4 DUAL表介紹 - 91 -
5.4.1 擴展 - 92 -
5.5 字符函數 - 93 -
5.5.1 大小寫處理函數 - 93 -
5.5.2 字符處理函數 - 94 -
5.6 數字函數 - 96 -
5.7 日期函數 - 97 -
5.7.1 系統日期 - 97 -
5.7.2 用日期計算 - 98 -
5.7.3 日期函數 - 99 -
5.7.4 轉換函數 - 100 -
5.7.5 隱式數據類型轉換 - 101 -
5.7.5.1 擴展 - 101 -
5.7.6 顯式數據類型轉換 - 103 -
5.7.6.1 日期格式模板 - 103 -
5.7.6.2 時間格式模板 - 104 -
5.7.6.3 數字格式模板 - 104 -
5.8 嵌套函數 - 104 -
5.9 通用函數 - 104 -
5.10 條件表達式 - 106 -
5.10.1 CASE表達式 - 106 -
5.10.2 DECODE函數 - 107 -
5.11 總結 - 108 -
5.12 擴展 - 109 -
5.12.1 如何將一個數字轉換爲字符串並且按照指定格式顯示? - 109 -
5.12.2 ORA-00904: "wm_concat":invalid identifier錯誤解決 - 110 -
5.12.3 如何判斷一個字符串是否含有中文漢字? - 115 -
5.12.4 在Oracle中,如何判斷一個字符串是否爲數字? - 117 -
5.12.5 在Oracle中,如何讓日期顯示爲"年-月-日 時:分:秒"的格式? - 118 -
5.12.6 如何判斷當天是否月份最後一天? - 119 -
第6章 用組函數合計數據 - 120 -
6.1 學習目的 - 120 -
6.2 組函數的概念 - 121 -
6.3 組函數使用 - 121 -
6.3.1 使用AVG、SUM、MAX、MIN - 122 -
6.3.1.1 MAX和MIN優化寫法 - 122 -
6.4 使用COUNT - 124 -
6.4.1 使用COUNT(DISTINCT 列) - 125 -
6.4.2 COUNT(1)、COUNT(*)、COUNT(常量)、COUNT(主鍵)、COUNT(ROWID)、COUNT(非空列)、COUNT(允許爲空列)、COUNT(DISTINCT 列名) - 125 -
6.5 組函數與空值 - 126 -
6.6 GROUP BY 子句 - 127 -
6.7 HAVING 子句 - 128 -
6.8 嵌套組函數 - 128 -
6.9 總結 - 129 -
第7章 從多表中查詢數據 - 129 -
7.1 從多表中查詢數據 - 129 -
7.2 有效連接條件與笛卡兒積 - 130 -
7.2.1 笛卡爾積是什麼? - 130 -
第8章 連接的類型 - 131 -
8.1 等值連接 - 132 -
8.1.1 等值連接中的列別名、表別名 - 134 -
8.1.2 多於兩個表的等值連接 - 135 -
8.2 外連接 - 136 -
8.2.1 外連接(擴展) - 140 -
8.3 自連接 - 143 -
8.3.1 自連接(Self Join) - 144 -
8.4 SQL 1999 連接語法介紹 - 145 -
8.4.1 交叉連接 - 145 -
8.4.2 自然連接 - 145 -
8.4.3 ON子句 - 146 -
8.5 關於SQL Join 中 where和and的區別 - 147 -
8.6 層次查詢 分層查詢 樹形查詢 - 150 -
8.6.1 層次查詢語法結構 - 151 -
8.6.2 分析 - 153 -
8.6.3 SYS_CONNECT_BY_PATH 用於 行列轉換 - 166 -
8.6.4 層次查詢進階 - 167 -
8.6.5 綜合案例 - 170 -
8.6.6 快速構造大表 - 173 -
8.7 WITH語法 - 174 -
8.8 總結 - 175 -
第9章 子查詢 - 175 -
9.1 學習目的 - 176 -
9.2 子查詢介紹 - 176 -
9.3 子查詢分類 - 178 -
9.3.1 單行子查詢 - 178 -
? ?單行子查詢:子查詢只返回一行 - 178 -
? ?針對單行子查詢的條件和普通條件一樣 - 178 -
? ?單行子查詢中使用HAVING - 178 -
? ?可以把單行子查詢想像作一個可變的值。它和一個單一值沒什麼區別 - 178 -
9.3.2 單行子查詢錯誤 - 181 -
9.3.3 多行子查詢 - 182 -
9.3.4 總結 - 184 -
9.3.5 子查詢擴展 - 184 -
9.3.5.1 標量子查詢和關聯子查詢 - 185 -
9.3.5.2 子查詢中的IN和EXISTS - 186 -
9.3.5.3 多行子查詢 - 187 -
9.4 一個案例 - 188 -
第10章 合併查詢(集合查詢) - 190 -
10.1 UNION - 190 -
10.2 UNION ALL - 191 -
10.3 INTERSECT(相交) - 191 -
10.4 MINUS(相減) - 192 -
第11章 數據字典 - 192 -
11.1 動態性能視圖 - 193 -
11.1.1 動態性能視圖:注意事項 - 195 -
11.2 數據字典 - 196 -
11.2.1 數據字典視圖 - 197 -
11.3 擴展 - 199 -
第12章 創建和管理表 - 201 -
12.1 數據庫對象及表介紹 - 201 -
12.2 有關表的最大列數 - 202 -
12.3 表的分類 - 203 -
12.3.1 Oracle的表可以分爲哪幾類? - 203 -
12.4 表和列的命名規則 - 204 -
12.5 CREATE TABLE語句創建表 - 205 -
12.5.1 用子查詢語法創建表(CTAS) - 206 -
12.5.1.1 CTAS及其優化 - 207 -
12.6 DEFAULT選項 - 207 -
12.7 引用表 - 208 -
12.8 數據類型介紹 - 209 -
12.8.1 時間數據類型 - 210 -
12.8.1.1 TIMESTAMP類型 - 210 -
12.8.1.2 INTERVAL YEAR TO MONTH數據類型 - 212 -
12.8.1.3 INTERVAL DAY TO SECOND數據類型 - 213 -
12.9 ALTER TABLE語句 - 214 -
12.9.1 添加列 - 214 -
12.9.2 修改列 - 215 -
12.9.2.1 修改字段的類型、大小和默認值(不能有數據) - 215 -
12.9.3 刪除列(刪除一個字段或清空某一列的數據) - 215 -
12.9.3.1 SET UNUSED選項 - 216 -
12.9.4 修改表的存儲特徵 - 217 -
12.9.5 修改表的名字 - 217 -
12.9.6 修改字段的名字 - 217 -
12.9.7 移動表所在的表空間 - 218 -
12.10 刪除表 - 218 -
12.11 改變對象名稱 - 218 -
12.12 截斷表(TRUNCATE) - 219 -
12.13 給表和列添加註釋 - 219 -
12.13.1 利用SQL生成需要的SQL語句 - 220 -
12.14 總結 - 222 -
第13章 操作數據 - 222 -
13.1 學習目的 - 222 -
13.2 數據操縱語言 - 223 -
13.3 INSERT插入數據的語法 - 223 -
13.3.1 INSERT插入值的變化 - 225 -
13.3.1.1 插入特殊值 - 225 -
13.3.1.2 插入指定日期 - 226 -
13.3.1.3 插入可輸入變量 - 226 -
13.3.1.4 從另外一個表複製 - 226 -
13.3.1.5 在INSERT語句中使用子查詢 - 227 -
13.4 UPDATE更新數據的語法 - 227 -
13.4.1 UPDATE更新的例子和問題 - 228 -
13.4.2 用子查詢更新兩列 - 228 -
13.4.3 更新基於另一個表的行(多表關聯更新--使用子查詢更新數據) - 229 -
13.4.3.1 例子 - 230 -
13.4.4 更新導致完整性約束報錯 - 232 -
13.5 DELETE刪除數據的語法 - 233 -
13.5.1 TRUNCATE語句 - 234 -
13.5.2 DELETE更新的例子和問題 - 235 -
13.5.3 從表中刪除行 - 235 -
13.5.4 刪除基於另一個表的行 - 235 -
13.5.4.1 一道OCM題 - 236 -
13.5.5 刪除數據導致的完整性約束 - 237 -
13.5.6 查找和刪除重複的記錄 - 237 -
13.6 顯示默認值 - 238 -
13.7 MERGE合併語句語法 - 238 -
13.7.1 MERGE語句在優化中的巨大作用 - 242 -
13.7.2 DML語句優化的方法 - 243 -
13.8 DELETE、DROP和TRUNCATE的區別是什麼? - 244 -
13.9 本章總結 - 245 -
第14章 約束 - 245 -
14.1 約束的概念和原則 - 245 -
14.1.1 約束的概念 - 246 -
14.1.2 約束的原則 - 246 -
14.2 定義約束 - 246 -
14.2.1 定義約束的語法 - 246 -
14.2.2 定義約束分類 - 247 -
14.3 幾種常見的約束 - 248 -
14.3.1 NOT NULL約束 - 249 -
14.3.2 UNIQUE約束 - 249 -
14.3.3 PRIMARY KEY約束 - 251 -
14.3.4 FOREIGN KEY約束 - 251 -
14.3.4.1 外鍵列的索引 - 255 -
14.3.4.2 外鍵的死鎖(外鍵未加索引) - 258 -
一、 腳本 - 263 -
二、 找出沒有建立索引的外鍵 - 265 -
14.3.5 CHECK約束 - 266 -
14.4 管理約束 - 268 -
14.4.1 添加約束 - 268 -
14.4.2 刪除約束 - 270 -
14.4.3 禁用、啓用約束 - 271 -
14.4.4 級聯約束 - 271 -
14.4.5 查看約束 - 272 -
14.5 ocp - 273 -
14.6 總結 - 274 -
第15章 視圖 - 274 -
15.1 視圖的概念和優勢 - 274 -
15.2 視圖的概念 - 275 -
15.2.1 使用視圖的優勢 - 275 -
15.3 創建簡單視圖 - 276 -
15.3.1 視圖中查詢數據 - 277 -
15.4 創建複雜視圖 - 277 -
15.5 視圖中DML操作的執行規則 - 277 -
15.5.1 With Check OPTION子句 - 278 -
15.5.2 With READ ONLY子句 - 278 -
15.6 管理視圖 - 278 -
15.6.1 修改視圖 - 279 -
15.6.2 刪除視圖 - 279 -
15.6.3 內建視圖 - 279 -
15.7 視圖擴展 - 280 -
15.7.1 Oracle中的視圖 - 280 -
15.7.2 在什麼情況下可以對視圖執行增、刪、改操作? - 281 -
15.8 Top-N 分析 - 282 -
15.8.1 擴展 - 283 -
15.9 物化視圖簡介 - 285 -
15.9.1 擴展 - 286 -
查詢重寫(QueryRewrite): - 287 -
15.10 總結 - 290 -
第16章 其他數據庫對象 - 290 -
16.1 其他數據庫對象的作用 - 291 -
16.2 序列 - 291 -
16.2.1 序列的語法 - 292 -
16.2.2 定義及查詢序列 - 292 -
16.2.3 NEXTVAL和CURRVAL僞列 - 293 -
16.2.4 使用序列 - 293 -
16.2.5 修改序列 - 294 -
16.2.6 刪除序列 - 295 -
16.2.7 麥苗擴展 - 295 -
16.2.7.1 注意內容 - 295 -
16.2.7.2 性能問題 - 296 -
16.2.7.3 OCP和OCM題舉例 - 296 -
16.3 索引 - 297 -
16.3.1 索引的優缺點 - 297 -
16.3.2 索引的使用原則 - 298 -
16.3.3 創建索引 - 299 -
16.3.4 查詢索引 - 300 -
16.3.5 基於函數的索引 - 300 -
16.3.6 刪除索引 - 301 -
16.3.7 麥苗擴展 - 301 -
16.3.7.1 如何預估即將創建索引的大小? - 301 -
16.3.7.2 如何監控索引的使用狀況? - 302 -
16.3.7.3 哪些操作會導致索引失效? - 305 -
16.3.7.4 什麼是索引的選擇性(Index Selectivity)? - 306 -
16.3.7.5 爲什麼索引沒有被使用? - 307 -
16.3.7.6 IS NULL如何用到索引? - 310 -
16.3.7.7 LIKE模糊匹配如何選擇索引? - 310 -
16.4 同義詞 - 311 -
16.4.1 概念語法 - 311 -
16.4.2 創建和刪除同義詞 - 311 -
16.4.3 擴展 - 312 -
16.4.3.1 PLAN_TABLE表的真諦 - 312 -
16.5 數據庫鏈接(dblink) - 313 -
16.5.1 dblink擴展 - 314 -
16.5.2 一道OCM考題 - 317 -
=================================================== - 317 -
存儲過程、函數、包的開發 - 318 -
第17章 PL/SQL 塊 - 318 -
17.1 PL/SQL 簡介 - 318 -
17.2 程序形式 - 318 -
17.3 編寫規範 - 318 -
17.3.1 註釋 - 318 -
17.3.2 標誌符號的命名規範 - 319 -
17.4 PL/SQL 塊(匿名塊)結構 - 319 -
17.4.1 聲明部分 - 320 -
17.4.2 可執行部分 - 322 -
第18章 控制結構(分支,循環,控制) - 323 -
18.1 簡介 - 323 -
18.2 條件分支語句 --if - 323 -
18.3 循環 - 326 -
18.3.1 loop - 326 -
18.3.2 while循環 - 328 -
18.3.3 for 循環 - 330 -
18.3.3.1 遊標for循環 - 332 -
18.4 順序控制 –goto,null - 333 -
18.4.1 goto 語句 - 333 -
18.4.2 null - 335 -
第19章 異常處理 - 337 -
19.1 概述 - 337 -
19.2 異常處理 - 337 -
19.2.1 預定義異常 ( Predefined ) - 337 -
19.2.2 非預定義異常(Non Predefined ) - 343 -
19.2.3 自定義異常(User_define) - 345 -
19.3 拋出異常 - 348 -
19.3.1 raise - 348 -
19.3.2 RAISE_APPLICATION_ERROR - 349 -
19.4 存過中捕獲異常的行號 - 350 -
19.5 如何捕獲錯誤並記錄到表中? - 354 -
第20章 存儲過程(Stored Procedure) - 359 -
20.1 存儲過程和函數的區別是什麼? - 359 -
20.2 示例 - 359 -
20.2.1 執行和調用存儲過程 - 360 -
20.2.1.1 執行存過 - 360 -
20.2.1.2 存過調用存過 - 362 -
第21章 Oracle中的觸發器 - 362 -
21.1 一些常用的監控 - 369 -
21.2 Oracle的自治事務是什麼? - 374 -
第22章 Oracle中過程/函數返回集合 - 376 -
22.1.1 函數返回系統遊標 - 376 -
第23章 Oracle分批提交DML - 377 -
23.1 分批update - 377 -
23.2 分批delete - 378 -
23.3 分批insert - 379 -
-
Oracle 備份恢復(rman、閃回、數據泵、exp、數據遷移等)
目錄 - 1 -
第1章 備份和恢復的概念 - 15 -
1.1 故障類別 - 17 -
1.1.1 語句失敗 - 17 -
1.1.2 用戶進程失敗 - 18 -
1.1.3 網絡故障 - 19 -
1.1.4 用戶錯誤 - 19 -
1.1.5 介質故障 - 20 -
1.2 Oracle的SCN是什麼? - 20 -
1.2.1 SCN的組成 - 20 -
1.2.2 SCN的分類 - 21 -
1.2.3 如何查看系統當前SCN - 22 -
1.2.4 SCN與時間的相互轉換 - 22 -
1.2.5 SYS.SMON_SCN_TIME字典基表 - 24 -
1.3 實例恢復(實例故障) - 25 -
1.3.1 實例故障 - 25 -
1.3.2 瞭解實例恢復:檢查點 (CKPT) 進程 - 26 -
1.3.3 實例恢復的階段 - 28 -
1.3.4 優化實例恢復 - 30 -
1.3.4.1 使用 MTTR 指導 - 31 -
1.3.5 麥苗擴展 - 32 -
1.3.5.1 實例恢復(前滾和回滾) - 32 -
1.4 配置可恢復性 - 35 -
1.5 配置快速恢復區 - 36 -
1.6 測驗 - 37 -
1.7 小結 - 37 -
第2章 閃回體系 - 38 -
2.1 什麼是閃回?閃回有哪些分類? - 39 -
2.1.1 閃回查詢(Flashback Query) - 42 -
2.1.2 閃回版本查詢(Flashback Version Query) - 44 -
2.1.3 閃回事務查詢(Flashback Transaction Query) - 46 -
2.1.4 閃回表(Flashback TABLE) - 47 -
2.1.5 閃回刪除(Flashback DROP) - 51 -
2.1.6 閃回數據庫(Flashback Database) - 52 -
2.1.7 閃回數據歸檔(Flashback Data Archive) - 52 -
2.1.8 相關OCP題目 - 52 -
2.2 Oracle的回收站是什麼? - 54 -
2.2.1 相關OCP題目 - 56 -
2.3 什麼是閃回數據歸檔(Flashback Data Archive)? - 58 -
2.3.1 相關OCP題目 - 60 -
2.4 什麼是閃回數據庫? - 63 -
2.4.1 相關OCP題目 - 65 -
2.5 其它擴展 - 67 -
2.5.1 如何讓普通用戶可以對DBA_SOURCE視圖進行閃回查詢? - 67 -
第3章 執行數據庫備份 - 68 -
3.1 課程目標 - 68 -
3.2 Oracle Secure Backup - 70 -
3.3 用戶管理的備份 - 71 -
3.4 術語 - 72 -
3.5 Recovery Manager (RMAN) - 74 -
3.5.1 rman 連接數據庫 - 75 -
3.5.2 RMAN數據字典 - 75 -
3.5.3 rman命令 - 76 -
3.6 RMAN簡介 - 76 -
3.7 RMAN的配置 - 79 -
3.7.1 定義RMAN配置 - 79 -
3.7.2 顯示RMAN默認配置 - 80 -
3.7.2.1 CONFIGURE RETENTION POLICY 配置備份保留策略 - 81 -
一、 設置 RMAN 備份的保存策略 - 84 -
3.7.2.2 CONFIGURE BACKUP OPTIMIZATION 配置備份優化 - 86 -
3.7.2.3 CONFIGURE DEFAULT DEVICE TYPE 配置 IO 設備類型 - 89 -
3.7.2.4 CONFIGURE CONTROLFILE AUTOBACKUP 配置控制文件自動備份 - 89 -
一、 控制文件快照自動備份 - 90 -
二、 11G新特性-控制文件延遲自動備份 - 90 -
3.7.2.5 CONFIGURE DEVICE TYPE 設置並行備份 - 96 -
3.7.2.6 CONFIGURE DATAFILE BACKUP COPIES 設置備份文件冗餘度 - 97 -
3.7.2.7 CONFIGURE MAXSETSIZE 配置備份集的最大尺寸 - 98 -
3.7.2.8 CONFIGURE ARCHIVELOG DELETION POLICY - 98 -
3.7.3 FORMAT參數 - 102 -
3.7.4 配置備份設置 - 102 -
3.7.4.1 調度備份:策略 - 104 -
3.7.4.2 調度備份:選項 - 105 -
3.7.5 OCP - 110 -
3.8 rman 其它命令 - 113 -
3.8.1 列出備份信息(list) - 113 -
3.8.2 刪除備份(delete) - 115 -
3.8.2.1 RMAN中關於備份或歸檔文件狀態OBSOLETE和EXPIRED的區別是什麼? - 118 -
3.8.3 報告命令(report) - 119 -
3.8.3.1 可以報告哪些文件需要備份 - 119 -
3.8.3.2 報告不可恢復的備份集 - 119 -
3.8.3.3 報告數據庫的信息 - 120 -
3.8.4 交叉檢查(crosscheck) - 125 -
3.8.5 show - 126 -
3.8.6 VALIDATE DATABASE - 126 -
3.9 批處理命令RUN - 126 -
3.10 物理備份和邏輯備份分別是什麼? - 127 -
3.11 catalog庫 - 128 -
3.11.1 恢復目錄(Recovery Catalog)的概念 - 128 -
3.11.2 如何創建恢復目錄(Recovery Catalog) - 129 -
3.11.2.1 例子 - 129 -
3.11.2.2 官網 - 131 -
一、 Prerequisites - 131 -
二、 基本恢復目錄 - 133 -
三、 虛擬私有目錄--RVPC(RMAN virtual private catalog) - 133 -
3.11.3 Recovery catalog resyncing 恢復目錄同步 - 138 -
3.11.4 IMPORT CATALOG - 138 -
3.11.4.1 例子 - 141 -
3.11.5 Managing a Recovery Catalog - 142 -
3.11.6 OCP - 142 -
3.12 BACKUP命令---RMAN備份 - 151 -
3.12.1.1 whole backup - 153 -
3.12.1.2 full backup - 154 -
一、 完全備份示例 - 156 -
3.12.2 備份表空間 - 157 -
3.12.2.1 temp表空間 - 158 -
3.12.3 備份指定數據文件 - 158 -
3.12.3.1 system - 159 -
3.12.4 備份控制文件 - 159 -
3.12.4.1 在線鏡像備份 - 162 -
3.12.4.2 自動備份 - 162 -
一、 顯式自動備份 - 162 -
二、 隱式自動備份 - 163 -
3.12.4.3 手動備份 - 163 -
一、 備份集備份 - 163 -
二、 鏡像複製備份 - 163 -
三、 重建腳本 - 164 -
3.12.4.4 控制文件快照 - 165 -
3.12.5 備份spfile - 172 -
3.12.6 備份歸檔日誌文件 - 172 -
3.12.6.1 歸檔重做日誌的備份與恢復 - 173 -
3.12.6.2 聯機日誌的備份 - 174 -
3.13 管理備份 - 175 -
3.13.1 查看備份報告 - 177 -
3.13.2 監視快速恢復區 - 178 -
3.13.3 使用 RMAN 命令行 - 179 -
3.14 麥苗擴展 - 180 -
3.14.1 差異增量備份和累積增量備份的區別是什麼? - 180 -
3.14.2 什麼是塊改變跟蹤(Block Change Tracking)? - 185 -
3.14.2.1 OCP - 186 -
3.15 我的備份腳本 - 188 -
3.15.1 linux - 189 -
3.15.1.1 nocatalog全備 - 189 -
一、 簡易版-歸檔 - 191 -
二、 簡易版-非歸檔mount全備 - 192 -
3.15.1.2 catalog增量備份腳本 - 193 -
一、 我自己的 - 195 -
3.15.1.3 Nocatalog增量備份腳本 - 198 -
一、 我自己的 - 211 -
3.15.2 windows - 213 -
3.15.2.1 全備--我自己的 - 215 -
3.15.2.2 增量備份 - 216 -
3.15.2.3 設置windows定時任務 - 219 -
一、 XP下設置 - 222 -
3.16 OCP - 224 -
3.17 小測驗 - 234 -
3.18 小結 - 234 -
第4章 執行數據庫恢復 - 234 -
4.1 課程目標 - 234 -
4.2 打開數據庫 - 235 -
4.2.1 使數據庫保持在打開狀態 - 237 -
4.3 數據庫歸檔恢復 - 238 -
4.4 對數據庫進行完全介質恢復 - 238 -
4.5 物理文件恢復 - 239 -
4.5.1 口令文件(密碼文件) - 239 -
4.5.2 spfile 丟失 - 239 -
4.5.2.1 數據庫沒有掛掉 - 239 -
4.5.2.2 數據庫已經掛掉 - 240 -
一、 從rman的自動備份中找回 - 240 -
二、 手動創建 - 246 -
4.5.3 controlfile丟失 - 246 -
4.5.3.1 控制文件恢復前的準備 - 248 -
4.5.3.2 有備份情況下的恢復 - 251 -
一、 控制文件之一丟失(單個控制文件丟失或損壞) - 251 -
二、 各種情況下的丟失 - 252 -
三、 使用控制文件快照 - 275 -
4.5.3.3 重建控制文件---無備份情況下的恢復 - 278 -
一、 重建控制文件resetlogs和noresetlogs的區別 - 280 -
二、 在線日誌無損情況下的重建 - 300 -
三、 在線日誌損壞情況下的重建 - 301 -
四、 具有隻讀數據文件情況下的重建 - 303 -
4.5.3.4 控制文件不一致 - 307 -
4.5.3.5 OCP - 308 -
4.5.4 Redo文件丟失(online+archive) - 310 -
4.5.4.1 在線Redo日誌 - 310 -
一、 查看日誌文件的狀態 - 312 -
二、 日誌文件的恢復方法 - 313 -
三、 數據庫歸檔/非歸檔模式下inactive redo異常ORA-00316 ORA-00327 - 315 -
四、 正常關閉數據庫current redo異常ORA-00316 ORA-01623 - 318 -
五、 數據庫異常關閉current/active redo異常ORA-00316 ORA-01624 ORA-01194 - 321 -
六、 Loss of a Redo Log File - 332 -
七、 Loss of a Redo Log Group - 337 -
八、 loss all online redo logs - 339 -
九、 數據庫未掛掉的情況下的恢復 - 340 -
4.5.4.2 恢復歸檔日誌archivelog - 341 -
一、 restore archivelog 的各種選項 - 341 -
二、 我的例子 - 351 -
三、 怎樣清除v$archived_log視圖中的過期信息 - 356 -
4.5.4.3 OCP - 358 -
4.5.5 datafile丟失 - 362 -
4.5.5.1 在NOARCHIVELOG模式下丟失了數據文件 - 364 -
4.5.5.2 在ARCHIVELOG模式下丟失了非關鍵數據文件 - 365 -
一、 在ARCHIVELOG模式下丟失了系統關鍵數據文件 - 366 -
4.5.5.3 open狀態下可以脫機的文件(sysaux,user等等) - 367 -
一、 修改數據文件名稱 - 368 -
4.5.5.4 open狀態下不能脫機的文件(system,undo,temp) - 368 -
一、 undo文件丟失 - 373 -
4.5.5.5 Loss of a Noncritical Data File in ARCHIVELOG Mode - 374 -
4.5.5.6 Loss of a System-Critical Data File in ARCHIVELOG Mode - 374 -
一、 system數據文件丟失 - 375 -
二、 【RMAN】SYSTEM表空間數據文件丟失恢復模擬 - 380 -
三、 system - 395 -
4.5.5.7 非歸檔模式 - 397 -
4.5.5.8 如果刪除表空間之前刪除了表空間文件,解決辦法: - 398 -
4.5.5.9 OCP - 398 -
4.5.5.10 數據文件沒有備份的情況 - 399 -
4.5.6 表空間丟失 - 406 -
4.5.6.1 臨時表空間數據文件(tempfile)丟失 - 408 -
4.5.6.2 Recovering from a Lost Index Tablespace - 411 -
4.5.6.3 Recovering a Read-Only Tablespace - 412 -
4.5.6.4 undo表空間 - 412 -
一、 有備份 - 426 -
二、 無備份 - 429 -
三、 使用bbed恢復 - 454 -
四、 數據庫還沒有掛掉的情況下 - 454 -
4.5.7 ORACLE丟失各種文件導致數據庫不能OPEN恢復 - 455 -
4.6 麥苗擴展 - 458 -
4.6.1 恢復的分類 - 458 -
4.6.2 介質恢復(MEDIA RECOVERY) - 459 -
4.6.2.1 數據庫還原(RESTORE)與數據庫恢復(RECOVER) - 459 -
4.6.2.2 完全恢復和不完全恢復 - 462 -
4.6.2.3 完全恢復(Complete Recovery) - 463 -
一、 完全恢復的幾種場景 - 465 -
4.6.2.4 不完全恢復的幾種類型 - 475 -
4.6.2.5 實例恢復和介質恢復的區別 - 476 -
4.6.3 rm -rf誤操作的恢復過程----數據庫在無備份且open情況下的恢復 - 477 -
4.6.3.1 實驗 - 479 -
4.6.3.2 登錄SQLPLUS查看基本信息 - 479 -
4.6.3.3 模擬rm -rf誤操作 - 481 -
4.6.3.4 開始恢復 - 483 -
一、 判斷句柄位置 - 483 -
二、 恢復數據文件、控制文件、tmp文件和online log文件 - 485 -
三、 如果數據庫還沒有關掉則關閉數據庫 - 489 -
4.6.3.5 總結 - 491 -
4.6.4 TRUNCATE恢復方法 - 491 -
4.6.5 TSPITR(表空間基於時間點恢復) - 492 -
4.6.6 在丟失歸檔的情況下如何進行數據文件的恢復 - 495 -
4.6.7 數據文件OFFLINE之後必須要做的一件事是什麼? - 495 -
4.6.8 什麼是DRA(Data Recovery Advisor)? - 498 -
4.6.8.1 Data Recovery Advisor(數據恢復指導) - 499 -
4.6.8.2 數據恢復指導 - 501 -
4.6.8.3 數據故障 - 503 -
一、 列出數據故障 - 504 -
二、 提供修復建議 - 505 -
4.7 基於用戶管理恢復的方法 - 508 -
4.8 基於用戶管理的完全恢復 - 508 -
4.9 小測驗 - 510 -
第5章 日誌挖掘logminer - 511 -
5.1 演示 - 515 -
第6章 利用增量數據庫備份進行恢復 - 516 -
6.1 自己的腳本 - 516 -
第7章 RMAN高級應用之Duplicate複製數據庫 - 519 -
7.1 簡介 - 519 -
7.2 duplicate體系結構 - 520 -
7.2.1 Duplicating an Active Database - 521 -
7.2.1.1 Prerequisites Specific to Active Database Duplication - 525 -
7.2.1.2 自己的例子 - 525 -
7.2.2 Cloning A Database On The Same Server Using Rman Duplicate From Active Database - 526 -
7.2.2.1 Configure The Network - 527 -
7.2.2.2 Create A Password File For The New Database - 528 -
7.2.2.3 Create An Init.Ora For The New Database - 528 -
7.2.2.4 Create The Admin Directory For The New Database - 528 -
7.2.2.5 Shutdown And Startup Mount The Source Database - 528 -
7.2.2.6 Startup Nomount The New Database - 529 -
7.2.2.7 Connect To The Target (Source) And Auxiliary (New Clone)Databases Using Rman - 529 -
7.2.2.8 Execute The Duplicate Command - 529 -
7.2.2.9 Remove The Old Pfile - 535 -
7.2.2.10 Check The New Database - 535 -
7.2.3 Duplicating a Database with a Target Connection - 536 -
7.2.4 Duplicating a Database with Recovery Catalog Without Target Connection - 537 -
7.2.5 Duplicating a Database Without Recovery Catalog or Target Connection - 538 -
7.2.5.1 老師例子 - 539 -
7.3 Creating a Backup-Based Duplicate Database - 556 -
7.3.1 Creating an Initialization Parameter File for the Auxiliary Instance - 557 -
7.3.2 Specifying New Names for Your Destination - 558 -
7.3.2.1 SET NEWNAME - 559 -
7.3.3 Specifying Parameters for File Naming - 562 -
7.3.3.1 DB_FILE_NAME_CONVERT - 563 -
7.4 OCP - 563 -
第8章 BBED簡介 - 567 -
第9章 rman之塊介質恢復 - 568 -
9.1 壞塊的簡介 - 568 -
9.2 壞塊的檢測方法 - 569 -
9.3 BMR恢復壞塊 - 571 -
9.4 如何確定壞塊的對象名 - 571 -
9.5 如果發現有壞塊,那麼如何檢索其它未壞的數據? - 572 -
9.6 模擬壞塊 - 573 -
9.6.1 blockrecover恢復壞塊 - 573 -
9.6.1.1 創建演示環境 - 573 -
9.6.1.2 單塊數據塊損壞的恢復處理 - 574 -
9.6.1.3 多塊數據塊損壞的恢復處理 - 575 -
9.6.1.4 壞塊的對象定位與影響 - 577 -
9.6.2 bbed模擬 - 579 -
9.6.2.1 bbed修復壞塊示例 - 580 -
9.7 壞塊模擬腳本 - 584 -
9.8 OCP - 585 -
第10章 OS備份(物理備份)和恢復 - 587 -
10.1 操作系統備份(物理備份) - 587 -
10.1.1 冷備份(一致性備份、脫機備份) --cool backup - 587 -
10.1.1.1 冷備份的優缺點 - 588 -
10.1.1.2 冷備份一般步驟 - 588 -
10.1.1.3 冷備腳本的寫法 - 589 -
一、 冷備腳本 - 592 -
10.1.1.4 存在冷備下的還原(非歸檔模式) - 592 -
一、 丟失數據文件 - 592 -
二、 日誌文件丟失 - 608 -
三、 控制文件丟失 - 612 -
四、 參數文件丟失 - 616 -
五、 密碼文件丟失 - 616 -
10.1.1.5 OCP - 617 -
10.1.2 熱備份(非一致性備份、聯機備份) --只能用於歸檔模式 - 617 -
10.1.2.1 簡介 - 617 -
10.1.2.2 具體操作 - 618 -
一、 熱備的過程 - 618 -
二、 基於數據庫的熱備 - 619 -
三、 基於表空間的熱備 - 620 -
四、 控制文件的熱備 - 621 -
五、 參數文件的熱備 - 622 -
六、 臨時表空間的數據文件、日誌文件不需要備份 - 622 -
10.1.2.3 熱備份的相關視圖 - 622 -
10.1.2.4 熱備ocp - 625 -
10.1.2.5 存在熱備下的還原 - 629 -
一、 還原控制文件 - 629 -
二、 還原數據文件 - 632 -
第11章 非歸檔模式備份恢復 - 637 -
11.1 非歸檔的備份方法 - 640 -
11.1.1 非歸檔全備份 - 641 -
11.2 非歸檔模式下的恢復 - 643 -
11.3 非歸檔模式的備份與恢復示例(使用冷備) - 646 -
第12章 OPEN RESETLOGS - 650 -
12.1 使用alter database open resetlogs的場合 - 650 -
12.2 爲什麼使用RESETLOGS? - 650 -
12.3 RESETLOGS會執行什麼操作? - 650 -
12.4 ocp - 651 -
第13章 其它 - 651 -
13.1 下列4條RECOVER DATABASE命令的區別是什麼 - 651 -
13.2 RESETLOGS和NORESETLOGS的區別是什麼? - 652 -
第14章 跨版本恢復 - 653 -
14.1 RMAN可以跨版本或跨平臺執行還原或複製命令嗎? - 653 -
14.2 跨小版本 - 655 -
14.3 跨大版本 - 656 -
第15章 只存在備份片的數據庫恢復過程 - 656 -
15.1.1 總結 - 656 -
第16章 Oracle恢復流程圖 - 656 -
第17章 移動數據 - 658 -
17.1 移動數據:一般體系結構 - 659 -
17.2 exp和imp - 660 -
17.2.1 EXP導出數據 - 661 -
17.2.1.1 導出表 - 664 -
17.2.1.2 導出方案 - 665 -
17.2.1.3 導出數據庫 - 665 -
17.2.2 IMP導入數據 - 665 -
17.2.2.1 導入表 - 667 -
17.2.2.2 導入方案 - 668 -
17.2.2.3 導入數據庫 - 668 -
17.2.2.4 imp導入常見問題處理 - 670 -
17.2.3 exp和imp的一些其它用法 - 671 -
17.2.4 其它實用內容 - 672 -
17.2.4.1 可以從dmp文件獲取哪些信息? - 672 -
一、 獲取基本信息:導出的版本、時間、導出的用戶 - 672 -
二、 獲取dmp文件中的表信息 - 672 -
三、 解析dmp文件生成parfile文件 - 673 -
四、 如何查看dmp文件的字符集 - 673 -
五、 如何將US7ASCII字符集的dmp文件導入到ZHS16GBK字符集的數據庫中? - 674 -
17.2.4.2 exp的query參數和parfile的使用 - 675 -
一、 query和parfile示例 - 676 -
17.2.4.3 什麼是延遲段創建(Deferred Segment Creation)? - 677 -
一、 Oracle 11g不能導出空表的三種解決方法 - 679 -
17.2.4.4 exp導出ASH數據 - 680 -
一、 方法1:ctas建表導出,有的客戶不讓建表 - 680 -
二、 方法2:導出基表的數據 - 682 -
17.2.5 常見錯誤 - 684 -
17.2.5.1 EXP-00091: Exporting questionable statistics 問題處理方法 - 684 -
17.2.5.2 EXP-00026: conflicting modes specified - 687 -
17.2.5.3 IMP-00013: only a DBA can import a file exported by another DBA - 689 -
17.2.5.4 IMP-00031: 必須指定 FULL=Y 或提供 FROMUSER/TOUSER 或 TABLES 參數 - 690 -
17.2.5.5 IMP-00002: 無法打開要讀取的imp D:/admin.dmp - 692 -
17.2.5.6 EXP-00008: 遇到 ORACLE 錯誤 904 - 692 -
17.2.5.7 imp導入報錯:IMP-00037: Character set marker unknown - 693 -
17.2.5.8 IMP-00010: not a valid export file, header failed verification - 696 -
17.2.5.9 imp-00051,imp-00008 - 698 -
17.2.5.10 IMP-00132: first file in the multi-file export is 32 - 699 -
17.2.6 注意事項 - 699 -
17.3 數據泵(expdp和impdp) - 699 -
17.3.1 Oracle 數據泵:概覽 - 701 -
17.3.2 Oracle 數據泵:優點 - 702 -
17.3.3 Oracle Database 11g 中的數據泵增強功能 - 703 -
17.3.4 數據泵的目錄對象 - 704 -
17.3.4.1 創建目錄對象 - 705 -
17.3.5 數據泵導出與導入客戶機:概覽 - 706 -
17.3.6 數據泵實用程序:界面與模式 - 707 -
17.3.7 使用 Database Control 進行數據泵導出 - 708 -
17.3.8 數據泵導出示例 - 709 -
17.3.8.1 數據泵導出示例:基本選項 - 710 -
17.3.8.2 數據泵導出示例:高級選項 - 710 -
17.3.8.3 數據泵導出示例:文件 - 711 -
17.3.8.4 數據泵導出示例:調度 - 713 -
17.3.8.5 數據泵導出示例:複查 - 714 -
17.3.8.6 數據泵導入示例:impdp - 714 -
17.3.9 使用 Oracle Enterprise Manager 監視數據泵作業 - 715 -
17.3.10 以數據泵舊模式提供移植支持 - 716 -
17.3.11 數據泵舊模式 - 717 -
17.3.12 管理文件位置 - 719 -
17.3.13 麥苗擴展 - 720 -
17.3.13.1 數據泵的一些常用語法命令 - 720 -
17.3.13.2 如何徹底停止expdp進程? - 725 -
17.3.13.3 如何跟蹤expdp和SQL*Plus命令? - 727 -
17.3.13.4 如何退出exp、imp、telnet等等交互窗口? - 727 -
17.3.13.5 Oracle用戶密碼含特殊字符時如何登陸? - 728 -
17.3.13.6 如何獲取數據庫DDL的創建語句 - 729 -
一、 imp示例(SHOW=Y) - 729 -
二、 imp的indexfile選項(indexfile導出表和索引的ddl語句) - 732 -
三、 impdp示例 - 734 -
四、 只導出元數據完整示例 - 737 -
五、 【IMPDP】使用 TRANSFORM選項去掉表空間和存儲子句 - 737 -
17.3.13.7 過濾數據(exclude、include) - 738 -
一、 Exclude 反規則 - 739 -
二、 Include 正規則 - 740 -
三、 高級過濾CONTENT參數 - 741 -
四、 過濾已經存在的數據TABLE_EXISTS_ACTION參數 - 742 -
五、 導出job - 742 -
六、 導出dblink - 743 -
七、 導出公共同義詞 - 743 -
17.3.13.8 重定義表的Schema或表空間 - 743 -
17.3.13.9 優化導入/導出效率(expdp/impdp) - 744 -
17.3.13.10 impdp傳輸表空間(OCM考題) - 748 -
17.3.13.11 注意事項 - 750 -
一、 expdp 導出sys用戶下的表報錯ORA-39165 和ORA-39166 - 750 -
17.3.13.12 impdp的一些選項 - 752 -
一、 NETWORK_LINK 選項 - 752 -
二、 oracle expdp時顯示時間 metrics - 752 -
17.3.13.13 如何導出存儲過程、函數、包和觸發器的定義語句?如何導出表的結構?如何導出索引的創建語句? - 753 -
17.3.13.14 12c expdp VIEWS_AS_TABLES選項 - 766 -
17.3.13.15 其它錯誤 - 768 -
一、 數據泵導出出現ORA-31617錯誤 - 768 -
17.3.13.16 數據泵導出導入卡死 - 771 -
一、 AIX環境下EXPDP卡住問題處理 - 773 -
17.3.13.17 使用隱含Trace參數診斷Oracle Data Pump故障 - 775 -
17.4 SQL*Loader - 785 -
17.4.1 使用 SQL*Loader 加載數據 - 787 -
17.4.2 SQL*Loader 控制文件 - 787 -
17.4.3 直接路徑加載與常規路徑加載的比較 - 790 -
17.4.4 麥苗擴展 - 791 -
17.4.4.1 如何將文本文件或Excel中的數據導入數據庫? - 791 -
一、 sqlldr高級用法 - 793 -
二、 sqlldr報錯處理 - 795 -
17.4.4.2 簡單示例 - 797 -
17.4.4.3 2000W酒店開房數據導入 - 798 -
17.5 外部表 - 803 -
17.5.1 外部表的優點 - 804 -
17.5.2 使用ORACLE_LOADER定義外部表 - 805 -
17.5.3 使用ORACLE_DATAPUMP填充外部表 - 806 -
17.5.4 使用外部表 - 807 -
17.5.5 麥苗擴展 - 807 -
17.5.5.1 基礎 - 807 -
17.5.5.2 外部表示例 - 809 -
17.5.5.3 只有1列 - 809 -
17.5.5.4 外部表的parallel - 810 -
17.5.5.5 利用外部表查看告警日誌 - 810 -
一、 先來個最簡單的使用方法 - 810 -
二、 再來個稍微複雜點的 - 812 -
17.5.5.6 2000W酒店開房數據導入 - 814 -
17.6 有關sqlldr和外部表的一道OCM考題 - 815 -
17.7 小測驗 - 820 -
17.8 小結 - 820 -
-
Oracle 管理部分(包括體系結構等內容)
目錄 - 1 -
第1章 管理數據併發處理(鎖和會話) - 14 -
1.1 課程目標 - 14 -
1.2 鎖 - 15 -
1.2.1 顯式鎖定 - 17 -
1.2.2 隱式鎖定 - 17 -
1.2.3 按照對象分類鎖定 - 17 -
1.3 鎖定機制 - 18 -
1.4 數據併發處理 - 19 -
1.5 DML 鎖 - 21 -
1.6 入隊機制 - 22 -
1.7 鎖衝突 - 23 -
1.8 鎖衝突的可能原因 - 24 -
1.9 檢測鎖衝突 - 25 -
1.10 解決鎖衝突 - 26 -
1.10.1 使用 SQL 解決鎖衝突 - 27 -
1.11 死鎖 - 28 -
1.12 鎖的擴展 - 28 -
1.12.1 分類 - 29 -
1.12.2 鎖的兼容性 - 32 -
1.12.3 鎖的數據字典視圖 - 33 -
1.12.4 SELECT ... FOR UPDATE - 36 -
1.12.5 DML_LOCKS和DDL_LOCK_TIMEOUT參數 - 36 -
1.12.6 在編譯存儲過程、函數等對象時無響應 - 36 -
1.12.7 新建或重建索引的鎖信息 - 36 -
1.12.8 對於錯誤"ORA-08104: this index object 68111 is being online built or rebuilt",應該如何處理? - 38 -
1.12.9 會話 - 39 -
1.12.9.1 V$SESSION視圖 - 39 -
1.12.9.2 如何查看某一個會話是否被其它會話阻塞? - 42 -
1.12.9.3 如何查到會話正在執行的SQL語句? - 43 -
1.12.9.4 如何徹底殺掉會話?V$SESSION的STATUS爲KILLED的情況下如何找到相關的後臺OS進程? - 43 -
1.12.9.5 如何讓普通用戶可以殺掉自己用戶的會話? - 44 -
1.12.9.6 SESSIONS和PROCESSES的關係 - 46 -
1.12.9.7 如何根據OS進程快速獲得DB進程信息與正在執行的語句? - 47 -
1.12.9.8 怎麼殺掉特定的數據庫會話? - 48 -
1.12.9.9 如何快速的清理Oracle的進程? - 48 -
1.13 小測試 - 48 -
1.14 小結 - 49 -
第2章 管理還原數據 - 49 -
2.1 還原數據 - 50 -
2.2 事務處理和還原數據 - 52 -
2.3 存儲還原信息 - 53 -
2.4 還原數據與重做數據 - 54 -
2.5 管理還原 - 55 -
2.5.1 配置還原保留時間 - 56 -
2.6 保證還原保留時間 - 57 -
2.7 將還原表空間改爲固定大小 - 58 -
2.8 一般還原信息 - 59 -
2.9 使用還原指導 - 60 -
2.10 查看系統活動 - 61 -
2.11 擴展 - 62 -
2.11.1 Undo的作用 - 62 -
2.11.2 Undo段存儲的內容 - 63 -
2.11.3 塊清除 - 64 -
2.11.4 Undo表空間 - 65 -
2.11.5 系統回滾段(System Rollback Segment)與延遲迴滾段(Deferred Rollback Segment) - 67 -
2.11.6 ORA-01555 - 67 -
2.11.7 Redo日誌文件(Redo Log Files)的作用是什麼? - 68 -
2.11.8 如何管理聯機Redo日誌組與成員? - 69 -
2.11.9 在Oracle中,如果聯機Redo日誌文件損壞,那麼如何恢復? - 70 -
2.12 小測驗 - 70 -
2.13 小結 - 71 -
第3章 實施Oracle DB審計 - 72 -
3.1 責任分離 - 73 -
3.2 數據庫安全性 - 74 -
3.3 監視合規性 - 75 -
3.4 標準數據庫審計 - 76 -
3.5 配置審計線索 - 78 -
3.6 統一審計線索 - 79 -
3.6.1 指定審計選項 - 80 -
3.7 默認審計 - 81 -
3.7.1 Enterprise Manager 審計頁 - 82 -
3.7.2 使用和維護審計信息 - 83 -
3.7.3 基於值的審計 - 84 -
3.8 細粒度審計 - 86 -
3.8.1 FGA 策略 - 87 -
3.8.2 審計的 DML 語句: - 89 -
3.8.3 FGA 準則 - 90 -
3.9 SYSDBA審計 - 91 -
3.10 維護審計線索 - 92 -
3.11 Oracle Audit Vault - 93 -
3.12 麥苗擴展 - 94 -
3.12.1.1 什麼是審計(Audit)? - 94 -
3.12.1.2 遷移SYS.AUD$表到其它表空間 - 95 -
3.12.1.3 審計如何分類 - 97 -
3.12.1.4 審計中BY ACCESS和BY SESSION的區別是什麼? - 97 -
3.12.1.5 如何對SYSDBA和SYSOPER進行審計? - 97 -
3.12.1.6 什麼是細粒度審計(精細化審計)? - 98 -
3.12.1.7 如何禁用或刪除某個用戶下的所有細粒度審計? - 100 -
3.12.1.8 FGA審計和標準審計有什麼區別? - 100 -
3.13 小測驗 - 101 -
3.14 小結 - 101 -
第4章 數據庫維護(AWR、ASH、ADDM) - 102 -
4.1 數據庫維護 - 103 -
4.2 查看預警歷史記錄 - 104 -
4.2.1 術語 - 105 -
4.3 Oracle 優化程序:概覽 - 106 -
4.4 統計信息 - 107 -
4.4.1 優化程序統計信息 - 107 -
4.4.2 使用"管理優化程序統計信息"頁 - 108 -
4.4.3 手動蒐集優化程序統計信息 - 109 -
4.4.4 用於蒐集統計信息的首選項 - 111 -
4.4.5 麥苗擴展 - 112 -
4.4.5.1 統計信息的簡介和分類 - 112 -
4.4.5.2 索引統計信息 - 115 -
4.4.5.3 列的統計信息 - 115 -
4.4.5.4 系統統計信息 - 118 -
4.4.5.5 內部對象統計信息 - 120 -
4.4.5.6 自動收集統計信息 - 120 -
一、 統計信息何時變爲陳舊狀態(10%的含義)? - 122 -
二、 修改自動收集統計信息的時間 - 123 -
三、 DBA_TAB_MODIFICATIONS - 125 -
4.4.5.7 怎樣收集表的統計信息?怎樣收集分區表的統計信息? - 126 -
4.4.5.8 什麼是動態採樣(Dynamic Sampling)? - 126 -
4.4.5.9 如何鎖住統計信息? - 130 -
4.4.5.10 什麼是待定的統計信息(Pending Statistic)? - 132 -
4.4.5.11 什麼是直方圖(Histogram)? - 137 -
4.4.5.12 什麼是多列統計信息(Extended Statistics)? - 151 -
4.4.5.13 基表COL_USAGE$的作用是什麼? - 160 -
4.4.5.14 新建索引後統計信息是否自動收集? - 160 -
4.4.5.15 什麼是基數反饋(Cardinality Feedback)? - 160 -
4.4.5.16 如何查詢表和索引的歷史統計信息 - 165 -
4.4.5.17 Oracle如何併發地收集統計信息? - 167 -
4.4.5.18 當收集表的統計信息時應該注意哪些問題? - 168 -
4.4.5.19 什麼是基數(Cardinality)和可選擇率(Selectivity)? - 170 -
4.4.5.20 使用SPLIT來拆分某個分區的時候,其拆分出來的新分區的統計信息行數是多少? - 177 -
4.4.5.21 當自動收集任務運行時,哪些對象會被收集? - 178 -
4.4.5.22 分區表統計信息的更新機制是怎樣的? - 178 -
4.4.5.23 如何查詢表的DML操作數據變化量? - 179 -
4.4.5.24 對錶執行TRUNCATE操作會將表的統計信息也清除掉嗎? - 181 -
4.5 自動工作量資料檔案庫 (AWR) - 182 -
4.5.1 AWR 基礎結構 - 183 -
4.5.2 AWR 基線 - 184 -
4.5.3 Enterprise Manager 和 AWR - 185 -
4.5.4 管理 AWR - 186 -
4.5.5 統計級別 - 187 -
4.5.6 麥苗擴展 - 188 -
4.5.6.1 什麼是AWR? - 188 -
4.5.6.2 如何獲取AWR報告? - 189 -
一、 定時生成AWR報告 - 190 -
4.5.6.3 AWR報告中主要關注哪些方面內容? - 194 -
4.5.6.4 如何在AWR中查看每秒執行事務的個數? - 199 -
4.6 自動數據庫診斷監視器 (ADDM) - 200 -
4.6.1 ADDM 查找結果 - 202 -
4.6.2 ADDM 建議 - 203 -
4.6.3 麥苗擴展 - 204 -
4.6.3.1 什麼是ADDM? - 204 -
4.6.3.2 如何獲取ADDM報告? - 205 -
4.7 ASH - 206 -
4.7.1 什麼是ASH? - 206 -
4.7.2 如何獲取ASH報告? - 207 -
4.7.3 如何查看過去某一段時間數據庫系統的會話是否有問題? - 208 -
4.8 ASH、AWR、ADDM、AWRDDRPT、AWRSQRPT的比對 - 210 -
4.9 指導框架 - 212 -
4.9.1 Enterprise Manager 和指導 - 214 -
4.9.2 DBMS_ADVISOR程序包 - 215 -
4.10 小測驗 - 215 -
4.11 自動維護任務 - 216 -
4.11.1 自動維護任務 - 216 -
4.11.2 自動維護任務配置 - 218 -
4.12 服務器生成的預警 - 219 -
4.12.1 設置閾值 - 220 -
4.12.2 創建和測試預警 - 221 -
4.12.3 預警通知 - 222 -
4.12.4 對預警作出響應 - 224 -
4.12.5 預警類型和清空預警 - 225 -
4.13 性能監視 - 226 -
4.13.1 Enterprise Manager 的性能頁 - 227 -
4.13.2 細化到特定的等待類別 - 228 -
4.13.3 性能頁:吞吐量 - 229 -
4.13.4 性能監視:頂級會話 - 230 -
4.13.5 性能監視:頂級服務 - 231 -
4.14 動態性能統計信息 - 232 -
4.15 故障排除和優化視圖 - 233 -
4.16 無效和不可用對象 - 234 -
4.17 小測驗 - 235 -
4.18 小結 - 236 -
第5章 JOB - 237 -
5.1 DBMS_JOB - 237 -
5.1.1 dbms_job package 用法介紹 - 241 -
5.1.1.1 DBMS_JOB包權限 - 242 -
5.1.1.2 DBMS_JOB後臺進程 - 242 -
5.1.1.3 broken - 243 -
5.1.1.4 change - 244 -
5.1.1.5 interval - 244 -
5.1.1.6 isubmit - 244 -
5.1.1.7 next_date - 245 -
5.1.1.8 remove - 246 -
一、 殺job - 246 -
二、 刪除其它用戶下的job用 sys.dbms_ijob.remove() - 246 -
5.1.1.9 run - 251 -
5.1.1.10 submit - 252 -
5.1.1.11 user_export - 254 -
5.1.1.12 what - 254 -
一、 例子 - 255 -
5.1.2 RAC中指定dbms_job運行在指定實例 - 257 -
5.1.3 數據字典 - 259 -
5.1.4 OCP課堂 - 261 -
5.2 DBMS_SCHEDULER - 263 -
5.2.1 DBMS_JOB和DBMS_SCHEDULER之間的區別 - 264 -
5.2.2 各個組件(components) - 264 -
5.2.2.1 作業(job): - 264 -
5.2.2.2 時間表(schedule):--默認非禁用 - 264 -
5.2.2.3 程序(program): - 266 -
5.2.2.4 作業類(job_class): - 266 -
一、 管理JobClasses - 270 -
5.2.2.5 窗口(window): - 270 -
5.2.2.6 窗口組(window_group): - 272 -
5.2.3 參數設置 - 274 -
5.2.4 管理job - 278 -
5.2.4.1 啓用Jobs - 278 -
5.2.4.2 禁用Jobs - 279 -
5.2.4.3 修改Jobs - 280 -
5.2.4.4 執行Jobs - 282 -
一、 dbms_scheduler.run_job報錯 - 284 -
5.2.4.5 停止Jobs - 285 -
5.2.4.6 刪除Jobs - 286 -
一、 批量刪除job - 287 -
5.2.4.7 指定job的執行頻率 - 288 -
5.2.5 創建job - 290 -
5.2.5.1 需要的權限 - 290 -
5.2.5.2 例子 - 291 -
5.2.5.3 通過dbms_scheduler去執行shell腳本 - 292 -
5.2.5.4 例子一 --- 不帶參數 - 293 -
5.2.5.5 例子二 --- 帶參數 - 295 -
5.2.5.6 含有參數 - 302 -
5.2.5.7 時間段內的job - 304 -
5.2.5.8 指定時間的一次性job - 305 -
5.2.5.9 批量創建job - 305 -
一、 創建job主進程 - 305 -
二、 創建job子進程 - 310 -
5.2.6 判斷job是否正在運行 - 312 -
5.2.7 數據字典 - 312 -
5.2.8 Lightweight Jobs - 314 -
5.2.8.1 Persistent Lightweight Jobs - 320 -
5.2.9 OCP課堂 - 321 -
5.3 PL/SQL工具創建和管理job - 323 -
5.3.1 DBMS_JOB - 323 -
5.3.2 DBMS_SCHEDULER - 325 -
5.4 其它實用內容 - 325 -
5.4.1 RAC中如何指定JOB的運行實例? - 325 -
5.4.2 如何判斷SCHEDULER JOB是否正在運行? - 328 -
5.4.3 如何查詢SCHEDULER JOB的運行日誌? - 329 -
5.4.4 通過DBMS_SCHEDULER如何調用SHELL腳本? - 330 -
5.4.5 如何批量刪除JOB? - 330 -
5.4.6 已通知停止作業, 但是無法立即停止 - 331 -
5.5 OCP - 332 -
第6章 分區 - 333 -
6.1 分區表簡介 - 334 -
6.2 分區表的一些限制條件 - 334 -
6.3 何時考慮分區? - 334 -
6.4 分區表有什麼優點? - 334 -
6.5 有哪些類型的分區?如何選擇用哪種類型的分區表? - 335 -
6.5.1 RANGE(範圍)分區 - 335 -
6.5.2 HASH(哈希)分區 - 336 -
6.5.3 列表分區 - 338 -
6.5.4 複合分區 - 339 -
6.5.4.1 分區模板的應用 - 340 -
一、 分區模板數據字典 - 341 -
6.5.5 Interval分區 - 341 -
6.5.5.1 以月爲間隔 - 342 -
6.5.5.2 以天爲間隔 - 346 -
6.5.5.3 總結 - 350 -
6.5.5.4 interval分區重命名 - 353 -
一、 注意 - 357 -
6.5.6 System_partitioning - 357 -
6.5.6.1 Restrictions on System Partitioning - 358 -
6.5.6.2 Advantages of System Partitioned Tables - 359 -
6.5.6.3 Supporting Operations with System-Partitioned Tables - 361 -
6.6 分區表的維護 - 363 -
6.6.1 添加分區(add partition) - 364 -
6.6.2 收縮表分區(coalesce partitions) - 366 -
6.6.3 刪除分區和刪除子分區(drop partition) - 366 -
6.6.4 添加子分區 - 367 -
6.6.5 截斷表分區(Truncate Partition)--截斷一個分區表中的一個分區的數據 - 367 -
6.6.5.1 截斷分區表的子分區 - 368 -
6.6.5.2 截斷帶有約束的分區表 - 368 -
6.6.5.3 注意事項 - 368 -
6.6.6 移動表分區(Move Partition) - 369 -
6.6.6.1 將一個表的分區從一個表空間移動到另一個表空間 - 370 -
6.6.6.2 壓縮表Move--compress - 370 -
6.6.7 合併分區(Merge Partitions) - 371 -
6.6.8 重命名某一個分區(Rename Partition) - 374 -
6.6.9 交換表分區(Exchange Partitions) - 374 -
6.6.10 修改 list 表分區 - 378 -
6.6.10.1 修改 list 表分區--Add Values - 378 -
6.6.10.2 修改 list 表分區--Drop Values - 379 -
6.6.11 拆分表分區(Split Partition)--分區切割 - 380 -
6.6.12 修改分區表屬性 - 382 -
6.6.12.1 修改表分區默認屬性(Modify Default Attributes) - 382 -
6.6.12.2 修改表分區當前屬性(Modify Partition) - 382 -
6.6.12.3 修改分區表的logging屬性 - 383 -
6.6.12.4 並行度 - 383 -
6.6.13 修改表子分區模板(Set Subpartition Template) - 383 -
6.6.14 其它 - 385 -
6.7 分區表的查詢優化 - 392 -
6.8 分區表常用數據字典視圖有哪些? - 394 -
6.8.1 Oracle之INTERVAL分區的STORE IN屬性存儲在哪張表中? - 401 -
6.8.2 如何查詢某個分區是否是INTERVAL分區表? - 402 -
6.9 分區表的壓縮 - 402 -
6.9.1 分區表壓縮 - 402 -
6.9.2 含有子分區的分區表壓縮 - 403 -
6.9.3 分區表哪些分區被壓縮了 - 403 -
6.9.4 總結 - 404 -
6.9.5 另一種辦法:先置於compress狀態後move - 404 -
6.9.6 解壓縮 - 405 -
6.10 分區表單個分區分析(分區表收集統計信息) - 405 -
6.11 普通錶轉換爲分區表有哪些辦法? - 405 -
6.12 分區表查詢 - 410 -
6.12.1 單分區查詢 - 410 -
6.12.2 跨分區查詢 - 411 -
6.13 分區表中lob類型的字段 - 412 -
6.14 分區表性能注意事項 - 412 -
6.15 索引失效的情況 - 420 -
6.16 OCP講課 - 421 -
第7章 管理補丁程序 - 422 -
7.1 應用補丁程序版本 - 424 -
7.2 使用補丁程序指導 - 425 -
7.3 使用補丁程序嚮導 - 426 -
7.4 應用補丁程序 - 427 -
7.5 存放補丁程序 - 428 -
7.6 聯機打補丁:概覽 - 429 -
7.7 安裝聯機補丁程序 - 429 -
7.8 聯機打補丁的優點 - 431 -
7.8.1 常規打補丁和聯機打補丁 - 431 -
7.9 聯機打補丁注意事項 - 432 -
7.10 麥苗擴展 - 433 -
7.10.1 PSU升級的過程 - 434 -
7.10.2 PSU(Patch Set Update)、CPU(Critical Patch Update)、BP(Bundle Patch)等概念 - 434 -
7.10.3 如何查找最新的PSU? - 435 -
7.10.4 如何確認當前數據庫已經安裝了什麼PSU? - 435 -
7.10.5 如何安裝PSU? - 436 -
7.10.6 Upgrade與Update - 437 -
7.10.7 注意問題 - 437 -
7.10.8 什麼是Metalink或MOS? - 437 -
7.10.9 11.2.0.3.0升級到11.2.0.3.1 - 438 -
7.10.10 one-off patch - 439 -
7.10.11 一道OCM題 - 441 -
7.11 小測驗 - 442 -
7.12 小結 - 442 -
第8章 使用技術支持(學員自行閱讀) - 443 -
8.1 課程目標 - 443 -
8.2 使用支持工作臺 - 443 -
8.3 在 Oracle Enterprise Manager 中查看嚴重錯誤預警 - 445 -
8.4 查看問題詳細資料 - 446 -
8.4.1 查看意外事件詳細資料:轉儲文件 - 447 -
8.4.2 查看意外事件詳細資料:檢查器查找結果 - 448 -
8.5 創建服務請求 - 449 -
8.6 將診斷數據打包並上載到 Oracle 技術支持 - 450 -
8.7 跟蹤服務請求並實施修復 - 451 -
8.8 關閉意外事件和問題 - 453 -
8.9 意外事件打包配置 - 454 -
8.10 Enterprise Manager 針對 ASM 的支持工作臺 - 456 -
8.11 使用 Oracle 技術支持 - 457 -
8.12 My Oracle Support 集成 - 458 -
8.12.1 使用 My Oracle Support - 459 -
8.13 調查問題 - 461 -
8.14 記錄服務請求 - 463 -
8.15 小結 - 464 -
-
實驗課
實驗目錄 - 11 -
第1章 數據泵之NETWORK_LINK - 11 -
1.1 博客地址 - 11 -
1.2 環境介紹 - 12 -
1.3 imp和exp簡介 - 13 -
1.4 expdp不使用network_link - 15 -
1.5 expdp使用network_link - 18 -
1.5.1 目標數據庫創建dblink - 18 -
1.5.2 client端或目標數據庫執行 - 19 -
1.5.3 總結 - 21 -
1.6 impdp使用network_link - 21 -
1.6.1 目標數據庫創建dblink - 21 -
1.6.2 client或目標端執行 - 22 -
1.6.3 總結 - 23 -
1.7 實驗命令 - 23 -
第2章 Duplicating an Active Database(duplicate複製數據庫) - 23 -
2.1 博客地址 - 23 -
1.1 duplicate體系結構 - 24 -
1.2 本次實驗簡介 - 25 -
1.3 本次實驗原理 - 26 -
1.4 環境及搭建要求 - 26 -
1.4.1 對輔助數據庫的要求 - 27 -
1.5 正式開始 - 28 -
1.5.1 duplicate database 設置 - 28 -
1.5.1.1 創建pfile 參數文件 - 28 -
1.5.1.2 創建密碼文件 - 28 -
1.5.1.3 創建和source database的數據文件相關的目錄結構 - 29 -
1.5.1.4 啓動Auxiliary 到nomout 狀態 - 29 -
1.5.2 在Target 和Auxiliary 都配置Oracle Net(Listener.ora and tnsnames.ora) - 30 -
1.5.2.1 測試網絡是否配置好 - 33 -
1.5.3 開始RMAN duplicate from active database - 35 -
1.5.4 drop database - 41 -
2.2 OCP講課(duplicate ACTIVE + ASM-->FS) - 42 -
1.5.5 duplicate database設置 - 42 -
1.5.5.1 創建pfile 參數文件 - 42 -
1.5.5.2 創建密碼文件 - 43 -
1.5.5.3 創建和source database的數據文件相關的目錄結構 - 43 -
1.5.5.4 啓動Auxiliary到nomout狀態 - 43 -
1.5.6 在Target和Auxiliary都配置Oracle Net(Listener.ora和tnsnames.ora) - 43 -
1.5.6.1 測試網絡是否配置好 - 45 -
2.2.1 準備執行的RUN塊 - 45 -
1.5.7 開始RMAN duplicate from active database - 46 -
2.2.2 測試一下dbid和dbname - 46 -
第3章 Duplicating a Database Without Recovery Catalog or Target Connection - 48 -
1.1 本次實驗簡介 - 48 -
1.2 環境及搭建要求 - 48 -
1.2.1 對輔助數據庫的要求 - 48 -
1.3 正式開始 - 50 -
1.3.1 前期準備 - 50 -
1.3.1.1 建表 - 50 -
1.3.1.2 數據庫歸檔模式 - 50 -
1.3.1.3 備份數據庫 - 51 -
1.3.1.4 將備份內容拷貝到destination host - 55 -
1.3.1.5 創建pfile 參數文件 - 56 -
1.3.1.6 創建和source database的數據文件相關的目錄結構 - 57 -
1.3.1.7 創建密碼文件 - 58 -
1.3.2 實施數據庫的複製 - 58 -
1.3.2.1 啓動Auxiliary 到nomout 狀態 - 58 -
1.3.2.2 連接到auxiliary instance並複製數據庫 - 59 -
1.3.2.3 可能的報錯 - 65 -
一、 fra滿了 - 65 -
二、 備份位置 - 66 -
1.3.2.4 驗證 - 66 -
1.3.3 drop database - 67 -
第4章 Duplicating a Database Without Recovery Catalog or Target Connection - 68 -
4.1 本次實驗簡介 - 68 -
4.2 本次實驗原理圖 - 69 -
4.3 環境及搭建要求 - 69 -
4.3.1 source database環境 - 69 -
4.3.2 對輔助數據庫的要求 - 70 -
4.4 正式開始 - 71 -
4.4.1 前期準備 - 71 -
4.4.1.1 建表 - 71 -
4.4.1.2 數據庫歸檔模式 - 73 -
4.4.1.3 備份數據庫 - 74 -
4.4.1.4 將備份內容拷貝到destination host - 77 -
4.4.1.5 創建pfile 參數文件 - 77 -
4.4.1.6 創建和source database的數據文件相關的目錄結構 - 78 -
4.4.1.7 創建密碼文件 - 80 -
4.4.2 實施數據庫的複製 - 81 -
4.4.2.1 啓動Auxiliary 到nomout 狀態 - 81 -
4.4.2.2 連接到auxiliary instance並複製數據庫 - 83 -
一、 告警日誌 - 93 -
4.4.2.3 可能的報錯 - 119 -
二、 fra滿了 - 119 -
三、 備份位置 - 120 -
1.1.1.2 驗證 - 121 -
4.4.3 drop database - 122 -
第5章 TSPITR(表空間基於時間點恢復) - 124 -
5.1 博客地址 - 124 -
5.2 BLOG文檔結構圖 - 125 -
5.3 前言部分 - 125 -
5.3.1 導讀 - 125 -
5.3.2 實驗環境介紹 - 126 -
5.3.3 本文簡介 - 126 -
5.4 TSPITR的相關知識點歸納 - 127 -
5.4.1 TSPITR簡介 - 127 -
5.4.2 何時使用TSPITR - 127 -
5.5 實驗部分 - 128 -
5.5.1 源庫做備份操作 - 128 -
5.5.2 建立測試表並做truncate誤操作 - 131 -
5.5.3 採用logminer找回誤刪除的時間點 - 133 -
5.5.4 執行TSPITR之前的檢查 - 133 -
5.5.4.1 檢查是否自包含 - 133 -
5.5.4.2 檢查哪些對象執行TSPITR後將被刪除 - 134 -
5.5.5 執行TSPITR - 135 -
5.5.6 online表空間並且導入丟失的對象 - 140 -
5.6 與TSPITR有關的OCP試題部分 - 142 -
5.7 總結 - 146 -
5.8 實驗腳本 - 149 -
5.9 RMAN系列參考文章 - 151 -
第6章 直接複製數據文件實現linux平臺數據庫複製到windows平臺數據庫 - 152 -
6.1 平臺環境概述 - 152 -
6.2 查看字節序 - 152 -
6.3 linux 下操作 - 154 -
6.3.1 linux下生成pfile和control file - 154 -
6.3.2 把linux上/u01/app/oracle/oradata/rman下的數據文件、重做日誌文件、歸檔文件,還有剛纔創建的pfile和控制文件及listener.ora、tnsnames.ora文件複製到windows平臺上 - 155 -
6.4 windows 下操作 - 155 -
6.4.1 創建一個rman的實例,注意SID要與linux服務器中的相同 - 155 -
6.4.2 修改初始化參數文件,並創建相關目錄 - 156 -
6.4.3 創建spfile並啓動到nomount狀態 - 157 -
6.4.4 將相應的數據文件拷貝到相關的目錄然後重建控制文件(也別忘了更改文件路徑) - 158 -
6.4.5 打開數據庫並添加臨時表空間數據文件 - 160 -
6.4.6 由於是64位到32位操作系統,所以需要編譯一下內核代碼 - 160 -
6.4.7 其它配置工作 - 163 -
6.4.8 測試OK - 163 -
6.4.9 刪除數據庫做其它測試 - 164 -
第7章 利用rman來實現linux平臺數據庫複製到windows平臺數據庫 - 165 -
7.1 平臺環境概述 - 165 -
7.2 本次實驗簡介 - 165 -
7.3 本次實驗原理圖 - 165 -
7.4 查看字節序 - 165 -
7.5 source database 歸檔模式 - 167 -
7.6 linux 下操作 - 167 -
7.6.1 建表 - 167 -
7.6.2 rman備份 - 168 -
7.6.3 linux下生成pfile - 173 -
7.6.4 把linux上/home/oracle/oracle_bk/rman/下的所有備份文件複製到windows平臺上 - 174 -
7.7 windows 下操作 - 174 -
7.7.1 創建一個rman的實例,注意SID要與linux服務器中的相同 - 174 -
7.7.2 修改初始化參數文件,並創建相關目錄 - 175 -
7.7.3 創建spfile並啓動到nomount狀態 - 176 -
7.7.4 rman 進行數據文件的恢復 - 177 -
7.7.5 由於是64位到32位操作系統,所以需要編譯一下內核代碼 - 185 -
7.7.6 其它配置工作 - 188 -
7.7.7 測試OK - 188 -
7.7.8 刪除數據庫做其它測試 - 189 -
第8章 熱備下的測試庫搭建 - 190 -
8.1 基礎知識 - 190 -
8.2 本次實驗環境簡介 - 190 -
8.3 源庫生成熱備份文件 - 190 -
8.4 傳輸備份文件到target庫 - 194 -
8.4.1 傳輸數據文件 - 194 -
8.4.2 傳輸歸檔文件 - 194 -
8.5 修改target庫的pfile文件並生成pfile文件中的路徑 - 195 -
8.6 啓動target數據庫到nomount狀態 - 196 -
8.7 開始創建控制文件 - 196 -
8.7.1 第一步,首先移動相應的數據文件到相應的控制文件記錄的目錄中 - 197 -
8.7.2 第二步,重新創建控制文件,控制文件創建完成後自動mount - 197 -
8.8 用rman註冊一下 - 198 -
8.9 recover到指定的scn - 201 -
8.10 重建臨時表空間並配置密碼文件以及 TNS 和密碼文件等 - 201 -
第9章 傳輸表空間(TTS)一例(linux asm -> win 文件系統) - 202 -
9.1 場景描述 - 202 -
9.2 環境準備 - 202 -
9.2.1 在源庫上創建3個用戶應用的表空間 - 202 -
9.2.2 在相應的表空間創建表和索引 - 203 -
9.3 判斷平臺支持並確定字節序 - 204 -
9.3.1 在源平臺查詢 - 204 -
9.3.2 在目標平臺查詢 - 204 -
9.4 選擇自包含的表空間集(目前要傳輸app1tbs和idxtbs這2個表空間) - 205 -
9.4.1 進行檢查 - 205 -
9.4.2 查看檢查結果 - 205 -
9.5 產生可傳輸表空間集 - 206 -
9.5.1 使自包含的表空間集中的所有表空間變爲只讀狀態 - 206 -
9.5.2 使用數據泵導出工具,導出要傳輸的各個表空間的元數據 - 206 -
9.5.2.1 確定導出目錄 - 206 -
9.5.2.2 開始導出 - 207 -
9.5.3 生成數據文件 - 208 -
9.6 還原源庫中的表空間爲讀/寫模式 - 209 -
9.7 傳輸文件 - 210 -
9.7.1 傳輸轉儲元文件到目標庫 - 210 -
9.7.2 查看目標庫數據文件位置和目錄 - 210 -
9.7.3 拷貝文件到目標庫相應位置 - 210 -
9.8 開始導入 - 211 -
9.8.1 生成parfile文件 - 211 -
9.8.2 開始導入 - 211 -
9.8.3 查看目標平臺信息 - 212 -
9.9 修改表空間對應的文件名 - 214 -
9.10 結束語 - 216 -
第10章 傳輸表空間(TTS)一例(win文件系統 -> linux asm ) - 216 -
10.1 場景描述 - 216 -
10.2 環境準備 - 217 -
10.2.1 在源庫上創建3個用戶應用的表空間 - 217 -
10.2.2 在相應的表空間創建表和索引 - 218 -
10.3 判斷平臺支持並確定字節序 - 219 -
10.3.1 在源平臺查詢 - 219 -
10.3.2 在目標平臺查詢 - 219 -
10.4 選擇自包含的表空間集(目前要傳輸app1tbs和idxtbs這2個表空間) - 220 -
10.4.1 進行檢查 - 220 -
10.4.2 查看檢查結果 - 220 -
10.5 產生可傳輸表空間集 - 221 -
10.5.1 使自包含的表空間集中的所有表空間變爲只讀狀態 - 221 -
10.5.2 使用數據泵導出工具,導出要傳輸的各個表空間的元數據 - 221 -
10.5.2.1 確定導出目錄 - 221 -
10.5.2.2 開始導出 - 222 -
10.5.3 將數據文件拷貝到dpdump目錄下 - 222 -
10.6 還原源庫中的表空間爲讀/寫模式 - 223 -
10.7 傳輸文件 - 223 -
10.7.1 利用ftp工具傳輸轉儲元文件到目標庫 - 223 -
10.7.2 查看目標庫數據文件位置和導入目錄 - 223 -
10.7.3 拷貝文件到目標庫相應位置並修改文件權限 - 224 -
10.8 開始導入 - 225 -
10.8.1 生成parfile文件 - 225 -
10.8.2 開始導入 - 225 -
10.8.3 查看目標平臺信息 - 226 -
10.9 修改表空間對應的文件名 - 228 -
第11章 傳輸表空間(TTS)一例(AIX asm -> linux asm ) - 232 -
11.1 場景描述 - 232 -
11.2 環境準備 - 234 -
11.2.1 在源庫上創建3個用戶應用的表空間,並在相應的表空間創建表和索引 - 234 -
11.3 判斷平臺支持並確定字節序 - 236 -
11.4 選擇自包含的表空間集 - 236 -
11.4.1 進行檢查 - 236 -
11.5 產生可傳輸表空間集 - 237 -
11.5.1 使自包含的表空間集中的所有表空間變爲只讀狀態 - 237 -
11.5.2 使用數據泵導出工具,導出要傳輸的各個表空間的元數據 - 238 -
11.5.2.1 確定導出目錄 - 238 -
11.5.2.2 開始導出 - 239 -
一、 在source端轉換(轉換字節序可以在sorce端進行也可以在target端進行,我們選擇在target端,這個步驟不執行) - 240 -
11.6 還原源庫中的表空間爲讀/寫模式 - 242 -
11.7 傳輸文件 - 243 -
11.7.1 查看目標庫數據文件位置和導入目錄 - 243 -
11.7.2 利用ftp工具傳輸轉儲元文件到目標庫DATA_PUMP_DIR目錄並修改權限 - 244 -
11.8 開始導入 - 245 -
11.8.1 轉換字節序(轉換字節序可以在sorce端進行也可以在target端進行,我們選擇在target端執行) - 245 -
11.8.2 創建source庫的2個用戶並賦權限 - 246 -
11.8.3 開始導入 - 247 -
11.8.4 查看目標平臺信息 - 247 -
第12章 傳輸表空間(TTS)一例(linux asm -> AIX asm) - 250 -
12.1 場景描述 - 250 -
12.2 環境準備 - 252 -
12.2.1 在源庫上創建3個用戶應用的表空間 - 252 -
12.2.2 在相應的表空間創建表和索引 - 253 -
12.3 判斷平臺支持並確定字節序 - 254 -
12.3.1 在源平臺查詢 - 254 -
12.3.2 在目標平臺查詢 - 254 -
12.4 選擇自包含的表空間集 - 255 -
12.4.1 進行檢查 - 255 -
12.4.2 查看檢查結果 - 255 -
12.5 產生可傳輸表空間集 - 256 -
12.5.1 使自包含的表空間集中的所有表空間變爲只讀狀態 - 256 -
12.5.2 使用數據泵導出工具,導出要傳輸的各個表空間的元數據 - 256 -
12.5.2.1 確定導出目錄 - 256 -
12.5.2.2 開始導出 - 257 -
12.5.3 生成數據文件 - 258 -
12.5.3.1 在source端轉換字節序(也可以在target端轉換字節序,我們選擇在target端轉換) - 260 -
12.6 還原源庫中的表空間爲讀/寫模式 - 263 -
12.7 傳輸文件 - 263 -
12.7.1 傳輸轉儲元文件到目標庫 - 263 -
12.7.2 查看目標庫數據文件位置和目錄 - 264 -
12.7.3 拷貝文件到目標庫相應位置並修改權限 - 264 -
12.8 target端轉換字節序 - 265 -
12.9 開始導入 - 266 -
12.9.1 創建source庫的2個用戶並賦權限 - 266 -
12.9.2 開始導入 - 267 -
12.9.3 查看目標平臺信息 - 268 -
12.10 查看導入後結果 - 270 -
第13章 傳輸表空間(TTS)一例(linux asm -> AIX asm)--基於RMAN備份 - 271 -
13.1 場景描述 - 271 -
13.2 環境準備 - 272 -
13.2.1 在源庫上創建3個用戶應用的表空間 - 272 -
13.2.2 在相應的表空間創建表和索引 - 274 -
13.3 判斷平臺支持並確定字節序 - 274 -
13.3.1 在源平臺查詢 - 274 -
13.3.2 在目標平臺查詢 - 275 -
13.4 選擇自包含的表空間集 - 276 -
13.4.1 進行檢查 - 276 -
13.4.2 查看檢查結果 - 276 -
13.5 產生可傳輸表空間集 - 277 -
13.5.1 rman全備份 - 277 -
13.5.2 生成結果集 - 280 -
13.6 傳輸文件 - 286 -
13.6.1 查看目標庫數據文件位置和目錄 - 286 -
13.6.2 拷貝文件到目標庫相應位置並修改權限 - 287 -
13.7 target端轉換字節序 - 287 -
13.8 target端開始導入數據 - 289 -
13.8.1 創建source庫的2個用戶並賦權限 - 289 -
13.8.2 開始導入 - 290 -
13.8.3 查看目標平臺信息 - 290 -
13.9 查看導入後結果 - 291 -
第14章 傳輸表空間(TTS)一例(AIX asm -> linux asm )--基於RMAN - 293 -
14.1 場景描述 - 293 -
14.2 環境準備 - 294 -
14.2.1 在源庫上創建3個用戶應用的表空間,並在相應的表空間創建表和索引 - 294 -
14.3 判斷平臺支持並確定字節序 - 296 -
14.4 選擇自包含的表空間集 - 297 -
14.4.1 進行檢查 - 297 -
14.5 產生可傳輸表空間集 - 298 -
14.5.1 rman備份source庫 - 298 -
14.5.2 transport tablespace 生成文件 - 300 -
14.6 傳輸文件到target端 - 305 -
14.6.1 查看目標庫數據文件位置和導入目錄 - 305 -
14.6.2 拷貝文件到目標庫相應位置並修改文件權限 - 306 -
14.7 target端轉換字節序 - 307 -
14.8 開始導入 - 307 -
14.8.1 創建source庫的2個用戶並賦權限 - 308 -
14.8.2 開始導入 - 308 -
14.8.3 查看目標平臺信息 - 309 -
第15章 AIX平臺數據庫遷移到Linux--基於RMAN(真實環境) - 312 -
15.1 場景描述 - 312 -
15.2 源庫信息收集 - 314 -
15.2.1 先跑一下健康檢查(可選) - 314 -
15.2.2 表空間及數據文件情況 - 315 -
15.2.2.1 表空間大小 - 315 -
15.2.2.2 需要傳輸的數據文件大小 - 318 -
15.2.3 用戶情況(密碼、默認表空間、角色和權限,需遷移的schema對象大小、個數、列表) - 318 -
15.2.3.1 需要遷移的用戶 - 318 -
15.2.3.2 用戶權限 - 319 -
15.2.3.3 用戶表大小 - 321 -
15.2.3.4 對象個數 - 322 -
15.2.3.5 對象詳細信息 - 322 -
15.2.4 無效對象情況 - 326 -
15.2.5 索引情況 - 327 -
15.2.6 確定是否有業務數據、腳本在例如sys用戶等的默認用戶下 - 327 -
15.3 判斷平臺支持並確定字節序 - 327 -
15.4 判斷表空間集是否自包含 - 328 -
15.5 產生可傳輸表空間集 - 329 -
15.5.1 rman備份source庫 - 329 -
15.5.2 transport tablespace 生成文件 - 331 -
15.6 傳輸文件到target端 - 339 -
15.6.1 dbca創建target庫 - 339 -
15.6.2 查看目標庫數據文件位置和導入目錄 - 340 -
15.6.3 利用ftp工具傳輸轉儲元文件到目標庫 - 341 -
15.6.4 拷貝文件到目標庫相應位置並修改文件權限 - 341 -
15.7 target端轉換字節序 - 342 -
15.8 開始導入 - 344 -
15.8.1 創建source庫的需要遷移的3個用戶並賦權限(前邊的腳本已經生成,直接拿過來執行) - 344 -
15.8.2 開始導入 - 345 -
15.8.2.1 報錯:source和target的compatible參數不同引起ora-00721錯誤 - 346 -
15.8.3 查看目標平臺信息 - 347 -
15.9 導入完成後的結果校驗 - 348 -
15.9.1 校驗用戶情況(密碼、默認表空間、角色和權限,需遷移的schema對象大小、個數、列表) - 348 -
15.9.1.1 校驗用戶 - 348 -
15.9.1.2 用戶對象個數 - 349 -
15.9.1.3 對象詳細信息 - 350 -
15.9.2 無效對象情況 - 353 -
15.9.3 索引情況 - 354 -
15.10 遷移後續收尾工作 - 354 -
15.11 TTS總結 - 354 -
第16章 只存在備份片的數據庫恢復過程 - 354 -
16.1.1 原庫備份並傳輸到測試庫 - 355 -
16.1.2 測試庫編輯pfile文件 - 359 -
16.1.3 備份集中含有控制文件備份的情況下的恢復--嘗試法找回控制文件 - 359 -
16.1.3.1 方法一:採用dbms_backup_restore.restoreControlfileTo從備份片中來嘗試找回控制文件 - 360 -
一、 啓動數據庫到mount狀態 - 367 -
二、 重新註冊備份集,還原spfile,還原數據庫,不完全恢復數據庫 - 368 -
16.1.3.2 方法二:嘗試採用創建臨時庫來找回控制文件 - 374 -
一、 搭建臨時庫來註冊備份集 - 374 -
1、 修改dbname和dbid - 377 -
2、 重新註冊 - 379 -
二、 還原操作 - 381 -
1、 還原spfile - 381 -
2、 還原控制文件 - 381 -
3、 還原database - 381 -
16.1.3.3 方法三:直接通過restore命令嘗試 - 400 -
16.1.3.4 採用os系統命令strings來判斷 - 402 -
一、 判斷備份集是否含有spfile - 403 -
二、 判斷備份集中是否含有control file - 405 -
16.1.4 備份集中無控制文件情況下的數據庫恢復--重建控制文件 - 405 -
16.1.5 總結 - 418 -
-
高可用培訓
-
高可用培訓說明網絡連接
-
高可用培訓說明連接:https://mp.weixin.qq.com/s/4vf042CnOdAD8zDyjUueiw
-
高可用講課資料及視頻下載地址
- 小麥苗高可用課程講課資料下載地址:https://share.weiyun.com/5iJLFCK
- 小麥苗分享的其它資料: https://share.weiyun.com/5UZtOLs
- 永久更新地址:http://blog.itpub.net/26736162/viewspace-1624453/
-
高可用講課文檔
-
高可用第1期相關視頻說明
待補充。。。。
-
RAC
-
RAC培訓課程大綱
注:
- 1學時=1小時
- 1課時=1次課=2學時=2小時
- 培訓大綱是培訓文檔的縮減版,只列舉出了最重要的一部分內容,最終講課內容以講課文檔爲準,大家可以參考後邊的目錄部分,目錄部分是最全的部分。
課程模塊 |
培訓要點 |
學時 |
VMware Workstation虛擬機的相關知識 |
|
0.5 |
Linux的安裝(RHEL 6.5) |
|
1.5 |
Oracle軟件RAC安裝 |
|
1 |
Oracle軟件的卸載 |
|
0.1 |
創建數據庫 |
|
0.1 |
刪除數據庫的幾種方式 |
|
0.1 |
ASM |
|
2 |
Oracle Restart |
|
1 |
RAC |
|
8 |
-
RAC講課內容思維導圖
-
RAC講課文檔目錄
-
安裝部分
-
目錄 - 9 -
======第一部分 安裝類博客鏈接 - 10 -
第1章 安裝類博客鏈接 - 10 -
1.1 RAC+ASM - 10 -
1.1.1 ASM + 11gR2單實例+ RHEL6.5安裝 - 10 -
1.1.2 12cR1 RAC安裝 - 10 -
1.1.3 11gR2 RAC安裝 - 10 -
1.1.4 Windows Server 2008R2下安裝RAC - 11 -
1.1.5 AIX平臺下RAC和ASM的安裝 - 11 -
1.2 DG - 11 -
1.3 OGG - 12 -
======第二部分 搭建Oracle 11gR2基於ASM的單實例 - 13 -
第2章 RHEL 5.5的OS版本 - 13 -
2.1 安裝VMware Workstation 12 Pro - 13 -
2.1.1 校驗MD5值 - 14 -
2.2 安裝RHEL 5.5的OS版本 - 16 -
2.2.1 簡易安裝 - 16 -
2.2.2 一般安裝過程 - 21 -
2.2.2.1 開始安裝 - 36 -
2.2.2.2 建立自定義的分區結構 - 40 -
2.2.2.3 繼續 - 45 -
2.3 其它軟件安裝 - 52 -
2.3.1 安裝VMware Tools - 52 -
2.3.1.1 安裝完成後設置共享文件 - 57 -
2.3.1.2 設置桌面背景和桌面的大小 - 58 -
2.3.2 設置主機IP地址 - 59 -
2.3.3 中文環境切換成英文環境 - 60 -
2.3.4 配置本地yum源(rhel 5.5) - 60 -
2.3.5 安裝rlwrap - 61 -
2.4 對/dev/sdb進行分區 - 62 -
2.4.1 邏輯卷管理的命令 - 69 -
第3章 安裝11.2.0.3 64位單機數據庫軟件 - 70 -
3.1 安裝前的準備工作 - 70 -
3.1.1 軟件準備 - 70 -
3.1.2 檢查硬件 - 70 -
3.1.3 修改hosts文件、修改主機名 - 71 -
3.1.4 安裝軟件包檢查 - 71 -
3.1.5 內核參數--shell限制 - 73 -
3.1.5.1 /etc/security/limits.conf - 73 -
3.1.5.2 /etc/pam.d/login - 74 -
3.1.5.3 /etc/profile - 74 -
3.1.5.4 /etc/sysctl.conf - 74 -
3.1.6 關閉防火牆 - 75 -
3.1.7 關閉耗費資源的服務 - 76 -
3.1.8 禁用selinux - 76 -
3.2 新建用戶和組 - 77 -
3.2.1 配置用戶的環境變量 - 77 -
3.3 新建安裝目錄 - 78 -
3.4 將oracle使用者加入到sudo羣組中 - 78 -
3.5 準備oracle安裝文件 - 78 -
3.5.1 拷貝安裝文件 - 78 -
3.5.1.1 計算MD5值 - 81 -
3.5.2 解壓安裝文件 - 82 -
3.6 開始安裝 - 83 -
3.6.1 安裝前的檢查 - 94 -
3.6.2 執行root.sh腳本 - 97 -
3.7 擴展(靜默安裝軟件) - 98 -
第4章 創建數據庫 - 101 -
4.1 DBCA圖形創建 - 101 -
4.1.1 啓動監聽 - 112 -
4.2 DBCA靜默方式建庫(必會) - 114 -
4.2.1.1 什麼是靜默建庫? - 114 -
4.3 CREATE DATABASE手動建庫(OCM) - 116 -
4.4 刪除數據庫的幾種方式 - 117 -
4.5 在多個不同版本的數據庫情況下,如何確定實例的ORACLE_HOME地址? - 118 -
第5章 配置監聽和TNS - 118 -
5.1 靜默創建監聽 - 120 -
第6章 其它 - 120 -
6.1 讓Oracle DB、監聽和oem開機啓動(dbstart) - 120 -
6.1.1 方法1:配置Linux的service服務 - 121 -
6.1.2 方法2:配置/etc/rc.d/rc.local文件 - 123 -
6.1.3 總結 - 125 -
6.2 PLSQL Developer軟件使用和Windows 下綠色版Oracle客戶端的安裝和使用 - 125 -
6.2.1 Linux下綠色版Oracle客戶端的安裝 - 125 -
6.3 Windows下環境變量的配置 - 126 -
6.3.1 代碼頁(Code Page) - 126 -
6.3.2 環境變量的分類 - 126 -
6.3.3 配置環境變量的方法 - 126 -
6.3.3.1 批處理註冊表 - 126 -
6.3.3.2 界面配置 - 127 -
6.3.3.3 SETX命令直接配置 - 127 -
6.4 配置glogin.sql - 127 -
6.5 如何判斷Oracle是32位還是64位? - 128 -
第7章 數據庫軟件的卸載 - 131 -
第8章 安裝grid軟件 - 132 -
8.1 OS修改 - 132 -
8.1.1 編輯/etc/security/limits.conf文件,在文件尾部添加如下內容 - 132 -
8.1.2 添加grid用戶 - 132 -
8.1.3 配置grid用戶的環境變量 - 133 -
8.1.4 擴展磁盤空間 - 134 -
8.2 ASM磁盤準備(創建asm磁盤) - 134 -
8.2.1 創建ASM磁盤的方法1--Faking方式 - 134 -
8.2.2 創建ASM磁盤的方法2--直接修改/etc/sysconfig/rawdevices配置raw(rhel6之後不支持) - 136 -
8.2.3 創建ASM磁盤的方法3--Udev方式 - 139 -
一、 uuid方式 - 139 -
①、 RedHat 5 UDEV SCSI Rules配置 - 139 -
②、 RedHat 6 UDEV SCSI Rules - 140 -
2、 配置 udev 綁定的 scsi_id - 142 -
3、 創建並配置udev rules文件 - 143 -
4、 udevadm進行測試 - 144 -
5、 添加完成後,重啓 udev,不同 Linux 發行版本重啓方式不一樣。 - 144 -
6、 查看綁定的 asm,如果此時還是看不到 asm disk,請重啓操作系統後再查看。 - 144 -
二、 raw方式 - 144 -
8.2.4 創建ASM磁盤的方法4--ASMLIB方式 - 146 -
一、 系統版本號 - 146 -
二、 Oracle asmlib下載 - 146 -
三、 上傳並安裝上述的三個rpm軟件包 - 148 -
四、 配置ASM - 148 -
五、 系統添加磁盤 - 149 -
六、 grid軟件安裝完畢後配置asm_diskstring 路徑 - 150 -
七、 測試 - 152 -
8.3 安裝grid軟件 - 153 -
8.3.1 解壓軟件 - 153 -
8.3.2 、開始安裝grid軟件(圖形界面,講課) - 154 -
8.3.2.1 創建ASM磁盤組 - 158 -
8.3.2.2 執行root腳本 - 164 -
8.3.2.3 繼續安裝 - 165 -
8.3.2.4 測試ASM實例 - 166 -
8.3.2.5 繼續安裝 - 168 -
8.3.2.6 測試ASM實例 - 169 -
8.3.3 靜默安裝grid軟件(可選) - 170 -
8.3.3.1 安裝grid軟件 - 170 -
8.3.3.2 靜默創建ASM實例 - 173 -
8.3.3.3 靜默創建grid用戶的監聽 - 174 -
8.4 創建DATA和FRA的ASM磁盤組 - 176 -
8.5 創建ASM管理的數據庫 - 179 -
8.6 創建EM - 181 -
======第三部分 搭建Oracle 11gR2 RAC--使用OpenFiler來模擬存儲配置中ASM共享盤及多路徑(multipath) - 183 -
第9章 RAC 11gR2搭建 - 184 -
9.1 整體規劃部分 - 184 -
9.1.1 所需軟件介紹 - 184 -
9.1.1.1 數據庫安裝文件的MD5值校驗 - 184 -
9.1.1.2 VMware Workstation安裝 - 185 -
9.1.2 IP地址規劃 - 185 -
9.1.2.1 RAC環境 - 185 -
9.1.2.2 OpenFiler - 186 -
9.1.3 操作系統本地磁盤分區規劃 - 186 -
9.1.4 共享存儲與ASM磁盤組規劃 - 187 -
9.2 操作系統配置部分 - 187 -
9.2.1 安裝主機或虛擬機 - 187 -
9.2.2 網絡配置 - 187 -
9.2.2.1 添加虛擬網卡 - 187 -
9.2.2.2 配置IP地址 - 189 -
一、 重新配置網絡 - 192 -
二、 虛擬機上外網 - 192 -
9.2.2.3 關閉防火牆 - 193 -
9.2.2.4 禁用selinux - 193 -
9.2.2.5 修改/etc/hosts文件 - 194 -
9.2.3 修改主機名 - 195 -
9.2.4 硬件要求 - 196 -
9.2.4.1 內存 - 196 -
9.2.4.2 Swap空間 - 196 -
9.2.4.3 /tmp空間 - 196 -
9.2.4.4 Oracle安裝將佔用的磁盤空間 - 196 -
9.2.5 添加組和用戶 - 197 -
9.2.5.1 添加oracle和grid用戶 - 197 -
9.2.5.2 創建安裝目錄 - 198 -
9.2.5.3 配置grid和oracle用戶的環境變量文件 - 198 -
9.2.5.4 配置root用戶的環境變量 - 199 -
9.2.6 軟件包的檢查 - 200 -
9.2.6.1 配置本地yum源 - 201 -
9.2.6.2 安裝缺失的包 - 202 -
9.2.7 關閉不需要的服務 - 202 -
9.2.8 配置內核參數 - 203 -
9.2.8.1 操作系統版本 - 203 -
9.2.8.2 修改/etc/sysctl.conf文件 - 203 -
9.2.8.3 修改/etc/security/limits.conf文件 - 204 -
9.2.8.4 修改/etc/pam.d/login文件 - 204 -
9.2.8.5 修改/etc/profile文件 - 204 -
9.2.9 配置/dev/shm大小 - 205 -
9.2.10 關閉NTP - 205 -
9.3 配置共享存儲 - 206 -
9.3.1 添加共享磁盤 - 206 -
9.3.1.1 第一步:創建共享磁盤 - 206 -
9.3.1.2 第二步:修改配置文件 - 207 -
9.3.1.3 第三步:重新打開VMware Workstation - 208 -
9.3.2 設置共享磁盤 - 209 -
9.3.2.1 配置udev綁定的scsi_id - 209 -
9.3.2.2 創建並配置udev rules文件 - 210 -
9.4 數據庫軟件包準備 - 212 -
9.4.1 創建文件系統 - 212 -
9.4.2 上傳並解壓軟件 - 212 -
9.5 安裝前預檢查 - 213 -
9.5.1 安裝補丁包(cvuqdisk) - 213 -
9.5.2 配SSH互信,建立ssh等效性 - 214 -
9.5.2.1 方法一:普通配置 - 215 -
9.5.2.2 方法二:用sshUserSetup.sh快速創建互信(推薦方法) - 215 -
9.5.2.3 方法三:圖形化界面 - 216 -
9.5.3 cluster 硬件檢測--安裝前預檢查配置信息 - 216 -
9.6 圖形界面安裝(學員練習) - 218 -
9.6.1 安裝GRID - 218 -
9.6.1.1 OCR磁盤組 - 226 -
9.6.1.2 執行root腳本 - 236 -
9.6.1.3 繼續安裝 - 239 -
9.6.1.4 校驗 - 241 -
9.6.2 安裝database - 243 -
9.6.2.1 執行root腳本 - 253 -
9.7 靜默安裝(講課) - 254 -
9.7.1 靜默安裝grid - 254 -
9.7.1.1 新建/etc/oraInst.loc文件 - 254 -
9.7.1.2 檢查項 - 255 -
9.7.1.3 開始安裝 - 255 -
一、 root.sh腳本 - 258 -
二、 configToolAllCommands腳本 - 261 -
9.7.2 靜默安裝database - 263 -
9.7.2.1 靜默安裝DB軟件 - 263 -
9.7.3 驗證 - 266 -
9.7.3.1 驗證集羣化數據庫已開啓 - 266 -
9.7.3.2 檢查集羣的運行狀況 - 266 -
9.7.3.3 節點應用程序 - 267 -
9.7.3.4 ASM 狀態和配置 - 267 -
9.7.3.5 TNS 監聽器狀態和配置 - 267 -
9.7.3.6 節點應用程序配置 VIP、GSD、ONS、監聽器 - 268 -
9.7.3.7 SCAN 狀態和配置 - 268 -
9.7.3.8 驗證所有集羣節點間的時鐘同步 - 268 -
9.8 建立DATA和FRA磁盤組 - 269 -
9.9 dbca靜默方式建庫 - 271 -
9.10 其它擴展 - 273 -
9.10.1 sqlplus提示符設置 - 273 -
9.10.2 在AIX或Linux下,如何查看磁盤是否包含數據? - 273 -
9.10.3 如何讓crs_stat命令顯示完整 - 275 -
9.10.4 kfod命令 - 275 -
第10章 安裝OpenFiler - 277 -
10.1 OpenFiler虛擬機安裝 - 277 -
10.2 安裝OS - 286 -
10.2.1 自定義分區 - 288 -
10.2.2 網絡設置 - 296 -
10.3 SSH登錄 - 302 -
10.4 頁面登錄 - 303 -
10.5 基本配置 - 303 -
10.5.1 網卡配置 - 303 -
10.5.2 添加硬盤 - 306 -
10.6 iscsi target配置 - 308 -
10.6.1 創建邏輯卷 - 309 -
10.6.1.1 創建物理卷 - 309 -
一、 圖形界面創建物理卷 - 309 -
二、 命令行創建物理卷 - 312 -
10.6.1.2 創建卷組 - 321 -
一、 命令創建 - 322 -
10.6.1.3 創建邏輯卷 - 323 -
10.6.2 開啓iSCSI Target服務 - 325 -
10.6.3 LUN Mapping操作 - 327 -
10.6.4 Network ACL - 328 -
10.6.5 /etc/initiators.deny - 328 -
第11章 RAC中配置共享 - 329 -
11.1 RAC節點配置iSCSI - 329 -
11.1.1 iSCSI target - 329 -
11.1.2 iSCSI initiator - 331 -
11.1.2.1 安裝iSCSI initiator - 331 -
11.1.2.2 iscsiadm - 331 -
11.2 多路徑multipath - 335 -
11.2.1 RAC的2個節點上分別安裝multipath軟件 - 335 -
11.2.2 啓動multipath - 336 -
11.2.3 配置多路徑軟件/etc/multipath.conf - 337 -
11.2.4 編輯/etc/multipath.conf - 338 -
11.2.5 配置multipath設備的權限 - 341 -
11.2.6 配置udev規則 - 342 -
11.2.7 測試多路徑 - 343 -
11.2.7.1 有關多路徑其它理論知識 - 345 -
11.2.8 測試磁盤組 - 345 -
-
講課部分
目錄 - 2 -
第1章 RAC基本概念 - 5 -
1.1 ASM實例 - 5 -
1.1.1 ASM組件:ASM實例-主要進程 - 6 -
1.1.2 ASM實例初始化參數 - 7 -
1.2 數據庫實例與ASM之間的交互 - 8 -
1.3 ASM系統權限 - 9 -
1.4 啓動和停止ASM實例 - 10 -
1.4.1 使用SQL*Plus啓動和停止ASM實例 - 10 -
1.4.2 使用srvctl啓動和停止ASM實例 - 12 -
1.4.3 使用asmcmd啓動和停止ASM實例 - 12 -
1.5 ASM文件 - 13 -
1.6 管理磁盤組 - 14 -
1.6.1 創建和刪除磁盤組 - 14 -
1.6.2 其它ALTER命令 - 15 -
1.6.3 再平衡(Rebalance) - 16 -
1.6.4 ASM磁盤使用情況檢查 - 17 -
1.6.5 創建磁盤組 - 18 -
1.6.5.1 磁盤組添加故障組和成員 - 20 -
1.6.5.2 刪除磁盤組中的磁盤,故障組中的成員,磁盤組 - 20 -
1.6.5.3 調整磁盤組的容量 - 21 -
1.6.5.4 手動Rebalance - 21 -
1.6.5.5 磁盤組的加載與卸載及內部一致性檢查 - 21 -
1.6.6 磁盤組中目錄、文件的管理 - 22 -
1.6.6.1 爲磁盤組增加目錄 - 22 -
1.6.6.2 爲文件添加別名,重命名別名 - 23 -
1.6.7 掛載磁盤組 - 24 -
1.6.8 強制刪除磁盤組 - 24 -
1.7 TEMPLATE的管理 - 25 -
1.8 ASM 磁盤的相關視圖 - 26 -
1.9 ASM磁盤組兼容性 - 28 -
1.10 ASM磁盤組屬性 - 28 -
1.11 檢索ASM元數據 - 29 -
1.12 asmcmd - 30 -
1.12.1 ASMCMD文件所在的位置 - 30 -
1.12.2 啓動ASMCMD - 31 -
1.12.3 具體用法 - 32 -
1.12.4 拷貝spfle到FS - 34 -
1.13 ASM磁盤有幾種冗餘方式? - 35 -
1.14 ASMLIB是什麼?常用命令有哪些?其運行日誌路徑在哪裏? - 35 -
1.15 創建ASM磁盤的方式有哪幾種? - 37 -
1.16 與ASM相關的有哪些進程? - 37 -
1.17 如何查詢ASM磁盤及ASM磁盤組的使用情況? - 38 -
1.18 ASM文件和OS文件互相轉換有哪些方法? - 38 -
第2章 Oracle Restart - 41 -
2.1 Oracle Restart進程啓動順序 - 42 -
2.2 控制Oracle Restart - 42 -
2.3 選擇正確的SRVCTL實用程序 - 44 -
2.4 Oracle Restart配置 - 44 -
2.5 使用SRVCTL實用程序 - 45 -
2.6 獲取有關SRVCTL實用程序的幫助 - 46 -
2.7 使用SRVCTL實用程序啓動組件 - 46 -
2.8 使用SRVCTL實用程序停止組件 - 47 -
2.9 查看組件狀態 - 48 -
2.10 顯示組件的Oracle Restart配置 - 49 -
2.11 手動向Oracle Restart配置添加組件 - 49 -
2.12 小測驗 - 50 -
第3章 存儲部分 - 52 -
3.1 udev是什麼?如何配置udev? - 52 -
3.2 多路徑(multipath)是什麼?如何配置多路徑? - 53 -
第4章 RAC - 54 -
4.1 RAC有哪些優缺點? - 54 -
4.2 實例和數據庫的區別 - 55 -
4.2.1 RAC數據庫和單實例數據庫有什麼區別? - 56 -
4.3 用哪個參數可以判斷一個數據庫是否是RAC庫? - 56 -
4.4 啓動和關閉集羣的命令是什麼? - 56 -
4.5 如何將一個數據庫添加到CRS中? - 57 -
4.6 集羣(Cluster)特有的後臺進程有哪些? - 60 -
4.7 集羣有哪幾種心跳機制? - 62 -
4.8 RAC的腦裂和健忘分別指的是什麼? - 62 -
4.9 集羣的日誌體系 - 63 -
4.10 什麼是OCR、OLR和VF?如何備份及恢復OCR? - 63 -
4.10.1 OCR簡介 - 63 -
4.10.2 OCR備份恢復 - 66 -
4.10.3 OLR - 67 -
4.10.3.1 OLR備份恢復 - 67 -
4.10.4 VF(Voting File,表決磁盤文件) - 68 -
4.10.5 替換OCR磁盤組的步驟 - 69 -
4.11 什麼是GPnP? - 69 -
4.12 RAC中的Public IP、Private IP、Virtual IP、SCAN IP、GNS VIP及HAIP的作用分別是什麼? - 71 -
4.13 Oracle Cluster Health Monitor(CHM)的作用是什麼? - 74 -
4.14 集羣中的Master Node體現在哪兩個方面? - 76 -
4.15 cvuqdisk包的作用是什麼? - 77 -
4.16 oraInventory目錄的作用是什麼? - 77 -
4.17 談談對Oracle中RAC用到的Cache Fusion的理解。 - 78 -
4.18 集羣安裝過程中的$GRID_HOME/root.sh腳本的作用是什麼? - 78 -
4.18.1 如何徹底清除OCR的配置信息? - 79 -
4.18.2 如果$GRID_HOME下的權限被人爲修改過,那麼如何來修復該權限問題? - 79 -
4.19 Linux和Windows下如何快速卸載RAC? - 80 -
4.20 kfed、kfod和amdu工具的作用分別是什麼? - 81 -
4.21 在RAC環境中,如何在當前的實例下殺掉另外一個實例的會話? - 82 -
4.22 RAC等待事件gc buffer busy acquire和gc buffer busy release的區別是什麼? - 83 -
4.23 RAC節點被踢出可能有哪些原因? - 83 -
4.24 什麼是套接字文件? - 83 -
4.25 RAC環境下的Redo文件可以放在節點本地嗎? - 84 -
4.26 RAC環境下"ALTER SYSTEM SWITCH LOGFILE;"與"ALTER SYSTEM ARCHIVE LOG CURRENT;"有什麼區別? - 84 -
4.27 RAC環境下所有實例都共享一個Undo表空間嗎? - 84 -
4.28 RAC環境下的備份恢復 - 85 -
4.28.1 歸檔日誌備份 - 85 -
4.28.2 配置節點歸檔間歸檔文件的自動發送 - 85 -
4.28.3 RAC數據庫恢復到RAC - 86 -
4.28.4 RAC備份集恢復到單實例數據庫 - 86 -
4.28.5 單實例備份集恢復到RAC - 86 -
-
DG
-
DG培訓課程大綱
注:
- 1學時=1小時
- 1課時=1次課=2學時=2小時
- 培訓大綱是培訓文檔的縮減版,只列舉出了最重要的一部分內容,最終講課內容以講課文檔爲準,大家可以參考後邊的目錄部分,目錄部分是最全的部分。
課程模塊 |
培訓要點 |
學時 |
DG的搭建(RAC到RAC) |
|
2 |
DG的架構 |
|
2 |
角色切換 |
|
2 |
DG修復 |
|
2 |
DG中GAP有幾種解決方案? |
|
2 |
DG中一些比較有用的SQL語句 |
|
1 |
DataGuard 客戶端特級配置 |
|
2 |
-
DG講課內容思維導圖
-
DG講課文檔目錄
-
安裝部分
-
目錄 - 2 -
======第一部分 安裝類博客鏈接 - 12 -
第1章 安裝類博客鏈接 - 12 -
1.1 RAC+ASM - 12 -
1.1.1 ASM + 11gR2單實例+ RHEL6.5安裝 - 12 -
1.1.2 12cR1 RAC安裝 - 12 -
1.1.3 11gR2 RAC安裝 - 12 -
1.1.4 Windows Server 2008R2下安裝RAC - 13 -
1.1.5 AIX平臺下RAC和ASM的安裝 - 13 -
1.2 DG - 13 -
1.3 OGG - 14 -
======第二部分 搭建Oracle 11gR2基於ASM的單實例 - 15 -
第2章 RHEL 5.5的OS版本 - 15 -
2.1 安裝VMware Workstation 12 Pro - 15 -
2.1.1 校驗MD5值 - 16 -
2.2 安裝RHEL 5.5的OS版本 - 18 -
2.2.1 簡易安裝 - 18 -
2.2.2 一般安裝過程 - 23 -
2.2.2.1 開始安裝 - 38 -
2.2.2.2 建立自定義的分區結構 - 42 -
2.2.2.3 繼續 - 47 -
2.3 其它軟件安裝 - 54 -
2.3.1 安裝VMware Tools - 54 -
2.3.1.1 安裝完成後設置共享文件 - 59 -
2.3.1.2 設置桌面背景和桌面的大小 - 60 -
2.3.2 設置主機IP地址 - 61 -
2.3.3 中文環境切換成英文環境 - 62 -
2.3.4 配置本地yum源(rhel 5.5) - 62 -
2.3.5 安裝rlwrap - 63 -
2.4 對/dev/sdb進行分區 - 64 -
2.4.1 邏輯卷管理的命令 - 71 -
第3章 安裝11.2.0.3 64位單機數據庫軟件 - 72 -
3.1 安裝前的準備工作 - 72 -
3.1.1 軟件準備 - 72 -
3.1.2 檢查硬件 - 72 -
3.1.3 修改hosts文件、修改主機名 - 73 -
3.1.4 安裝軟件包檢查 - 73 -
3.1.5 內核參數--shell限制 - 75 -
3.1.5.1 /etc/security/limits.conf - 75 -
3.1.5.2 /etc/pam.d/login - 76 -
3.1.5.3 /etc/profile - 76 -
3.1.5.4 /etc/sysctl.conf - 76 -
3.1.6 關閉防火牆 - 77 -
3.1.7 關閉耗費資源的服務 - 78 -
3.1.8 禁用selinux - 78 -
3.2 新建用戶和組 - 79 -
3.2.1 配置用戶的環境變量 - 79 -
3.3 新建安裝目錄 - 80 -
3.4 將oracle使用者加入到sudo羣組中 - 80 -
3.5 準備oracle安裝文件 - 80 -
3.5.1 拷貝安裝文件 - 80 -
3.5.1.1 計算MD5值 - 83 -
3.5.2 解壓安裝文件 - 84 -
3.6 開始安裝 - 85 -
3.6.1 安裝前的檢查 - 96 -
3.6.2 執行root.sh腳本 - 99 -
3.7 擴展(靜默安裝軟件) - 100 -
第4章 創建數據庫 - 103 -
4.1 DBCA圖形創建 - 103 -
4.1.1 啓動監聽 - 114 -
4.2 DBCA靜默方式建庫(必會) - 116 -
4.2.1.1 什麼是靜默建庫? - 116 -
4.3 CREATE DATABASE手動建庫(OCM) - 118 -
4.4 刪除數據庫的幾種方式 - 119 -
4.5 在多個不同版本的數據庫情況下,如何確定實例的ORACLE_HOME地址? - 120 -
第5章 配置監聽和TNS - 120 -
5.1 靜默創建監聽 - 122 -
第6章 其它 - 122 -
6.1 讓Oracle DB、監聽和oem開機啓動(dbstart) - 122 -
6.1.1 方法1:配置Linux的service服務 - 123 -
6.1.2 方法2:配置/etc/rc.d/rc.local文件 - 125 -
6.1.3 總結 - 127 -
6.2 PLSQL Developer軟件使用和Windows 下綠色版Oracle客戶端的安裝和使用 - 127 -
6.2.1 Linux下綠色版Oracle客戶端的安裝 - 127 -
6.3 Windows下環境變量的配置 - 128 -
6.3.1 代碼頁(Code Page) - 128 -
6.3.2 環境變量的分類 - 128 -
6.3.3 配置環境變量的方法 - 128 -
6.3.3.1 批處理註冊表 - 128 -
6.3.3.2 界面配置 - 129 -
6.3.3.3 SETX命令直接配置 - 129 -
6.4 配置glogin.sql - 129 -
6.5 如何判斷Oracle是32位還是64位? - 130 -
第7章 安裝grid軟件 - 133 -
7.1 OS修改 - 133 -
7.1.1 編輯/etc/security/limits.conf文件,在文件尾部添加如下內容 - 133 -
7.1.2 添加grid用戶 - 133 -
7.1.3 配置grid用戶的環境變量 - 134 -
7.1.4 擴展磁盤空間 - 134 -
7.2 ASM磁盤準備(創建asm磁盤) - 135 -
7.2.1 創建ASM磁盤的方法1--Faking方式 - 135 -
7.2.2 創建ASM磁盤的方法2--直接修改/etc/sysconfig/rawdevices配置raw(rhel6之後不支持) - 137 -
7.2.3 創建ASM磁盤的方法3--Udev方式 - 140 -
一、 uuid方式 - 140 -
①、 RedHat 5 UDEV SCSI Rules配置 - 140 -
②、 RedHat 6 UDEV SCSI Rules - 141 -
2、 配置 udev 綁定的 scsi_id - 143 -
3、 創建並配置udev rules文件 - 144 -
4、 udevadm進行測試 - 145 -
5、 添加完成後,重啓 udev,不同 Linux 發行版本重啓方式不一樣。 - 145 -
6、 查看綁定的 asm,如果此時還是看不到 asm disk,請重啓操作系統後再查看。 - 145 -
二、 raw方式 - 145 -
7.2.4 創建ASM磁盤的方法4--ASMLIB方式 - 146 -
一、 系統版本號 - 146 -
二、 Oracle asmlib下載 - 147 -
三、 上傳並安裝上述的三個rpm軟件包 - 149 -
四、 配置ASM - 149 -
五、 系統添加磁盤 - 150 -
六、 grid軟件安裝完畢後配置asm_diskstring 路徑 - 151 -
七、 測試 - 153 -
7.3 安裝grid軟件 - 154 -
7.3.1 解壓軟件 - 154 -
7.3.2 、開始安裝grid軟件(圖形界面,講課) - 155 -
7.3.2.1 創建ASM磁盤組 - 159 -
7.3.2.2 執行root腳本 - 165 -
7.3.2.3 繼續安裝 - 166 -
7.3.2.4 測試ASM實例 - 167 -
7.3.2.5 繼續安裝 - 169 -
7.3.2.6 測試ASM實例 - 170 -
7.3.3 靜默安裝grid軟件(可選) - 171 -
7.3.3.1 安裝grid軟件 - 171 -
7.3.3.2 靜默創建ASM實例 - 174 -
7.3.3.3 靜默創建grid用戶的監聽 - 175 -
7.4 創建DATA和FRA的ASM磁盤組 - 177 -
7.5 創建ASM管理的數據庫 - 180 -
7.6 創建EM - 182 -
======第三部分 搭建Oracle 11gR2 RAC--使用OpenFiler來模擬存儲配置中ASM共享盤及多路徑(multipath) - 184 -
第8章 RAC 11gR2搭建 - 185 -
8.1 整體規劃部分 - 185 -
8.1.1 所需軟件介紹 - 185 -
8.1.1.1 數據庫安裝文件的MD5值校驗 - 185 -
8.1.1.2 VMware Workstation安裝 - 186 -
8.1.2 IP地址規劃 - 186 -
8.1.2.1 RAC環境 - 186 -
8.1.2.2 OpenFiler - 187 -
8.1.3 操作系統本地磁盤分區規劃 - 187 -
8.1.4 共享存儲與ASM磁盤組規劃 - 188 -
8.2 操作系統配置部分 - 188 -
8.2.1 安裝主機或虛擬機 - 188 -
8.2.2 網絡配置 - 188 -
8.2.2.1 添加虛擬網卡 - 188 -
8.2.2.2 配置IP地址 - 190 -
一、 重新配置網絡 - 193 -
二、 虛擬機上外網 - 193 -
8.2.2.3 關閉防火牆 - 194 -
8.2.2.4 禁用selinux - 194 -
8.2.2.5 修改/etc/hosts文件 - 195 -
8.2.3 修改主機名 - 196 -
8.2.4 硬件要求 - 197 -
8.2.4.1 內存 - 197 -
8.2.4.2 Swap空間 - 197 -
8.2.4.3 /tmp空間 - 197 -
8.2.4.4 Oracle安裝將佔用的磁盤空間 - 197 -
8.2.5 添加組和用戶 - 198 -
8.2.5.1 添加oracle和grid用戶 - 198 -
8.2.5.2 創建安裝目錄 - 199 -
8.2.5.3 配置grid和oracle用戶的環境變量文件 - 199 -
8.2.5.4 配置root用戶的環境變量 - 200 -
8.2.6 軟件包的檢查 - 201 -
8.2.6.1 配置本地yum源 - 202 -
8.2.6.2 安裝缺失的包 - 203 -
8.2.7 關閉不需要的服務 - 203 -
8.2.8 配置內核參數 - 204 -
8.2.8.1 操作系統版本 - 204 -
8.2.8.2 修改/etc/sysctl.conf文件 - 204 -
8.2.8.3 修改/etc/security/limits.conf文件 - 205 -
8.2.8.4 修改/etc/pam.d/login文件 - 205 -
8.2.8.5 修改/etc/profile文件 - 205 -
8.2.9 配置/dev/shm大小 - 206 -
8.2.10 關閉NTP - 206 -
8.3 配置共享存儲 - 207 -
8.3.1 添加共享磁盤 - 207 -
8.3.1.1 第一步:創建共享磁盤 - 207 -
8.3.1.2 第二步:修改配置文件 - 208 -
8.3.1.3 第三步:重新打開VMware Workstation - 209 -
8.3.2 設置共享磁盤 - 210 -
8.3.2.1 配置udev綁定的scsi_id - 210 -
8.3.2.2 創建並配置udev rules文件 - 211 -
8.4 數據庫軟件包準備 - 213 -
8.4.1 創建文件系統 - 213 -
8.4.2 上傳並解壓軟件 - 213 -
8.5 安裝前預檢查 - 214 -
8.5.1 安裝補丁包(cvuqdisk) - 214 -
8.5.2 配SSH互信,建立ssh等效性 - 215 -
8.5.2.1 方法一:普通配置 - 216 -
8.5.2.2 方法二:用sshUserSetup.sh快速創建互信(推薦方法) - 216 -
8.5.2.3 方法三:圖形化界面 - 217 -
8.5.3 cluster 硬件檢測--安裝前預檢查配置信息 - 217 -
8.6 圖形界面安裝(學員練習) - 219 -
8.6.1 安裝GRID - 219 -
8.6.1.1 OCR磁盤組 - 227 -
8.6.1.2 執行root腳本 - 237 -
8.6.1.3 繼續安裝 - 240 -
8.6.1.4 校驗 - 242 -
8.6.2 安裝database - 244 -
8.6.2.1 執行root腳本 - 254 -
8.7 靜默安裝(講課) - 255 -
8.7.1 靜默安裝grid - 255 -
8.7.1.1 新建/etc/oraInst.loc文件 - 255 -
8.7.1.2 檢查項 - 256 -
8.7.1.3 開始安裝 - 256 -
一、 root.sh腳本 - 259 -
二、 configToolAllCommands腳本 - 262 -
8.7.2 靜默安裝database - 264 -
8.7.2.1 靜默安裝DB軟件 - 264 -
8.7.3 驗證 - 267 -
8.7.3.1 驗證集羣化數據庫已開啓 - 267 -
8.7.3.2 檢查集羣的運行狀況 - 267 -
8.7.3.3 節點應用程序 - 268 -
8.7.3.4 ASM 狀態和配置 - 268 -
8.7.3.5 TNS 監聽器狀態和配置 - 268 -
8.7.3.6 節點應用程序配置 VIP、GSD、ONS、監聽器 - 269 -
8.7.3.7 SCAN 狀態和配置 - 269 -
8.7.3.8 驗證所有集羣節點間的時鐘同步 - 269 -
8.8 建立DATA和FRA磁盤組 - 270 -
8.9 dbca靜默方式建庫 - 272 -
8.10 其它擴展 - 274 -
8.10.1 sqlplus提示符設置 - 274 -
8.10.2 在AIX或Linux下,如何查看磁盤是否包含數據? - 274 -
8.10.3 如何讓crs_stat命令顯示完整 - 276 -
8.10.4 kfod命令 - 276 -
8.10.5 數據庫軟件的卸載 - 278 -
第9章 安裝OpenFiler - 279 -
9.1 OpenFiler虛擬機安裝 - 279 -
9.2 安裝OS - 288 -
9.2.1 自定義分區 - 290 -
9.2.2 網絡設置 - 298 -
9.3 SSH登錄 - 304 -
9.4 頁面登錄 - 305 -
9.5 基本配置 - 305 -
9.5.1 網卡配置 - 305 -
9.5.2 添加硬盤 - 308 -
9.6 iscsi target配置 - 310 -
9.6.1 創建邏輯卷 - 311 -
9.6.1.1 創建物理卷 - 311 -
一、 圖形界面創建物理卷 - 311 -
二、 命令行創建物理卷 - 314 -
9.6.1.2 創建卷組 - 323 -
一、 命令創建 - 324 -
9.6.1.3 創建邏輯卷 - 325 -
9.6.2 開啓iSCSI Target服務 - 327 -
9.6.3 LUN Mapping操作 - 329 -
9.6.4 Network ACL - 330 -
9.6.5 /etc/initiators.deny - 330 -
第10章 RAC中配置共享 - 331 -
10.1 RAC節點配置iSCSI - 331 -
10.1.1 iSCSI target - 331 -
10.1.2 iSCSI initiator - 333 -
10.1.2.1 安裝iSCSI initiator - 333 -
10.1.2.2 iscsiadm - 333 -
10.2 多路徑multipath - 337 -
10.2.1 RAC的2個節點上分別安裝multipath軟件 - 337 -
10.2.2 啓動multipath - 338 -
10.2.3 配置多路徑軟件/etc/multipath.conf - 339 -
10.2.4 編輯/etc/multipath.conf - 340 -
10.2.5 配置multipath設備的權限 - 343 -
10.2.6 配置udev規則 - 344 -
10.2.7 測試多路徑 - 345 -
10.2.7.1 有關多路徑其它理論知識 - 347 -
10.2.8 測試磁盤組 - 348 -
======第四部分 DG搭建 - 351 -
第11章 物理DG搭建--採用DUPLICATE - 351 -
11.1 dg環境介紹 - 351 -
11.2 準備存儲 - 352 -
11.3 主庫操作 - 353 -
11.3.1 先創建主庫 - 353 -
11.3.2 主庫前期準備 - 354 -
11.3.2.1 主庫修改爲force logging + archivelog - 354 -
11.3.2.2 爲主庫添加standby redo log - 354 -
11.3.2.3 修改主庫參數文件 - 357 -
11.3.2.4 修改主庫的快照控制文件的路徑到共享存儲 - 358 -
11.4 配置主庫和備庫的監聽 - 358 -
11.4.1 主庫 - 358 -
11.4.2 備庫 - 359 -
11.5 配置主庫和備庫的tnsname - 359 -
11.6 配置主備庫密碼文件 - 360 -
11.7 備庫操作 - 360 -
11.7.1 配置備庫路徑 - 360 -
11.7.2 配置備庫pfile文件並啓動到nomount狀態 - 360 -
11.7.3 利用rman的duplicate複製主庫文件到備庫 - 361 -
11.7.4 創建備庫spfile並啓動備庫 - 373 -
11.7.5 將備庫加入srvctl中 - 375 -
11.7.6 啓動備庫到open read only狀態 - 375 -
11.7.7 校驗實時同步功能 - 376 -
11.8 總結 - 379 -
第12章 邏輯DG搭建--採用RMAN搭建 - 380 -
12.1 先搭建物理DG(基於RMAN) - 380 -
12.1.1 dg環境介紹 - 380 -
12.1.2 RAC主庫準備工作 - 381 -
12.1.2.1 RAC主庫必須置爲歸檔模式: - 381 -
12.1.2.2 RAC主庫必須置爲ForceLogging模式: - 381 -
12.1.2.3 主庫參數調整: - 381 -
12.1.2.4 主庫上創建standbylogfile: - 382 -
12.1.2.5 RAC主庫執行RMAN全備: - 382 -
12.1.2.6 RAC主庫執行創建物理備庫控制文件: - 383 -
12.1.2.7 RAC主庫創建物理備庫初始化參數文件: - 383 -
12.1.2.8 RAC主庫修改口令文件,使雙節點SYS用戶口令一致: - 383 -
12.2 物理備庫準備工作 - 383 -
12.2.1 SFTP主庫備份的數據文件+備庫控制文件+備庫參數文件至物理備庫服務器: - 383 -
12.2.2 物理備庫創建口令文件: - 384 -
12.2.3 物理備庫初始化參數文件修改: - 384 -
12.2.4 配置RAC主庫,物理備庫的監聽以及tnsnames.ora文件: - 385 -
12.3 創建物理備庫 - 386 -
12.3.1 物理備庫啓動NOMOUNT狀態: - 386 -
12.3.2 RMAN恢復備庫控制文件: - 386 -
12.3.3 MOUNT物理備庫: - 386 -
12.3.4 RMAN restore物理備庫: - 387 -
12.3.5 創建備庫spfile並啓動備庫 - 388 -
12.3.6 備庫開始應用日誌並打開: - 389 -
12.4 將新添加的物理備庫準換爲邏輯備庫 - 390 -
12.4.1 停用備庫MRP進程 - 390 -
12.4.2 主庫構建LogMiner字典 - 390 -
12.4.3 把物理備庫恢復爲邏輯備庫 - 391 -
12.4.4 修改備庫參數、打開邏輯備用數據庫、啓用SQL應用 - 391 -
12.4.5 將邏輯備庫加入srvctl中 - 393 -
12.4.6 測試同步 - 393 -
第13章 快照DG搭建--採用DUPLICATE - 394 -
13.1 增加一個物理DG - 394 -
13.1.1 dg環境介紹 - 394 -
13.1.2 主庫設置 - 395 -
13.1.2.1 修改主庫參數文件 - 395 -
13.1.2.2 修改主庫的快照控制文件的路徑到共享存儲 - 395 -
13.1.3 主備庫都設置 - 396 -
13.1.3.1 配置主庫和備庫的監聽 - 396 -
一、 主庫 - 396 -
二、 備庫 - 396 -
13.1.3.2 配置主庫和備庫的tnsname - 396 -
13.1.3.3 配置主庫和備庫密碼文件 - 397 -
13.2 備庫操作 - 397 -
13.2.1 配置備庫路徑 - 397 -
13.2.2 配置備庫pfile文件並啓動到nomount狀態 - 398 -
13.2.3 利用rman的duplicate複製主庫文件到備庫 - 398 -
13.2.4 創建備庫spfile並啓動備庫 - 400 -
13.3 將11g物理備庫轉換爲Snapshot Standby - 402 -
13.3.1 停止Redo Apply,讓物理備庫處於mounted狀態 - 402 -
13.3.2 確保閃回恢復區已指定 - 402 -
13.3.3 調整備庫到Snapshot Standby數據庫狀態 - 402 -
13.3.4 將備庫置於對外可讀寫狀態 - 404 -
13.3.5 測試備庫處於Snapshot Standby數據庫對主庫日誌的接收 - 404 -
13.3.6 在Snapshot Standby數據創建用戶和表並初始化數據 - 404 -
13.3.7 將快照備庫加入srvctl中 - 405 -
13.4 恢復Snapshot Standby數據庫爲Physical Standby數據庫 - 406 -
13.4.1 重啓備庫到MOUNTED狀態 - 406 -
13.4.2 一條命令恢復原物理備庫身份 - 406 -
13.4.3 重啓備庫到自動恢復日誌狀態 - 407 -
13.4.4 小結 - 409 -
13.5 切換到快照數據庫 - 409 -
13.6 現有DG架構詳情查詢 - 410 -
======第五部分 OGG搭建 - 412 -
-
講課部分
第1章 DG - 3 -
1.1 DG有哪些優缺點? - 3 -
1.2 DG的架構 - 4 -
1.3 DG的分類 - 6 -
1.4 RFS、LNSn、MRP、LSP進程的作用分別是什麼? - 7 -
1.4.1 RFS進程 - 7 -
1.4.2 LNSn(LGWR Network Server process)進程 - 7 -
1.4.3 MRP(Managed Recovery Process)進程 - 8 -
1.4.4 LSP(logical standby process)進程 - 8 -
1.5 DG的一些參數說明 - 8 -
1.6 DG的3種保護模式 - 11 -
1.7 增加redo日誌組和standby日誌組 - 12 -
1.8 Switchover和Failover的區別--實驗課 - 12 -
1.8.1 物理DG的Switchover切換 - 14 -
1.8.2 物理DG的Failover切換 - 14 -
1.8.2.1 利用閃回數據庫(flashback)修復Failover後的DG環境 - 15 -
1.9 主庫丟失歸檔,物理DG如何恢復?--實驗課 - 15 -
1.10 備庫數據文件異常,物理DG如何恢復?--實驗課 - 18 -
1.11 DG中GAP有幾種解決方案?--實驗 - 21 -
1.11.1 物理DG手動解決GAP - 22 -
1.11.2 邏輯DG手動解決GAP - 23 -
1.12 DG中一些比較有用的SQL語句 - 23 -
1.12.1 物理DG維護中常用到的SQL語句 - 24 -
1.12.2 邏輯DG維護中常用到的SQL語句 - 27 -
1.13 主備庫信息查詢 - 29 -
1.14 DataGuard 客戶端特級配置(講課) - 30 -
1.14.1 Data Guard Broker的配置 - 30 -
1.14.2 Fast-Start Failover 的配置 - 30 -
1.14.3 Oracle DataGuard 之客戶端TAF 配置 - 30 -
-
OGG
-
OGG培訓課程大綱
注:
- 1學時=1小時
- 1課時=1次課=2學時=2小時
- 培訓大綱是培訓文檔的縮減版,只列舉出了最重要的一部分內容,最終講課內容以講課文檔爲準,大家可以參考後邊的目錄部分,目錄部分是最全的部分。
課程模塊 |
培訓要點 |
學時 |
OGG的搭建(單機) |
|
2 |
RAC環境下的OGG管理 |
|
2 |
基礎 |
|
2 |
OGG架構 |
|
2 |
故障解決 |
|
2 |
OGG配置過程中的一些參數 |
|
2 |
-
OGG講課內容思維導圖
-
OGG講課文檔目錄
-
安裝配置部分
第13章 OGG配置實驗(單機) - 253 -
13.1 OGG的單向複製配置(DML配置) - 253 -
13.1.1 環境介紹 - 253 -
13.1.2 準備工作,在source和target端都配置 - 254 -
13.1.2.1 確保/etc/hosts配置正確 - 254 -
13.1.2.2 dbca創建2套新環境用於實驗 - 254 -
13.1.2.3 配置環境變量、listener和tnsnames.ora文件 - 254 -
13.1.2.4 數據庫設置 - 255 -
13.1.3 安裝ogg軟件,配置及啓動mgr管理進程,source和target端做相同的操作 - 256 -
13.1.3.1 安裝OGG軟件 - 256 -
13.1.3.2 配置及啓動mgr管理進程 - 256 -
13.1.3.3 準備測試用戶及表 - 256 -
13.1.4 初始化數據 - 257 -
13.1.4.1 source端添加extract進程 - 257 -
13.1.4.2 target端添加replicat進程 - 257 -
13.1.4.3 source端啓動extract進程,查看日誌輸出 - 258 -
13.1.4.4 target端查看日誌,並且數據量驗證 - 258 -
13.1.5 配置OGG的實時同步功能 - 259 -
13.1.5.1 開啓hr用戶下所有表的最小附加日誌 - 259 -
13.1.5.2 在source上添加及配置extract進程,進程的名字不能超過8個字符;添加trail文件,文件名前綴不能超過2個字符 - 260 -
一、 添加並配置extract進程 - 260 -
二、 添加trail文件,文件名前綴不能超過2個字符 - 260 -
13.1.5.3 添加並啓動pump進程 - 261 -
13.1.5.4 在target端添加檢查表,配置replicat進程 - 261 -
一、 添加檢查表 - 262 -
二、 添加並啓動replicat進程 - 262 -
13.1.5.5 測試OGG的實時同步功能 - 263 -
一、 源庫插入數據分析 - 263 -
二、 抽取trail文件中可打印的內容分析 - 263 -
三、 刪除測試 - 264 -
13.2 單向複製配置(支持DDL複製) - 264 -
13.2.1 先驗證之前的配置不支持DDL複製 - 264 -
13.2.2 開始配置OGG支持DDL複製(在source端操作) - 265 -
13.2.2.1 賦予ggusr用戶相應的權限,修改全局配置文件添加ggschema參數 - 265 -
13.2.2.2 運行相關的sql腳本 - 265 -
13.2.3 source端修改extract進程的params文件,添加"ddl include all"參數,重啓extract進程 - 266 -
13.2.4 target端修改replicat進程的params文件,添加"ddl include all"和"ddlerror default ignore retryop maxretries 3 retrydelay 5" 參數,重啓replicat進程 - 267 -
13.2.5 測試DDL同步 - 267 -
13.3 OGG簡單配置雙向複製 - 268 -
13.3.1 配置OGGS,添加checkpoint表 - 268 -
13.3.2 配置OGGT,運行相關的腳本,支持DDL的複製 - 269 -
13.3.3 OGGT上配置extract和pump進程 - 269 -
13.3.4 OGGS上配置replicat進程 - 270 -
13.3.5 測試 - 271 -
13.3.5.1 ddl測試 - 271 -
13.3.5.2 dml測試 - 271 -
第14章 RAC環境下的OGG管理 - 272 -
14.1 RAC環境下配置OGG單向同步 - 272 -
14.1.1 環境介紹 - 272 -
14.1.2 首先在兩個rac節點上配置tnsnames.ora文件 - 273 -
14.1.2.1 配置tnsnames.ora - 273 -
14.1.3 RAC上安裝OGG軟件 - 274 -
14.1.3.1 安裝ACFS - 274 -
14.1.3.2 acfs上安裝ogg,acfs用來存放ogg的安裝目錄,便於集羣件的共享,在10g上部署可以選擇ocfs2 - 274 -
14.1.3.3 配置mgr進程 - 275 -
14.1.4 target庫安裝OGG軟件 - 276 -
14.1.5 rac數據庫上進行配置,創建用戶,授權,運行執行序列號和ddl複製的相關腳本等 - 276 -
14.1.6 在source端配置extract group - 276 -
14.1.7 在source端配置data pump extract group - 277 -
14.1.8 target端配置 - 277 -
14.1.9 啓動各進程 - 278 -
14.1.10 測試同步情況 - 278 -
14.1.11 總結 - 279 -
14.2 RAC環境下管理OGG-HA - 279 -
14.2.1 查看rac各服務是否online,這裏3個gsd服務offline屬於正常情況! - 279 -
14.2.2 在source端添加VIP,並賦權限,檢查vip是否能正常啓動,在本例中運行grid infrastructure的操作系統用戶爲grid,運行ogg的操作系統用戶爲oracle - 280 -
14.2.3 配置action腳本,該腳本必須包含start,stop,check,clean,abort幾個函數,才能用於後續的grid infrastructure調用,這裏把腳本直接放在acfs文件系統上,以便節點間共享 - 280 -
14.2.4 使用oracle用戶添加oggapp,並授權給oracle用戶管理 - 282 -
14.2.5 檢查target端的數據庫是否可以正常連接,ogg進程是否運行正常 - 282 -
14.2.6 檢查source端的數據庫是否可以正常連接,ogg進程處於未啓動狀態 - 282 -
14.2.7 啓動oggapp resource,檢查source(rac1)上的ogg進程是否成功啓動 - 283 -
14.2.8 測試failover - 283 -
14.2.9 總結 - 283 -
-
講課部分
目錄 - 2 -
第1章 OGG - 4 -
1.1 什麼是OGG?它有哪些優缺點? - 4 -
1.2 一些高可用產品的比較 - 4 -
1.2.1 什麼是高可用? - 4 -
1.2.2 Failsafe和RAC的區別 - 5 -
1.2.3 RAC和OPS區別 - 5 -
1.2.4 RAC、DG和OGG的區別 - 6 -
1.3 OGG的命令接口 - 6 -
1.4 OGG的架構 - 7 -
1.4.1 OGG進程 - 7 -
1.4.2 RAC下的OGG - 8 -
1.4.3 OGG運維常用命令 - 8 -
1.5 OGG異常處理的一般步驟有哪些? - 9 -
1.6 OGG環境中如何使用OS命令? - 9 -
1.7 OGG的告警日誌文件的位置在哪裏? - 9 -
1.8 關於在一套複製環境中使用不同版本OGG的問題 - 9 -
1.9 如何解決OGG沒有主鍵時的同步問題 - 10 -
1.10 Logdump工具的作用是什麼? - 10 -
1.11 OGG-00446 Could not find archived log for sequence錯誤的處理辦法 - 11 -
1.12 OGG配置過程中的一些參數 - 11 -
1.12.1 MGR參數 - 12 -
1.12.2 extract參數 - 12 -
1.12.3 datapump參數 - 13 -
1.12.4 replicat參數 - 14 -
1.12.5 常用優化參數 - 15 -
1.12.6 **** 禁止 參數 **** - 15 -
1.12.7 Oracle GoldenGate 中 HANDLECOLLISIONS 參數使用詳解 - 19 -
1.13 Oracle 附加日誌(supplemental log) - 21 -
1.13.1 數據庫級設置 - 21 -
1.13.1.1 最小附加日誌(minimal supplemental logging): - 21 -
1.13.1.2 標識鍵日誌(identification key logging) - 21 -
1.13.2 表級附加日誌設置 - 22 -
1.13.2.1 可以通過以下語句設置命名日誌組: - 22 -
1.13.2.2 可以通過以下語句設置所有列或主鍵/外鍵/唯一鍵組合日誌組: - 22 -
1.13.3 關於GoldenGate附加日誌 - 24 -
小麥苗課程
小麥苗課堂開課啦,如下是現有的課程,歡迎諮詢小麥苗:
課程名稱 |
課時 |
上課時間(可根據情況調整) |
價格 |
|
OCP(從入門到專家) |
每年1期,35課時左右/期 |
每週一、週三、週四、週六 |
20:00-22:00 |
1588 |
OCM認證 |
每年N期,9課時/期 |
每週二、週五 |
20:00-22:00 |
22888 |
高可用課程(rac+dg+ogg) |
每年1期,20課時左右/期 |
每週一、週三、週四、週六 |
20:00-22:00 |
1888 |
Oracle初級入門 |
每年1期,15課時左右/期 |
每週一、週三、週四、週六 |
20:00-22:00 |
800 |
Oracle健康檢查腳本 |
可微信或微店購買。 |
88 |
||
Oracle數據庫技能直通車 |
包含如下3個課程: ①《11g OCP網絡課程培訓》(面向零基礎) 價值1600元 ②《11g OCM網絡班課程培訓》(Oracle技能合集)價值10000+元 ③《RAC + DG + OGG 高可用網絡班課程》 價值2000元 以上3個課程全部打包只要5888,只要5888所有課程帶回家,終身指導!所有課程都是在線講課,不是播放視頻,課件全部贈送! 注意:以上OCP和OCM課程只包括培訓課程,不包括考試費用。 |
5888 |
注意:
1、每次上課前30分鐘答疑。
2、OCM實時答疑,提供和考試一樣的練習模擬環境,只要按照老師講的方式來練習,可以保證100%通過。
3、授課方式:YY語音網絡直播講課(非視頻) + QQ互動答疑 + 視頻複習。其中,OCM在上海開設現場班。
4、OCP課時可以根據大家學習情況進行增加或縮減。
5、以上所有課程均可循環聽課。
6、12c OCM課程私聊。
7、Oracle初級入門課程,只教大家最實用+最常用的Oracle操作維護知識。
8、以上所有課程,可以加小麥苗微信(lhrbestxh)或QQ(646634621)詳聊,優惠多多。
培訓項目 |
連接地址 |
DB筆試面試歷史連接 |
http://mp.weixin.qq.com/s/Vm5PqNcDcITkOr9cQg6T7w |
OCP培訓說明連接 |
https://mp.weixin.qq.com/s/2cymJ4xiBPtTaHu16HkiuA |
OCM培訓說明連接 |
https://mp.weixin.qq.com/s/7-R6Cz8RcJKduVv6YlAxJA |
高可用(RAC+DG+OGG)培訓說明連接 |
https://mp.weixin.qq.com/s/4vf042CnOdAD8zDyjUueiw |
OCP最新題庫解析歷史連接(052) |
http://mp.weixin.qq.com/s/bUgn4-uciSndji_pUbLZfA |
微店地址 |
https://weidian.com/s/793741433?wfr=c&ifr=shopdetail |
● 網名:小麥苗
● QQ:646634621
● QQ羣:618766405
● 我的博客:http://blog.itpub.net/26736162/abstract/1/
● 微信公衆號:xiaomaimiaolhr,二維碼如下:
● 小麥苗的微信二維碼如下所示,加我時請備註相關信息:
● 我的微店地址:https://weidian.com/s/793741433?wfr=c&ifr=shopdetail
● 出版的數據庫類叢書:http://blog.itpub.net/26736162/viewspace-2142121/
● 博客鏈接:http://blog.itpub.net/26736162/abstract/1/
● 小麥苗課堂資料(視頻+講課資料):https://share.weiyun.com/5fAdN5m
About Me
.............................................................................................................................................
● 本文作者:小麥苗,部分內容整理自網絡,若有侵權請聯繫小麥苗刪除
● 本文在itpub(http://blog.itpub.net/26736162/abstract/1/)、博客園(http://www.cnblogs.com/lhrbest)和個人微信公衆號(xiaomaimiaolhr)上有同步更新
● 本文itpub地址:http://blog.itpub.net/26736162/abstract/1/
● 本文博客園地址:http://www.cnblogs.com/lhrbest
● 本文pdf版、個人簡介及小麥苗雲盤地址:http://blog.itpub.net/26736162/viewspace-1624453/
● 數據庫筆試面試題庫及解答:http://blog.itpub.net/26736162/viewspace-2134706/
● DBA寶典今日頭條號地址:http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826
.............................................................................................................................................
● QQ羣號:230161599(滿)、618766405
● 微信羣:可加我微信,我拉大家進羣,非誠勿擾
● 聯繫我請加QQ好友(646634621),註明添加緣由
● 於 2018-06-01 06:00 ~ 2018-06-31 24:00 在魔都完成
● 最新修改時間:2018-06-01 06:00 ~ 2018-06-31 24:00
● 文章內容來源於小麥苗的學習筆記,部分整理自網絡,若有侵權或不當之處還請諒解
● 版權所有,歡迎分享本文,轉載請保留出處
.............................................................................................................................................
● 小麥苗的微店:https://weidian.com/s/793741433?wfr=c&ifr=shopdetail
● 小麥苗出版的數據庫類叢書:http://blog.itpub.net/26736162/viewspace-2142121/
● 小麥苗OCP、OCM、高可用網絡班:http://blog.itpub.net/26736162/viewspace-2148098/
.............................................................................................................................................
使用微信客戶端掃描下面的二維碼來關注小麥苗的微信公衆號(xiaomaimiaolhr)及QQ羣(DBA寶典),學習最實用的數據庫技術。
小麥苗的微信公衆號 小麥苗的DBA寶典QQ羣2 《DBA筆試面試寶典》讀者羣 小麥苗的微店
.............................................................................................................................................