原创 pt-online-schema-change和XtraBackup的工作原理

一.直接執行 alter table XXX  ……1.按照原始表(original_table)的表結構和DDL語句,新建一張不可見的臨時表。2.在原表上加write lock,此時對原表的所有U D I DDL 都是阻塞的。3.執行in

原创 innobackupex 部分表恢復

一.測試環境(Mysql5.5.27-log Mysql5.6.12-log)create table innobackup(id int,name varchar(20))engine=innodb;insert into innobac

原创 Linux最大打開文件描述符數

1.    系統最大打開文件描述符數:/proc/sys/fs/file-maxa.    查看$ cat /proc/sys/fs/file-max1864052. 設置a.    臨時性# echo 1000000 > /proc/sy

原创 Mysql組合索引順序問題

環境:mysql-5.5.36測試表:組合索引idx_id_name(`id`,`name`)1.1 過濾條件不是索引前綴且查詢列不在組合索引中:不能使用索引1.2過濾條件不是索引前綴且查詢列都在組合索引中:使用索引但是性能不佳先通過:*

原创 MySQL 對普通用戶(沒有super)開啓審計功能

最近有發現有壞蛋delete 了數據,找不到是哪個user 哪個host,發現mysql 是可以對沒有super 權限的用戶開啓審計功能,oracle早就實現了,只需要打開參數即可。1.在my.cnf [mysqld]組下加入init-co

原创 我的友情鏈接

51CTO博客開發位鵬飛mysql 實驗室阿里雲DBA51cto版主申請MySQL絕好文章幾乎MySQL所有書籍AWK學習筆記linux/Mysql運維網redis入門丁奇博客海底蒼蠅淘寶核心系統團隊博客NetEase Mysql彭立勳葉金

原创 MySQL online ddl

前言:5.1 和 5.5 innodb plugin 支持Fast index create:Fast index create 如何實現的? 只是對於 secondary index ,不需要copy table data。執行過程:1.

原创 MySQL order by後對其他索引的干擾,導致優化器走錯索引

MySQL version:[email protected] 5.5.36-log xxx 10:19:54>show index from FD_FINANCE_ACC_HIS;+--------------------+--

原创 關於MySQL InnoDB表的二級索引是否加入主鍵列的問題解釋

關於MySQL InnoDB表的二級索引是否加入主鍵,總結如下:1對於MySQL InnoDB表的二級索引是否加入主鍵,官方也有明確的說明,建議線上MySQL的二級索引創建時強制加入主鍵所有的列,可以做到所有的MySQL 版本統一。2.My

原创 zabbix監控管理維護腳本

zabbix監控的機器越來越多,新增機器很頻繁,廢棄的,每天都在手動同樣的事情,寫了個腳本自動維護,已經加入到MySQL初始化安裝、機器下線、高可用等流程中,自動處理:腳本如下:#!/usr/bin/python  #coding:utf-

原创 MySQL 行子查詢優化

1.什麼是行子查詢:select t1.*,(select vn from t2 where t2.c.1=t1.c3 limit 1) where t1.cn='xxx' .... 類似每行通過一個子查詢來查詢獲的結果,都是行子查詢。2.

原创 MySQL 5.6 查詢優化器改進

一.ICP注意一下ICP的使用條件:只能用於二級索引(secondary index)。explain顯示的執行計劃中type值(join 類型)爲range、 ref、 eq_ref或者ref_or_null。且查詢需要訪問表的整行數據,

原创 pt-online-schema-change 修改字段屬性產生死鎖

死鎖信息如下:2015-06-15 22:23:18 7f0266772700*** (1) TRANSACTION:TRANSACTION 1834696957, ACTIVE 0 sec setting auto-inc lockmys

原创 MySQL 走錯索引導致驅動表選錯

原sql:select count(*) from mpay_order mpayOrder inner join mrecharge_order_info orderinfo on mpayOrder.order_num = orderi

原创 Seconds_Behind_Master之困惑與解釋

1.以前一直對這個參數很模糊,今天閒下心來看源碼文件 sql/rpl_slave.cc (MySQL 5.6.16)if (mi->rli->slave_running)      {       /* Check if SQL threa