1、
建立索引:
a、(普通索引
)->
建立:create index 《索引名》 on tablename (索引字段)
修改:alter table tablename add index [索引名] (索引字段)
創表指定索引:create table tablename([...],index[索引名](索引字段))
b、(唯一索引)->
建立:create unique 《索引名》 on tablename (索引字段)
修改:alter table tablename add unique [索引名] (索引字段)
創表指定索引:create table tablename([...],unique[索引名](索引字段))
c、(主鍵索引)->
它是唯一索引,一般在建立表是建立,格式為:
creata table tablename ([...],primary key[索引字段])2、
優化查詢語句
最好在相同字段進行比較操作,在建立好的索引欄位上儘量減少函式操作
a、例子1:
select * from order where year(orderdate)<2008;(慢)
select * from order where orderdate<"2008-01-01";(快)
b、例子2:
select * from order where addtime/7<24;(慢)
select * from order where addtime<24*7;(快)
c、例子3:
select * from order where title like "%good%";
select * from order where title>="good" and name<"good";3、
mysql函式小結
a、mysql取得當前時間的函式是?
now()
b、格式化日期的函式是?
date()
c、自動 插入當前時間 ?
將列屬性設定為 「timestamp」,設定其 default 為 「current_timestamp」。但是其只對「timestamp"有效。
d、mysql_fetch_row() 和mysql_fetch_array之間有什麼區別?
mysql_fetch_row是從結果集取出1行陣列,作為列舉
mysql_fetch_array是從結果集取出一行陣列作為關聯陣列,或數字陣列,兩者兼得
e、取得查詢結果集總數的函式是?
mysql_num_rows($result);
4、寫出三種以上
mysql資料庫儲存引擎
的名稱myisam
、innodb
、bdb
(berkeley db)、merge、memory(heap)、example、federated、archive、csv、blackhole、maxdb 等等十幾個引擎 5
、mysql資料庫基本的三個優化法則
是什麼,除了增加硬體和
頻寬?(1)系統服務優化,把mysql的key_buffer、cache_buffer、query_cache等增加容量
(2)給所有經常查詢的字段增加
適當的索引
(3)優化sql語句,減少ditinct、
group、join
等等語句的操作 6
、優化mysql資料庫的方法
(1).選取最適用的字段屬性,應該盡量把字段設定為not null,這樣在將來執行查詢的時候,資料庫不用去比較null值。
(2).使用連線(join)來代替子查詢(sub-queries)
(3).使用聯合(union)來代替手動建立的臨時表
(4).盡量少使用 like 關鍵字和萬用字元
(5).使用事務和外來鍵
7、對於大流量的**,採用什麼樣的方法來解決訪問量問題?
首先,確認伺服器硬體是否足夠支援當前的流量
其次,優化資料庫訪問。
第三,禁止外部的盜鏈。
第五,使用不同主機分流主要流量
第六,使用流量分析統計軟體。
8、請簡述資料庫設計的正規化及應用
一般第3正規化就足以,用於表結構的優化,這樣做既可以避免應用程式過於複雜同時也避免了sql語句過於龐大所造成系統效率低下。
第一正規化:若關係模式r的每乙個屬性是不可再分解的,再屬於第一正規化。
第二正規化:若r屬於第一正規化,且所有的非碼屬性都完全函式依賴於碼屬性,則為第二正規化。
第三正規化:若r屬於第二正規化,且所有的非碼屬性沒有乙個是傳遞函式依賴於候選碼,則屬於第三正規化。
9、連線資料庫操作的步驟是什麼?每一步的返回值是什麼資料型別?
$coon = mysql_connect('localhost', 'root' ,''); //返回資源型別
mysql_select_db('bbs', $coon); // 布林型別
mysq_query('set names utf8'); //布林型別
$qry = mysql_query('select * from bbsinfo'); // 資源型別
mysql_fetch_row($qry); // 陣列型別
優化MYSQL資料庫的方法
1 資料庫設計方面,這是dba和architect的責任,設計結構良好的資料庫,必要的時候,去正規化 英文是這個 denormalize,中文翻譯成啥我不知道 允許部分資料冗餘,避免join操作,以提高查詢效率 2 系統架構設計方面,表雜湊,把海量資料雜湊到幾個不同的表裡面.快慢表,快表只留最新資料...
優化MYSQL資料庫的方法
1 選取最適用的字段屬性,盡可能減少定義字段長度,盡量把字段設定not null,例如 省份,性別 最好設定為enum 2 使用連線 join 來代替子查詢 a.刪除沒有任何訂單客戶 delete from customerinfo where customerid notin select cus...
優化Mysql資料庫的方法
第 一 優化索引 sql 語句 分析慢查詢 第二 設計表的時候嚴格按照資料庫的設計正規化來設計資料庫 第三 我們可以加上 memcached 快取,將經常被訪問到的資料,但是不需要經常變化的資料放入至 memcached 快取伺服器裡面 第四 還可優化硬體,在硬體層面,我們可以使用更好的一些硬碟 固...