1.EnableSendFile
2.web程序
編程語言,代碼
腳本語言
使用與we應用程序開發的語言或語言框架
支持編譯功能的腳本型語言,編譯成中間代碼,jsp(java bytecode),php(zend engine)(Opcode)
編程語言
效率高
3,加速php
opcode緩存共享 ,APC,eAccelerator,Xcache
Hiphop
php--編譯c++代碼--g++compier編譯成--獨立程序(多線程的可獨立執行web服務器)
4.web與php結合類型
CGI
Module
fastCGI (fpm(5.3.3))
5,數據庫類型
層次模型
倒置樹,與文件系統類似
網狀模型
關係模型
實體---關係,二維關係表
行:具體的實體
列:屬性
沒有行,空表
沒有列,不行
爲了降低存儲冗餘,定義多個實體,通過某屬性建立相互關係。
建立約束關係,數據必須符合某個條件
引用性約束(外鍵約束)
檢查性約束(自定義的檢查條件)
唯一性約束,綜合多個屬性,確定唯一性(允許同時爲空,一張表可以有多個唯一性約束)
候選鍵
主鍵(一張表只能有一個主鍵,不允許爲空,更不許重複)
關係數據設計範式:
對象--關係模型
非關係模型(NoSQL)
NewSQL
6,數據庫服務器
數據存儲
數據管理
數據模型:
邏輯模型:邏輯意義上如何組織
物理模型:數據如何存儲下來
7.數據庫對象
數據庫
表
索引
視圖(虛表)
用戶
觸發器
存儲過程
存儲函數
遊標
8.數據庫操作
顯示:show
創建 create (database|table|index|view|user) db_name
修改 alter (database|table|index|view|user) db_name
刪除 drop (database|table|index|view|user) db_name
DDL :Database Defining Language
9.表操作
增 insert into
INSERT [INTO] tb_name [(col1,col2,…)] VALUE|VALUES (VAL,VAL2….)
刪 delete
DELETE FROM tb_name WHERE condition;
where中的condition對錶中某字段,或某些字段做判定(等值比較,非空比較,正則表達式,通配)
WHERE StuID=2 WHERE StuID>2 WHERE Birthday IS NULL;
% 任意字符 _ 一個字符
WHERE column LIKE %b;
WHERE column RLIKE ‘pattern’
改 update
UPDATE tb_name SET column_name=value WHERE condition(可以複合)
查 select
SELECT 字段 FROM table [ WHERE ];
選取:
投影:
DML :Database Manipulate Language
10.用戶,角色
授權 grant privileges ON db_name.tbname TO ‘username’@’host’ IDENTIFIED BY ‘password’;
權限: ALL PRIVILEGES
host: IP, NETWORK,172.16.%.%
flush privileges;刷新授權表
取消權限 revoke
REVOKE privileges ON dbname_tbname FROM ‘username’@’host’
SHOW GRANTS FOR ‘username’@’host’
DCL: Database Control Language
11.mysql模型
一個請求,一個線程
庫,函數組合
SQL(Structured Query Language)接口:數據庫的shell
SQL標準:ANSI定義
PL/SQ oracle
T-SQL sqlserver
SQL mysql 類似oracle
12.SQL接口,庫接口
13.ODBC: Open DataBase Connection
JDBC:java
14,詞法分析 --語法分析 -- 語句優化
15,變量類型:
存儲空間的大小
存儲數據格式
行:(line)
列:(field):屬性 :名稱,約束,數據類型
16,MySQL數據類型;通常有是修飾符 UNSIGNED
數值型
精確數值型:整型
Tinyint;smallinit;mediumint;init;bigint
近似數值:單精度浮點型float,多精度浮點型double
字符型 :字符串 char(length);最大256 性能好
變動字符串 varchar (length);最大65535
Character set 字符集
collate:排序規則
binary(length)區分大小寫
varbinary(length):區分大小寫,並可變動
Text 文本對象不區分大小寫 tinytext;text;mediumtext;longtext
Blob 二進制大對象區分大小寫
內部類型:
ENUM :枚舉
SET:基本元素的組合
日期時間 :日期;DATE
時間;TIME
日期時間;DATETIME
年:
17,use db_name 默認表
create table tb_name (名稱 約束條件 類型,名稱 約束條件 類型,……)
drop table tb_name
alter table tb_name Drop column_name
alter table tb_name add column_name DATATYPE [first|after column_name)
alter table tb_name change old_name new_name datatype;
alter table tb_name modify column_name datatype
disc table 查看錶信息
18, 鏈接數據庫 mysql –h server –u user –p 密碼
設置密碼set password for ‘usernamed’@’host’=PASSWORD (‘password’)
set password =password(‘password’)設定本用戶密碼
19,DROP USER ‘username’@’host’
lamp下mysql管理工具phpmyadmin
20,mysql建立連接方式
TCP/IP
IPC(客戶端和服務端必須在同一主機):linux(socket),windows(PIPE,MEMORY)
21,配置文件
/etc/my.cnf ---/etc/mysql/my.cnf ---$MYSQL_HOME/my.cnf --- 用戶家目錄/.my.cnf
運行服務進程一般以某個普通用戶的身份運行的。
/etc/lib/mysql
集中式的配置文件,此配置文件爲大多數mysql程序同時提供配置參數
22,apr:apache portable run-time
apr-utils:
Development
X software Development
pcre-devel