天天看點

分析索引效率

方法:在一般的SQL語句前加上explain; 

  分析結果的含義: 

  1)table:表名; 

  2)type:連接配接的類型,(ALL/Range/Ref)。其中ref是最理想的; 

  3)possible_keys:查詢可以利用的索引名; 

  4)key:實際使用的索引; 

  5)key_len:索引中被使用部分的長度(位元組); 

  6)ref:顯示列名字或者"const"(不明白什麼意思); 

  7)rows:顯示MySQL認為在找到正确結果之前必須掃描的行數; 

  8)extra:MySQL的建議; 

"

show processlist;列出每一筆聯機的資訊。 

show variables;列出mysql的系統設定。 

show tables from db_name;列出db_name中所有資料表; 

show [full] columns from table_name;列出table_name中完整資訊,如欄名、類型,包括字元集編碼。 

show index from table_name; 列出table_name中所有的索引。 

show table status;;列出目前資料庫中資料表的資訊。 

show table status from db_name;;列出目前db_name中資料表的資訊。 

alter table table_name engine innodb|myisam|memory ;更改表類型 

explain table_name / describe table_name ; 列出table_name完整資訊,如欄名、類型。 

show create table table_name 顯示目前表的建表語句 

alter table table_name add primary key (picid) ; 向表中增加一個主鍵 

alter table table_name add column userid int after picid 修改表結構增加一個新的字段 

alter table table_name character set gb2312 改變表的編碼 

select user(); 顯示目前使用者。 

select password(’root’); 顯示目前使用者密碼 

select now(); 顯示目前日期 

flush privileges 在不重新開機的情況下重新整理使用者權限 

mysqld –default-character-set=gb2312 ;設定預設字元集為gb2312 "

1

"MyISAM 存儲引擎( 非事物存儲引擎 ):所有資料都存放在 Mysql 配置中所設定的 Datadir 目錄下。

MyISAM 存儲引擎除了備份 Mysql 系統共有的實體檔案外,有三個檔案需要備份,記錄表結構中繼資料的 .frm 檔案、存儲表資料的 .MYD 檔案、存儲索引資料的 .MYI 檔案。

2、Innodb 存儲引擎( 事務性存儲引擎 ):存放資料的位置取決于對 Innodb 的相關配置。

決定 Innodb 存放資料位置的參數:Innodb_data_home_dir 、Innodb_data_file_path 、Innodb_log_group_home_dir( 指定了資料和日志檔案存放的位置 )

決定 Innodb 表空間存儲方式參數:Innodb_file_per_table( 決定 Innodb 是以共享表空間還是獨享表空間存儲資料 )

如果使用共享表空間存儲方式,Innodb 需要備份 Innodb_data_home_dir 和 Innodb_data_file_path 所設定的資料檔案及 Datadir 中相應的資料目錄下的所有 Innodb 存儲引擎表的 .frm 檔案。

如果使用獨享表空間存儲方式,除了備份上面所有檔案外,還要備份 Datadir 中相應資料目錄下的所有 .idb 檔案( 該檔案中存放的才是獨享表空間方式下 Innodb 存儲引擎表的資料 )。

## 使用獨享表空間時,資料并不是全部放在 Datadir 下資料庫目錄下的 .ibd 檔案中,這裡存放的隻是表資料而以。

## Innodb 是事務存儲引擎,它的 undo 和 redo 資訊,不管是使用獨享還是共享表空間存儲資料,與事務相關的 undo 資訊以及其它一些中繼資料資訊,

## 都是存放在 Innodb_data_home_dir 和 Innodb_data_file_path 這兩個參數所設定的資料檔案中的。是以這兩個目錄下的資料檔案不管什麼情況( 實體備份 )都必須備份。

Innodb 還有自己存放 redo 資訊和相關事務資訊的日志檔案在 Innodb_log_group_home_dir 參數所設定的位置,這裡的所有日志檔案也必須備份。"