原创 關於B樹/B+樹/B*/LSM對比

0. 前言動態查找樹主要有:二叉查找樹、平衡二叉樹、紅黑樹、B樹、B+樹。前面三種是典型的二叉查找樹,查找的時間複雜度是O(log2N)。涉及到磁盤的讀寫(比如每個節點都需要從磁盤獲取),讀寫的速度就與樹的深度有關係,那麼降低樹的深度也就可

原创 redis主從+哨兵sentinel+VIP高可用結構

前言哨兵sentinel是redis自帶的高可用程序,可以發現並自動切換主從狀態的redis服務配置,而且哨兵sentinel還可以支持管理多套redis主從.而應用可以通過類似jedis的驅動直接連接哨兵,來實現高可用.jedis會在哨兵

原创 使用Redis-port遷移數據

遷移介紹Redis-port是一款開源的數據批量傳輸工具,主要用於Redis節點間的數據庫同步,該工具具備以下功能:dump生成緩存快照,將緩存數據導出爲rdb文件。decode解析rdb文件,查看數據分佈情況。restore將rdb文件恢

原创 使用redis-rdb-tools分析reids的rdb文件內存使用情況

前言解析redis的dump.rdb文件,分析內存,以JSON格式導出數據。提供的功能有:1. 生成內存報告2. 轉儲文件到JSON3. 使用標準的diff工具比較兩個dump文件Rdbtools是以python語言開發的。安裝2.1 前提

原创 [MySQL FAQ]系列 — 爲什麼InnoDB表要建議用自增列做主鍵

我們先了解下InnoDB引擎表的一些關鍵特徵:InnoDB引擎表是基於B+樹的索引組織表(IOT);每個表都需要有一個聚集索引(clustered index);所有的行記錄都存儲在B+樹的葉子節點(leaf pages of the tr

原创 Dynomite入門指南

dynomite原理簡介有問題歡迎討論項目地址:https://github.com/Netflix/dynomite文檔地址:https://github.com/Netflix/dynomite/wikiredis命令支持情況:http

原创 linux系統字符編碼詳解

    衆所周知,地球上的語言多種多樣,在計算機世界,自然也是要適應各種語言.我們安裝各種系統的時候也是明示了要選擇語言環境和支持的語言環境.    而linux系統的字符編碼設置尤爲複雜,這可能也是沒有考慮到非技術人員去研究這些東西吧. 

原创 mysql字符集與校對規則---大小寫敏感那點事

    在關係型數據庫中,oracle/sql_server/db2都有對數據進行區分大小寫,不過mysql有點奇怪,對數據不區分大小寫,詳細情況請看下面解析.    MySQL在Linux下數據庫名、表名、列名、別名大小寫的默認規則是這樣

原创 iotop簡介

iotop顧名思義就是監控磁盤io狀況的,不過他比iostat並沒有優秀多少,只是獨立統計了每個進程的io狀況,比較清晰明瞭的看出來究竟是那個進程IO佔用比較高,這點比較方便.安裝和使用都很簡單:安裝:yum install -y ioto

原创 chattr命令,設置linux文件的隱藏權限

很不幸,我公司的服務器被***光顧了,安插了一個名字叫8899的惡意程序文件在tomcat下面的bin目錄,還好我火眼金睛,用top看出了端倪,竟然發現ps命令也被他替換了,真是有點麻煩了,不過沒關係,去虛擬機拷一個替換就好.然而重點是,這

原创 iftop工具簡介

日常運維工作中,流量監控和分析是最難做到的,一般情況下我們要結合netstat和網卡流量來分析,相當麻煩.不過強大的linux社區讓一切都可以變得簡單,流量監控分析工具應運而生,其中比較出名的,正是iftop.iftop(流量監控工具)安裝

原创 自己總結的數據庫設計規範

1.數據架構和容量規劃相關    a.總數據量的預估,一年或兩年爲期限    b.是否關聯其他數據庫和環境    c.數據重要性,是否需要集羣和備份級別的要求        ps:數據重要性大體分爲:完全不可丟失,丟一些可以接受,丟一部分可

原创 我的友情鏈接

知書堂培訓彭立勳何登成簡朝陽周振興玄慚葉金榮吳炳錫鄧亞運黃小剛邱文輝微風戲雨神諭for DBA

原创 NGINX安全配置和限制訪問

說起網絡***,可能很多人只知道大名鼎鼎的DDOS***,這種***廉價且效果出衆,直接通過第四層網絡協議用他的帶寬把你的帶寬頂掉,造成網路阻塞,防不勝防,就連騰訊這種大鱷公司也被大流量DDOS搞過焦頭爛額。暫時的解決方法只有三種,第一種就

原创 processlist中哪些狀態要引起關注

一般而言,我們在processlist結果中如果經常能看到某些SQL的話,至少可以說明這些SQL的頻率很高,通常需要對這些SQL進行進一步優化。今天我們要說的是,在processlist中,看到哪些運行狀態時要引起關注,主要有下面幾個:狀態