python | mysql 筆記

  1. 存儲引擎:存在引擎就是存儲機制,數據按照什麼樣方式存儲,怎麼存

   查看全部存儲引擎mysql

   show engines\Gredis

概念:

事務:

  操做一系列sql語句,只有都執行成功的纔算成功,有一個不成功,就恢復到最初始的狀態,這個就是事務算法

表級鎖:

  有一我的在修改這張表,就會上鎖,其餘人不能修改sql

  特色:內存開銷大小,不支持併發數據庫

行級鎖:

  有一我的在修改這張表中的一條記錄(數據),這個條數據就會上鎖,其餘人不能修改這個條數據緩存

  特色:內存開銷大,支持併發服務器

  (通常使用在大型網站例如:淘寶,京東 其中修改一條數據不能同時修改,可是其餘數據是能夠修改的,表級鎖不能夠)併發

外鍵:

    把多張表經過一個字段關聯到一塊兒,叫作外鍵(通常同表的ID來創建表的關聯的)負載均衡

  

  種類:

  InnoDB : 5.6 以後默認的存儲引擎網站

      特色: 支持實務,行級鎖,外鍵

  MyISAM :5.6 以前默認的存儲引擎

      特色:表級鎖.

  MEMORY :用內存來存儲數據(緩存)[目前更多使用的是redis數據庫,來取代]

       特色:速度快,不能進行持久化存儲

       (redies,若是在斷開時候,會生成一個文件,因此起到一個持久存儲的做用)

  BLACKHOLE:黑洞, 用做同步數據的一種引擎方式,[主從數據庫集羣]

        特色:全部數據不會寫入,可是會提示成功,

  

  BLACKHOLE使用場景

  ***** 如圖 :用戶訪問網站時候,先經過負載均衡系統,來進行用戶的分發,底層會用一些相似取模的算法,給用戶進行分配,目的讓服務器,所抗住的併發均衡;

      有的用戶須要查詢,有的用戶須要修改或者添加,可是總體查詢次數會遠遠大於增刪改的次數,

      那麼這時搭建主從數據庫,主數據庫主要負責寫入,從數據庫負責讀取,

      爲了讓主從數據庫,數據同步,中間加上一臺服務器,用於同步,那麼這臺服務器所用的存儲引擎就是blackhole

      專門幫助主數據庫進行binlog日誌生成和分發,從數據庫拿到binlog日製後,開始同步本身的數據

      這樣好處,主數據只專一寫入,不用考慮分發其餘數據等操做,減小服務器的壓力;

      中間blackole 的mysql 服務器不須要生產或者消費數據,只是單純的過濾生產binlog日誌,因此選擇blackhole存儲引擎.

    

相關文章
相關標籤/搜索