資料庫系統培訓
Ⅰ 資料庫應該怎麼學習,零基礎。
1、 自己在windows和linux上安裝了mysql,自學linux的基礎知識,學習mysql的最基礎的知識,即怎麼寫,存儲過程,表的設計等,從0到熟悉大概花了3個月 ,推薦《mysql入門很簡單》。
2、系統地較為深入地學習mysql的sql優化,備份和恢復,參數優化,架構優化,硬體層面的優化,高可用方案,復制技術等等,這段時間你不一定能實際接觸到這些,就像我當初那樣,肯定沒什麼公司招一個小白。
我選擇自己看書,推薦《高性能mysql》,裡面所有的章節都需要看一遍,以現在的水平肯定看不懂,但需要知道大概怎麼回事,為後續的找mysql初級dba的工作打一個鋪墊,這個過程大概也需要3個月。
3、 紙上得來終覺淺,完成以上兩步,我開始准備找一份mysql相關的工作,而不是天天用著excel表格做著select * from table_sb這樣的工作。
當然我這么猥瑣的人肯定不會裸辭,該畫的電路板也一樣畫,業余時間開始投初級mysql dba的工作,並且不間斷地學習,網上各種找mysql面試的相關題目(實際上我當時完全沒有任何實戰經驗),陸續收到一些面試,憑借之前自學的mysql知識,開始胡亂吹牛逼,先混進去再說。
你不做mysql實際相關的工作,永遠也不知道自己之前認知的db知識有多幼稚。
友情提示一點,一般公司都沒有專職dba的,所以面試的時候一定要自信,其實你學了這么多,雖然毫無實戰經驗,理論知識很大概率比面試你的人牛逼,所以各種吹,我就這樣真正進入初級dba的圈子(由於這時對linux還處於cd ls的水平,所以之前也根本沒做過運維),這個邊工作邊找工作的過程又持續了2個月。
4、真正進入互聯網,接觸生產環境後,這是我進步最大的時候。
第一步需要將之前所學真正地應用起來,並且應用的過程中,再回頭看之前的書籍,這時候需要真正去理解,而不是似是而非,一知半解。
這時再推薦《高性能mysql 第三版》,全本再看一遍,這時需要全部看懂,另外還有《mysql技術內幕:innodb存儲引擎》等等。
總之這段時間就需要開始關注mysql一些細節了,比如db故障處理,高可用,負載均衡等等的具體實現了。
另外,linux的知識同步也要深入去學習,至少會寫shell腳本,常見的linux知識等,我在這花了1年多;
5、 dba的工作一般是非常輕閑的,畢竟不是大公司,技術能力有限,該學的也學得差不多了,接觸不到海量數據,高並發等比較鍛煉人的場合,於是我又准備跳了。
於是來了公有雲,現在每天運維萬多個db實例,平均每天處理5+個緊急db故障,幾乎mysql會遇到的問題,感覺都遇到了,能感覺到技術實力和經驗也在每天都在積累,在進步。
但是感覺還是欠缺了很多,下一步就看你選擇了,是再去研究源代碼,底層原理的東西多點,還是資料庫運維和應用多一點,就比如業界姜承堯,何登成與葉金榮的區別。
由於我的歷史原因,對c++等幾乎不懂,平時也用不到,所以看代碼等事實際太累,於是我再去學mongodb,接了公司mongodb運維的活,算是在廣度上的一個擴展,萬一哪天mysql不行了呢
6、 總之,對於db小白來說,最重要的一點就是,學習的過程不能斷。
PS 上面的方法比較野路子,適合沒什麼基礎的童鞋,如果本來就是DBA,比如從oracle轉到mysql,那麼建議直接看mysql官方文檔,而官方文檔是db達到一定水平後必看,出問題時必查的權威文檔。
Ⅱ 資料庫如何學習
這個得看你基礎,還有,你的終極目標是什麼?
資料庫分好多種,什麼sqlserver,oracle等等吧,其實大部分情況下語法都差不多,只是略有點區別。其實這個需要多練,單表的增刪改查要做好,其次就是些函數的應用,比如日期函數,聚合函數,操作字元串函數等,這個必須要達到熟練以上的水平。單表的練好了,再考慮多表的join連接等等,然後再試著學寫存儲過程,函數,觸發器,這幾個算是進階的內容了,但是還是有前提,就是上邊的你必須練好了,而且還要有一些編程的思想。當你對這些都差不多了,最後才能考慮優化的事情,也就好比你懂了語句在資料庫中是怎麼運行的,然後你才知道怎麼去優化。你要是需要的話,我可以平時簡單指導你一點,但不會太多,有些東西你自己弄出來了,比別人幫你搞定,你要記憶的深刻一點。
哎,手打啊
電子書我這也有一點,但是需要根據你對症下葯
Ⅲ oracle資料庫管理培訓
課程綜述
本課程為管理工業界最先進的信息系統的資料庫管理員開發能力,學員將學會備份和恢復Oracle資料庫,動手實驗將會給你帶來真實技術環境中的體驗,開發基本的網路管理技巧,使用Oracle恢復管理器簡化職責。本課程將為Oracle資料庫管理員關於Oracle網路管理和備份、恢復操作帶來堅實的基礎。
學員將學會在資料庫間傳輸數據和使用實用程序執行管理活動。學員將學習網路概念和配置參數,以排除一些常見的網路問題。在動手實驗中,學員將學會配置網路參數使得資料庫客戶端和工具可以和Oracle資料庫伺服器通訊。
本課程也滿足提供備份和恢復技術,和檢查各種備份,失敗,還原和恢復場景,學員將學會在關鍵任務企業中的基於各種商業需求的備份方法,使用多種策略和Oracle恢復管理器執行備份、還原和恢復操作。
l 內容綱要
網路概述
基本的Oracle網路架構
基本的Oracle網路伺服器端配置
基本的Oracle網路客戶器端配置
Oracle共享伺服器的使用和配置
備份和恢復概述
實例和媒體恢復結構
資料庫存檔模式的配置
Oracle恢復管理器(RMAN)概述和配置
用戶管理備份
RMAN備份
用戶管理的完全恢復
RMAN完全恢復
用戶管理非完全恢復
RMAN非完全恢復
RMAN知識庫維護
RMAN目錄的創建和維護
資料庫間傳輸數據
使用SQL*Loader來載入數據
案例研究
l 學員受益
從事Oracle資料庫伺服器的網路操作和數據備份恢復管理,尤其是備份操作。
l 目標學員
資料庫管理人員、開發人員、測試人員、資料庫最終用戶。
l 學員條件
參加過「Oracle9i /10g 資料庫管理基礎I」課程的學習。
Ⅳ 如何學習資料庫知識
要說資料庫,一般以 Server作為入門的學科,它適合中小型項目開發,而現在比較流行於大型開發的有:
Oracle
現在具有企業大型軟體的絕對佔有率
DB2 在以IBM服務的公司以及單位(中國銀行)
MySql 相對不是很正式的開發,使用MySql
當然還有一些:Access(桌面資料庫),FoxPro(中國教育),Informix的資料庫系統.
剛開始入門的時候可以找點視頻教程來學習,視頻教程一般講得比較好,但不要企圖於通過它達到比較高的水平。然後要學會將自己所知道的去實踐,多實踐。當覺得實踐到一定程度而沒有什麼沖勁了,就去學習理論,當覺得理論知識需要發揮的時候就去實踐,時間的周期不一定,沒有什麼定論,但自己的時間安排需要定論就可以了。
我一直都認為在計算機行業要學會一門技術太簡單了,但如果要把技術發揮到一定程度就有難處了,一定程度是什麼意思,就是把技術如何發揮到具體的業務之中,會動腦筋去思考,而把技術作為相對次要的東西了。
資料庫的DBA人員需要兼有系統分析員和運籌學的業務素質。在技術上講,我個人認為資料庫的前續學科是「數據結構」。
我現在剛學SQL Server一段時間,就自己的感想談談:
1.資料庫是非常快的數據處理程序,其內在的本質依舊是"文件".因為
Windows操作系統管理機制就有:磁碟、文件、目錄。Linux的方式只有文件。所以資料庫重本質的角度來說是一種平台軟體,是將文件翻譯成邏輯語言的軟體,成為我們軟體程序數據交換的中心,為什麼那,一個很重要的原因就是「快」,還有就是「安全」、「集成」等等。因為以前的語言程序要處理數據要編寫大量演算法十分麻煩而且很容易出錯等等。大家就想到集成了。。。。。
2.其實,要談到操作資料庫,簡單的就太簡單了,但是資料庫最難的不是操作,而是在資料庫的設計上。一個大型程序設計者肯定是一個資料庫的高手,因為大型程序要死板地去完成它是非常困難和不理智也是不安全不穩定的,我們要充分利用自己所有的能力去挖掘其數據之間的奧秘,然後體系化資料庫結構,相當於在資料庫中如何層次化地建立數據結構。將需求中的矛盾事物改變成可以相互融合的。
我說的資料庫操作簡單是指一般操作,如果難的操作還是有點技術的,但還是難不到那裡去。下面我把我的一個小資料庫程序給你看看:(下面這個程序已經建立資料庫library,然後用dbo用戶建立了表relatBook,並將表的第一個欄位設置為「主鍵」PK)
該程序想說的第一點是:程序按照標准用戶寫入法則寫入。
另外就是在執行多個操作的時候每一步驟的操作我們都必須為其設置錯誤的回滾操作。所以程序前兩個段落都是一樣的,在插入的時候故意出現異常,看第1和第3個語句是否能成功執行。
從上面看出點什麼沒有,你我執行了三個操作,第一個操作是肯定成功的,第二個是肯定失敗的,第三個跟在後面,那麼你想一想第一個和第三個操作能插入資料庫中嗎?我這個程序沒有什麼意義,但只是未了說明問題。
答案是:不能。
為什麼不能,這是SQL所支持的「事務」外完成的,這是技術問題,沒有什麼的,會了大家都會。為什麼要這樣做那,那才是要學習的前提。你想一想如果你建立了一個地區的帳物管理系統,當一個單位向另外一個單位轉帳的時候,需要執行兩個操作就是將一邊的信息刷掉,一邊的信息添加上去,而當執行一半的時候出現了某種異常中斷,比如高優先順序的搶占,伺服器重起、停電。當時你知道有多少人在訪問你的伺服器,那要造成多大的資料庫信息丟失,甚至於導致資料庫的查詢的嚴重失敗。那麼我就知道需要上面知識的支持了。
3.為什麼說上面的東西都很簡單那,因為只要你會,那就可以了,而設計方面的東西是永遠不是那麼簡單的,永遠帶有創新和追求,沒有最高的境界。
就一個十分常見的問題,如何在資料庫中配合好人員、角色、許可權、類別、級別、可操作性這幾者的關系,如果是沒有經驗的人直接上手可能會亂來(我們最早也是這樣的)。有經驗的人也會設計一段時間,而且隨著軟體復雜性的增加,其資料庫的這幾者之間的復雜性就越來越復雜。所以大型軟體是非常難的。就一個很簡單的例子,在很多的網站中,有上百的欄目信息,而每一個欄目間又保持獨立。圖片的位置和圖片的信息都是動態更新的。某些網站的可操作性都以樹型結構提供,而樹型結構的子樹類別和和葉子都是不重復而不錯誤。而且其層數都是動態的。有些人給我說可以通過前台的判定語句來執行樹型結構的生成,但我問了一個問題,如果是一個郵政編碼系統,有幾十萬個郵政編碼你在前台要寫多少個case語句,而且每一次要遍歷一次已經生成的樹,還有用前台的case語句編寫出來的樹型結構其二級子樹全部「定死」,而且樹型結構的層樹也被定死。這不是完全動態級別的網站。為以後對網站的維護帶來麻煩。
總之,資料庫是一門入門容易卻達到高手很難的學科,通過不斷在失敗中吸取經驗,才能得到一些書籍上無法學會的東西,那才是真正的高手。也就是說,學技術是很快的,要會將技術運用於實際的業務分析,才可以成為一個自我型的DBA,而不是一個簡單的程序員。
Ⅳ 如果要學習資料庫管理員,學習那個資料庫系統好一點啊
首先你要有興趣,其次,目測你也是理工課的,向資料庫開發或DBA方向發展來得及
如果時間充裕,建議先看一下《資料庫系統概論》,高等教育出版社,或者找一些電子書,介紹基礎概念的
既然有了C++和JAVA的基礎,建議用java為開發環境自己裝套資料庫,最好是oracle
多做些練習,加深理解,多上些技術論壇
開發的書可以看看《oracle database 9i/10g/11g 編程藝術》(外文翻譯)
DBA方面的可以看《深入解析Oracle:DBA入門、進階與診斷案例》,蓋國強;
深入些的,可以看《Oracle資料庫架構演進和性能優化實踐》,蓋國強
Ⅵ 資料庫需要學習哪些內容
資料庫系統的基本概念、基本原理和應用技術,主要內容包括資料庫技術概內述、關系數據容庫、關系資料庫的標准語言SQL、關系資料庫設計、資料庫保護、網路資料庫、網路資料庫管理系統SQL Server 2000、分布式資料庫系統、XML資料庫等
Ⅶ 關於軟考——資料庫系統工程師的培訓
這個考試除了資料庫的知識,其他的知識點很多很雜,還是多看書比較好,沒聽說過這個還有培訓的。多做做真題吧,遇到不會的題目去教材里找相應的知識點,這樣效率高點。你現在可以把資料庫的知識先看看,你給我個郵箱我可以發給你真題的,希望能幫到你
Ⅷ 想從事資料庫,具體該學些什麼
首先 MYSQL,ORCAL,MSSQL這些不復是語言 都是資料庫系統制
學資料庫 首先學 基本的SQL語言,這個對任何資料庫系統都是通用的
然後再深入學習每個數據自己的東西,每個資料庫都有一些自己本身特殊的 和別的資料庫不同的地方
建議學完基本SQL以後先學Oracle的各種函數,PL/SQL部分存儲過程。。
學完這個以後再學其他資料庫就容易多了 因為大體上差不多 就一些細節上不同 日後你就會慢慢發現了
Ⅸ 資料庫培訓需要了解哪些
二、.0話單格式
1、原始話單格式:
struct
{
int Table_id; //每條記錄的唯一標志
CALLID CallID ; //呼叫唯一標志
UL CallIDNum; //話單軌計以序號1,2,-1標識,-1表示該呼叫結束設備
char CallerNo[26]; //主叫號碼
char CalleeNo[26]; //被叫號碼
UL WaitBegin; //等待開始時間
UL WaitEnd; //等待結束時間
UL AckBegin; //應答開始時間
UL AckEnd; //應答結束時間
UL CallBegin; //通話開始時間
UL CallEnd; //通話結束時間
UL ServiceNo; //業務類型號
UL TrkNo; //中繼號
UL ModNo; //模塊號
UL DeviceType; //設備類型 1表示隊列 2表示座席 3表示IVR
UL DeviceNo; //設備號
char DeviceIn[26]; //引導設備
UL CallType; //呼叫類型 0=普通呼叫 1=會議電話呼叫2= KE11呼叫
3=KE15呼叫 4=BP呼叫 5=長途呼叫 6=內部呼叫 7=呼出呼叫
UL WaitCause; //等待原因
UL ReleaseCause; //釋放原因
US SubCCNo; //子系統號,在網路呼叫中心中標識子系統,
目前暫不用,統一為1
US VDN; //VDN編號
US MediaType; //媒體類型
ULONG UVID; //UVID,唯一標識對ICD的一次訪問。
在多種媒體協作呼叫受理時,一次訪問可以包含幾個CallID
USHORT usTrunkGroup; //中繼群號
CHAR OriCalleeNo[MAX_DN_LEN]; //原始被叫號碼
US OriCCNo; //原始網路呼叫中心中標識
CALLID OriCallID; //原始呼叫標志
UL OriServiceNo; //原始業務類型號
US ServiceCCID; //服務提供方的CCID
US DestServiceNo; //目的業務類型
UC ucCustLevel; //客戶級別
UC ucCustClass; //客戶類別
}CALL_LOG_STRUCT