1.mysql的配置檔案
一 、linux:/etc/my.cnf檔案 windows:my.ini檔案
二進制日志logbin:主從複制 錯誤日志:預設是關閉的,記錄嚴重的警告和錯誤資訊,每次啟動和關閉的詳細資訊。
查詢日志:log
資料檔案:.myd(存放資料) .myi(存放索引) frm(存放表結構)
二、mysql的邏輯結構
從上到下分别為連接配接層 (用戶端連接配接), 服務層(SQL分析優化緩存等等),存儲引擎層(真正負責資料存儲和提取)資料存儲層(資料存儲在檔案系統上,并完成與存儲引擎層的互動)
三、索引優化分析
性能下降,執行時間長,等待時間長的可能原因:查詢語句不好、索引失效、關聯查詢太多、伺服器調優各個參數(緩沖,線程數)
SQL執行語句的順序:
機器讀取的順序:先從from 開始 ;下面是SQL解析的時序圖;
表結構(notepad++中修改):
create table `tbl_dept` (
`id` int(11) auto_increment,
`deptName` varchar(30) default null,
`locAdd` varchar(40) default null,
primary key(`id`)
)engine=innodb auto_increment=1 default charset=utf8;
create table `tbl_emp` (
`id` int(11) auto_increment,
`name` varchar(20) default null,
`deptId` int(11) default null,
primary key(`id`),
key `fk_dept_id` (`deptId`)
#constraint `fk_dept_id` foreign key(`deptId`) references `tbl_dept`(`id`)
)engine=innodb auto_increment=1 default charset=utf8;
insert into tbl_dept(deptName,locAdd) values('RD',11);
insert into tbl_dept(deptName,locAdd) values('HR',12);
insert into tbl_dept(deptName,locAdd) values('MK',13);
insert into tbl_dept(deptName,locAdd) values('MIS',14);
insert into tbl_dept(deptName,locAdd) values('FD',15);
insert into tbl_emp(Name,deptId) values('z3',1);
insert into tbl_emp(Name,deptId) values('z4',1);
insert into tbl_emp(Name,deptId) values('z5',1);
insert into tbl_emp(Name,deptId) values('w5',2);
insert into tbl_emp(Name,deptId) values('w6',2);
insert into tbl_emp(Name,deptId) values('s7',3);
insert into tbl_emp(Name,deptId) values('s8',4);
insert into tbl_emp(Name,deptId) values('s9',51);