寫操作多的話,首先存儲引擎得用innodb,考慮到你沒秒23次的寫入,那么一天的數據量接近兩百萬,數據過大,一個月的數據就是很大了,可考慮分表
在黔西南州等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統性、市場前瞻性、產品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供成都做網站、成都網站建設 網站設計制作定制網站開發(fā),公司網站建設,企業(yè)網站建設,成都品牌網站建設,全網整合營銷推廣,外貿網站制作,黔西南州網站建設費用合理。
分兩種情況,一種是前置頁面統計,這個時候統計發(fā)送在點擊的時候,適用于這個鏈接是廣告鏈接,或者其他鏈接。第二種,是頁面打開加入統計,這種適用于SEO或者其他的需要,統計當前頁面到底有多少點擊率,不受前置頁面影響。
在鏈接里面加一個hook。比如
a href="頁面鏈接" onclick="countHit(this)"鏈接文字/a
然后定義一個js函數
function countHit(obj){
var url = $(obj).attr('href');
//這里我使用jq,以鏈接為標準。當然對于廣告可以以
//廣告id為統計 的標準
$.ajax({
url : '你作為統計的php頁面地址';
type : 'post',//使用post是防止瀏覽器直接輸入這個地址而被刷
data:{link:url}//把鏈接地址post傳過去
});
}
在php頁面
$link = addslashes($_GET['link']);//安全處理下,讓link能正常存入
//接下來做有效性判斷,這里省略
$query = mysql_query("SELECT 1 FROM `統計表` WHERE `link`='$link'");
$has = mysql_fetch_array($query);
if($has){
//當前存在統計
mysql_query("UPDATE `統計表` SET hits=hits+1 WHERE `link`='$link'");
}else{
mysql_query("INSERT INTO `統計表` (link,hits) VALUE('$link','1')");
}
這樣就完成了統計內容
當前頁面統計
一般這種統計為某種信息內容的統計,我這里假設是某一條新聞的統計,這個信息里面有個hits字段作為統計
只要在php頁面里面加上
mysql_query("UPDATE `新聞表` SET hits=hits+1 WHERE `id`='新聞id'");
這一句就可以完成統計了
如何設置mysql數據庫訪問次數
對于查詢占主要的應用來說,索引顯得尤為重要。很多時候性能問題很簡單的就是因為我們忘了添加索引而造成的,或者說沒有添加更為有效的索引導致。如果不加索引的話,那么查找任何哪怕只是一條特定的數據都會進行一次全表掃描,如果一張表的數據量很大而符合條件的結果又很少,那么不加索引會引起致命的性能下降。但是也不是什么情況都非得建索引不可,比如性別可能就只有兩個值,建索引不僅沒什么優(yōu)勢,還會影響到更新速度,這被稱為過度索引。
mysql要實現定時執(zhí)行sql語句就要用到Event
具體操作如下:
先看看看event 事件是否開啟
show variables like '%sche%';
如沒開啟,則開啟。需要數據庫超級權限
set global event_scheduler =1;
創(chuàng)建存儲過程 update_a (注:就是你要執(zhí)行的sql語句)
mysql create procedure update_a() update a set a.y_avg=(select avg(b.youhao) from b where a.a_id=b.a_id);
創(chuàng)建一個定時任務:event e_updateA
mysql create event if not exists e_updateA
- on schedule every 60 second ---設置60秒執(zhí)行一次
- on schedule at date_add(now(),interval 1 minute) ---在一分鐘后執(zhí)行
- on completion preserve
- do call update_a(); ---執(zhí)行update_a()存儲過程
創(chuàng)建Event之后,sql語句就定時執(zhí)行一次。
關閉事件任務