標籤:insert create databases values tables
第一章命令及解釋
show databases; |
查看資料庫 |
create table t(id int,name varchar(20)); |
建立表 |
desc t; |
查看錶結構 |
insert into t values(1,‘bbk‘); |
插入表 |
select * from t; |
查看錶 |
delete from t; |
刪除表中內容,不會刪除表本身 |
show tables; |
查看錶 |
select * from t; |
查看錶中內容 |
第二章版本相關知識
Mysql命名機制使用由3個數字和一個尾碼組成
5.0.9 5代表主要版本號 0代表發行層級 9代表發行行系列的版本號碼
穩定性層級
Alpha 表明發行包含大量未被徹底測試的新代碼
Bata 當alpha版本至少一個月沒有出現報導的致命漏洞
Rc 是發布代表。是一個發行了一段時間的beta版,看起來應該運行正常,只增加了很小的修複。
如果沒有尾碼,這意味著該版本已經在很多地方運行一段時間了,而且沒有非平台特定的缺陷報告(GA)版
650) this.width=650;" title="msyqltu.jpg" alt="wKioL1UgC6iA1uhVAABZTzHFSlc610.jpg" src="http://s3.51cto.com/wyfs02/M02/5D/0E/wKioL1UgC6iA1uhVAABZTzHFSlc610.jpg" />
獲得mysql
www.oracle.com
http://dev/mysql.com/downloads/
mysql啟動
./bin/mysqld_safe --user=mysql & |
啟動mysql |
vim /etc/init.d/mysqld 編輯mysqld 啟動程式,對其進行設定 |
46 basedir=/application/mysql-5.5.32 |
指定了mysql資料庫安裝在哪個路徑下 |
47 datadir=/application/mysql-5.5.32/data |
指定了mysql資料庫放到了哪裡 |
Mysql是一個單進程,多線程的程式。
線程比進程快的原因:不用堆資料的複製
第三章源碼包檔案說明
Sql [[email protected] sql]# vim mysqld.cc |
Msyql主程式目錄 |
[[email protected] sql]# ls sql* |
Mysql伺服器啟動並執行主要程式 |
[[email protected] sql]# ls *insert* |
mysql插入的原始碼 |
[[email protected] sql]# ls *handler* |
Cc 為雞肋 h 為標頭檔 |
[[email protected] mysql-5.5.32]# ll storage/ |
儲存引擎目錄,實現了handler抽象介面。主要包括以下檔案 |
archive csv federated innobase myisammrg perfschema blackhole example heap myisam ndb |
Federated |
操作遠端資料表 |
Innobase |
支援事物 一般業務都是用這個儲存引擎 |
Myisam |
預設的儲存引擎 |
/usr/src/mysql-5.5.32/mysys |
Mysql為了實現跨平台對系統庫進行的封裝 |
/usr/src/mysql-5.5.32/vio |
封裝了各種網路通訊協定的網路操作 |
/usr/src/mysql-5.5.32/libmysqld |
Mysql連結庫原始碼 |
通過尋找main 函數,可以看到mysql的啟動流程。
Mysql支援外掛程式式的儲存引擎。(第三方公司可以開發自己的外掛程式,放入進入,就可以執行自己的sql引擎。)
如果要開發自己的儲存引起要開發這個雞肋。
本文出自 “晴空” 部落格,謝絕轉載!
觀看小輝老師mysql視頻總結文檔