版權聲明:筆記整理者亡命小卒熱愛自由,崇尚分享。但是本筆記源自www.jtthink.com(程序員在囧途)沈逸老師的《web級mysql顛覆實戰課程 》。如需轉載請尊重老師勞動,保留沈逸老師署名以及課程來源地址。
一、MYSQL安裝設置簡述。
1、本課程基於MYSQL 5.7.9教學。
2、課程使用的是centos 6.7作為服務器版本
進入官網,選擇 http://dev.mysql.com/downloads/repo/yum/
直接的地址(本課程服務器)http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm
安裝步驟:http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/
3、登錄MySQL測試:mysql -h localhost -u root -P. 默認密碼為空。
二、修改密碼與一些基本注意點。
首先參考手冊 :http://dev.mysql.com/doc/refman/5.7/en/upgrading-from-previous-series.html#upgrade-system-table-changes
1、使用臨時密碼進入修改初始密碼:
ALTER USER USER() IDENTIFIED BY ‘ YOUR PASSWORD ';
2、使用NAVICAT連接數據庫。
三、新建一個庫 jtthink,選擇庫屬性->字符集 utf8 -- UTF-8 Unicode,規則utf8_general_ci。
四,InnoDB與MyISam.
1、InnoDB支持外鍵和事務,而MyISam並不支持。
2、事務性表應該使用InnoDB.頻繁讀取如select操作很頻繁的應該使用MyISAM引擎。
3、使用show table status from 數據庫名 ;查看該庫用所有表的基本狀態,包括引擎。
4、新建一張表 user_sys
id不為空,自動遞增。
user_regdate,默認current_timestamp.
我們使用show table status from jtthink 就可以看到 user_sys表的Engine為 InnoDB.
5、我們復制user_sys表,更名為 user_sys2.並設計表->選項->引擎更改為MyISAM.
6、我們寫一個存儲過程,插入10條數據,然后比較兩個引擎的效率。
在NAVICAT里,點擊函數,選擇過程。
1 BEGIN 2 set @num=1; -- 設置一個變量 3 while @num<20 DO 4 if t=1 then 5 insert into user_sys(user_name,user_pwd) values(concat('user',@num),'password'); 6 7 ELSE 8 insert into user_sys2(user_name,user_pwd) values(concat('user',@num),'password'); 9 end if; 10 set @num=@num+1; -- 變量加1 11 end while; 12 END
7、使用call 函數名(參數)插入數據
8、結果,完全不是一個數量級。
表一:
表二、
好了,我們為下節課做准備,給兩個表分別灌入1萬條數據。
下一篇:mysql顛覆實戰筆記(二)-- 用戶登錄(一):唯一索引的妙用