1. 程式人生 > >2015年辛星MySQL教程春季版第二本進階提升

2015年辛星MySQL教程春季版第二本進階提升

   經過了幾天的編寫,2015年的辛星MySQL教程第二本終於完工,它的定位是進階提升,下載地址為:進入下載地址 ,全書共計120頁左右,所有案例都是在win7下測試完成的,它主要介紹的內容有檢視、觸發器、儲存過程、事務、鎖、MyISAM、InnoDB和其他引擎。

    對於檢視,應該來說是一個比較好懂的概念,而且MySQL的檢視本身功能也簡單,需要注意的就是檢視的更新、檢視的建立,對於檢視的演算法等問題,我們並不用關注太多,檢視可以用來作為快取或者彙總這樣的功能性的表來使用,我們可以用觸發器來維護它。

   對於觸發器,它可以幫忙我們自動完成一些功能,對於MySQL來說,目前並不支援語句級觸發,只支援行級觸發,而且對於每一個時間、每一種型別的事件、對同一個表也只能定義一種型別的觸發器。

  對於儲存過程,它通常也包括函式,不過本書中把遊標、異常(也有的書中叫做條件)也給包含了進去,應該說儲存過程會在很大程度上改變應用程式的使用邏輯,使得對資料的操作更接近MySQL,而不是更接近應用程式。

  對於事務,就涉及到InnoDB儲存引擎了,事務的原子性、一致性和永續性都是通過redo和undo日誌來實現的,redo日誌即重做日誌,undo日誌用來實現回滾,而隔離性則由鎖機制來實現,InnoDB在repatable  read隔離級下可以達到標準SQL的serializable的要求,因此MySQL使用此隔離級,是完全沒有問題的。

  對於鎖機制,它因為MyISAM和InnoDB的引擎的不同而不同,MyISAM的鎖是表鎖,它分為讀鎖和寫鎖,而InnoDB則是行級鎖,它是分為排他鎖和共享鎖,我們可以在select語句上進行加鎖,我們使用lock  in share  mode來加共享鎖,使用for  update來加寫鎖,還介紹了死鎖的情況。

  對於MyISAM和InnoDB,裡面介紹了它們的檔案結構、引擎特色等一些操作上的東西,具體的就不介紹了,還是在教程中直接檢視吧。