2011-07-07 35 views
2

我在我的Wamp localhost上運行Drupal 7。如何讓我的本地主機Wamp Mysql更快?

  • 在文件 「my.ini的」 我有:

[wampmysqld]

port  = 3306 
socket  = /tmp/mysql.sock 
key_buffer = 16M 
max_allowed_packet = 1M 
table_cache = 64 
sort_buffer_size = 512K 
net_buffer_length = 8K 
read_buffer_size = 256K 
read_rnd_buffer_size = 512K 
myisam_sort_buffer_size = 8M 
basedir=c:/wamp/bin/mysql/mysql5.5.8 
log-error=c:/wamp/logs/mysql.log 
datadir=c:/wamp/bin/mysql/mysql5.5.8/data 
log = c:/wamp/logs/mysql_query_log.log 

我應該怎麼改變,使其更快?

Gracias!

+2

你的CPU?爲什麼不對你的代碼進行基準測試,看看它是否是責怪而不是堆棧配置? – Raoul

+1

除非您的電腦是2002年的,否則我懷疑您的WAMP堆棧是否是服務器上唯一的瓶頸 – Jacob

+0

您如何測量速度?通過特定腳本的加載時間?也許劇本需要修改。也許你有一個低效率的SQL查詢。也許你正在使用的瀏覽器需要一些微調。有許多變量會影響網絡/數據庫服務器的表觀速度,因此您需要澄清一下,具體而言,哪些因素不起作用。 – JYelton

回答

1

有同樣的問題,我發現這一點:

http://drupal.org/node/551796

對策的探討是從WAMP移動到統一服務器:

http://www.uniformserver.com/

因爲WAMP而xamp只是不能與Drupal和Windows正確配合。

經過許多嘗試,我用Centos + Apache + PHP創建了一個虛擬機,現在所有的運行都很流暢。但是你將需要更多的內存(4Gb至少用於Windows + VM + VM環境)。另一方面,您可以更好地工作,因爲您可以模擬託管服務提供商環境,並且對php和apache模塊和設置的設置文件和兼容性的更改也更少。

編輯:使本地開發數據庫「更快」的另一個提示是將其轉換爲InnoDB的MyISAM。 警告:只爲您的本地WAMP/XAMP開發環境執行此操作!

<?php 
/** 
* Convert all of the tables in the database to MyISAM. 
*/ 
$mysqli = new mysqli("localhost", "<user>", "<pass>", "<db>"); 
// Check connection 
if ($mysqli->connect_errno) { 
    print("Connect failed: " . $mysqli->connect_error); 
    exit(); 
} 
// Get the results 
if ($result = $mysqli->query("SHOW TABLES")) { 
    print("Number of tables: " . $result->num_rows . "<br /><br />"); 
    // For each table, convert to MyISAM. 
    while ($row = $result->fetch_row()) { 
    $table_name = $row[0]; 
    $mysqli->query("ALTER TABLE " . $table_name . " ENGINE=MyISAM"); 
    print($table_name . " converted to MyISAM<br />"); 
    } 
    // Free result set 
    $result->close(); 
} 
$mysqli->close(); 

將代碼保存到一個文件,並從您的瀏覽器運行它。 (該代碼不是我的,但我不記得原來的帖子,如果你發現它編輯帖子並添加他)

相關問題