天天看點

php mysql 配置

zend下載下傳位址見本帖附件

PHP加速軟體eaccelerator 下載下傳位址見本帖附件

好,工具準備完畢,下面開始我們的配置環境。

一:讓 IIS6.0 支援 PHP -=> php4.3.9 的安裝配置

不建議使用安裝版 這裡選用了 php4.3.9 的解壓版

第一步 解開php-4.3.9-Win32.zip壓縮包 你可以把它放在C:\PHP下面 

第二步 把 C:\PHP下面的 php.ini-dist 檔案複制到C:\WINDOWS目錄下 并改名成php.ini 根據不同情況你可以自行修改某些參數 首先 我們需要告知PHP在何處可以找到其擴充功能子產品檔案 下面修改 C:\windows\php.ini 檔案 需要注意的如下 

查找 extension_dir 字串 修改為你 PHP 目錄裡 extensions 的路徑: 

; Directory in which the loadable extensions (modules) reside 

extension_dir = "C:\php\extensions"

如上 設為PHP檔案的所在目錄即可 本例中可以設為“extension_dir= "C:\php\extensions"” 

第三步 把 C:\php\php4ts.dll 複制到 C:\windows(winnt)\system32目錄下

第四步 控制面版——》管理工具——》Internet服務管理器——》點選“Web 服務擴充”——》在右邊視窗點選“添加一個新的 Web 服務擴充”——》擴充名為 “PHP”——》再點選“添加”——》在出現的視窗裡填上“C:\PHP\sapi\php4isapi.dll” 并确定 然後再點選 Web 服務擴充 PHP 并選擇允許 如圖所示

第五步 在“預設網站屬性”視窗上按 “主目錄”标簽 點“配置”按鈕 在彈出的“映謝”視窗中點取“添加”按鈕,在彈出的“添加/編輯應用程式擴充名映像”對話框中的“可執行檔案”文本框中輸入“c:\PHP\sapi\php4isapi.dll” “擴充名”文本框中輸入“.php”(注意一定要有那個點) 并勾選 "檢查檔案是否存在"項  确定 如圖所示

第六步 在“預設Web站點屬性”視窗上點取“ISAPI篩選器”标簽,點選“添加”按鈕,在彈出的“篩選器屬性”視窗的“篩選器名稱”中輸入“PHP” “可執行檔案”中浏覽標明“c:\PHP\sapi\php4isapi.dll” 然後确定  如圖所示

A:先停止 IIS 6.0的運作 再重新啟動IIS 6.0 意在開始對 PHP 加載 見圖

B:在“預設Web站點屬性”視窗上點取“ISAPI篩選器”标簽 如果看到 PHP 的箭頭綠色且向上 證明 PHP 已經被 IIS 6.0 順利加載起來了 見圖

第七步 在“預設網站屬性”視窗上按 “主目錄”标簽 修改 如果在IIS6.0裡對PHP配置為CGI運作模式 即全部加載PHP.exe 執行權限 為“腳本和可執行檔案” 反之 運作在ISAPI模式下 即全部加載PHP4isapi.dll 則保持預設的"純腳本"即可 這樣可進一步加強系統的安全性 應用程式池 為 “ DefaultAppPool” 确定即可 如圖所示

到了這一步 對配置PHP環境就算完成了

配置完成後 如果想測試 PHP 是否已經安裝成功 可以在空間裡根目錄下建立一個檔案 如 test.php 然後寫入下面的語句

<?

phpinfo();

?>

儲存後 用IE通路這個檔案

http://位址/test.php  

如果能見到這熟悉的頁面 對配置PHP環境就真正成功了

當然 你也可以配置成 PHP運作在CGI模式

具體方法就是把原來設定的路徑“ c:\PHP\sapi\php4isapi.dll ” 改為 “ c:\php\php.exe “%s” %s ” 然後把 “ 檢查檔案是否存在 ” 取消 然後确定 基本設定完成

最後測試......

如果出現 CGI Error

The specified CGI application misbehaved by not returning a complete set of HTTP headers...  

這是代表php是以CGI模試運作的 在php.ini找到 gi.force_redirect 把前面的分号去掉 把值改成0就行了 

再次運作 成功了吧 這是PHP另一種運作模式的配置方法

下一步來配置eaccelerator

讓論壇速度更快 PHP加速設定 PHP加速:eaccelerator(用Turck MMcache會出現一些莫名其妙的錯誤,是以大家還是用eaccelerator吧)

下載下傳下面附件中的eaccelerator_win_4[1].3.9.rar 

解壓縮,把他放到C:\php\extensions\裡

然後打開c:\windows\php.ini

搜尋;extension=php_zip.dll

在下面添加

[eaccelerator]

zend_extension_ts="C:\php\extensions\eaccelerator.dll" 

eaccelerator.shm_size="64"

eaccelerator.cache_dir="F:\tem\"

注意上面的F:\tem\是用來放緩存的地方~不推薦大家把tem放在系統盤,這個大家可以自己定義.

下一步來配置zend,下載下傳位址看本帖附件

  Zend Optimizer用優化代碼的方法來提高PHP 4.0應用程式的執行速度。實作的原理是對那些在被最終執行之前由運作編譯器(Run-Time Compiler)産生的代碼進行優化。一般情況下,執行使用Zend Optimizer的PHP程式比不使用的要快40%到100%。這意味着網站的通路者可以更快的浏覽網頁,進而完成更多的事務,創造更好的客戶滿意度。更快的反應同時也意味着可以節省硬體投資,并增強網站所提供的服務。是以,使用Zend Optimizer,就等于提高了電子商務的盈利能力。Zend Optimizer能給PHP使用者帶來很多益處,特别是那些營運網站的人。快速運作PHP程式可以顯著降低伺服器的CPU負載,并可以減少一半的反應時間,也就是從通路者點選連結到伺服器開始讀取頁面之間的時間。 

安裝Zend Optimizer優化PHP程式

Zend Optimizer的安裝很簡單

1、運作安裝檔案,首先提示你選擇安裝目錄,選擇一個你喜歡的目錄,單擊“Next”。

2、安裝向導會要求你選擇目前使用的WEB伺服器(Apache、IIS或其它),選擇好伺服器後單擊“Next”

3、安裝向導提示您确認php.ini的位置(預設是C:\WINDOWS\)單擊“Next”,提示“備份php.ini到C:\WINDOWS\php.ini-Optimizer-bak,當解除安裝該軟體時可以恢複到原始的php.ini)單擊“Next”。

4、安裝向導提示“為了繼續安裝程式需要重新啟動IIS服務)單擊“是”,安裝程式開始重新啟動IIS服務,然後安裝程式會提示“IIS服務順利重新啟動了”單擊“确定”,再單擊“finish”完成安裝。

5、安裝完畢後程式會自動根據你的選擇來修改php.ini幫助你啟動這個引擎。下面我們來介紹Zend Optimizer的配置選項,幫助你最大化自定義合理的配置。

[Zend]

zend_optimizer.optimization_level=15

zend_extension_ts="C:\Program Files\Zend\lib\ZendExtensionManager.dll"

zend_extension_manager.optimizer_ts="C:\Program Files\Zend\lib\Optimizer-2.5.5"

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

zend_optimizer.optimization_level=1023

zend_optimizer.encoder_loader=0

zend_extension_ts="C:\Program Files\Zend\lib\ZendOptimizer.dll"

(網上資料中所看到的内容,也許是版本不同造成的内容有差異)

現在我們來介紹上邊這些配置檔案中相關内容的含義:

zend_optimizer.optimization_level 《== 優化程度,這裡定義啟動多少個優化過程。

zend_optimizer.encoder_loader 《== 是否允許處理由Zend Encoder加密的PHP檔案。

zend_extension_ts 《== 優化器所在目錄。

zend_extension_manager.optimizer_ts 《== 優化器管理所在目錄。

優化過程 zend_optimizer.optimization_level 詳細解釋

這裡最為重點的部分,仔細看!Zend Opt總共有10個優化過程,從理論上說開的越多性能越好。當然,理論和實際永遠都存在着差距。優化過程開啟的越多對性能消耗也相對也越大,Zend Opt的10個優化過程并不相同也就是說效果不是平均的。Zend公司定義的最高值(High模式)為15,這裡15指的是開啟1-4号優化過程。當然,很多朋友并不滿足于此,畢竟最高也隻開啟4個優化過程連總數的一半都沒有。各個優化過程的對應的數字代碼(值)如下:

不使用 0 <= 如果這樣不如不裝,還能節約點記憶體說!

優化過程1(PASS1) 1

優化過程2(PASS2) 2

優化過程3(PASS3) 4

優化過程4(PASS4) 8

優化過程5(PASS5) 16

優化過程6(PASS6) 32

優化過程7(PASS7) 64

優化過程8(PASS8) 128

優化過程9(PASS9) 256

優化過程10(PASS10) 512

以何種方式開啟優化過程是通過這些數字代碼(值)相加所得的和作為此參數的參數值來控制的。如我的配置檔案中zend_optimizer.optimization_level = 1023 , 這裡的1023是優化過程1到優化過程10全部數字代碼(值)相加得到的和,表示開啟全部10個優化過程。剛才所提到的Zend公司定義的High模式值為15,15表示同時開啟優化過程1-4。

加密代碼支援 zend_optimizer.encoder_loader 詳細解釋

對于這個參數,我想如果沒有看過Zend Opt FAQ文檔的朋友大多數并不知道。這個參數用來告訴Zend Opt是否去支援被Zend Encoder加密過的代碼。預設情況下Zend Opt将支援加密過的代碼。如果不使用被加密過的代碼我推薦你關閉此選項。這個功能牽扯到解包反碼的過程,會導緻系統負荷的加重。我的朋友已經開發完畢相應的反編譯工具,預計春節之後推出。

這個參數的值隻有兩個 0 關閉, 1 開啟。預設為1,推薦設定為0。

子產品定位 zend_extension_ts 、zend_extension_manager.optimizer_ts無需解釋,這些參數就是Zend Optimizer相關子產品在硬碟上的安裝路徑。

6、如何獲知Zend Optimizer是否在運作? 

答案很簡單,隻要用PHP的函數phpinfo()來檢測便知,如下所示: 

phpinfo(); 

?> 

顯示的結果中關于Zend Optimizer的部分就象下面這樣: 

This program makes use of the Zend Scripting Language Engine:

Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies with Zend Extension Manager v1.0.3, Copyright (c) 2003-2004, by Zend Technologies with Zend Optimizer v2.5.3, Copyright (c) 1998-2004, by Zend Technologies 

表示 Zend Optimizer for PHP優化成功了。

下一步來安裝mysql

解壓MYSQL4.024的壓縮檔案包 mysql-4.0.24-win.zip 然後運作安裝程式 一直按下一步就OK 可以安裝到C槽 省去一些設定上的麻煩 。跟着找到 C槽下的 MYSQL 檔案夾 運作bin\winmysqladmin.exe 啟動MYSQL 第一次會彈出一個需要輸入帳号和密碼的界面 名字和密碼随你歡喜填上去(這個是本地安全碼 會儲存在作業系統中 My.ini 檔案裡 隻允許在本機登陸 MYSQL 以提高安全性) 确定就結束了 算是完成 MYSQL的安裝了。 

PS:對于論壇的安裝 —— 關鍵到和MYSQL資料庫的連接配接成敗 是以要注意 MYSQL的超級管理者密碼是空的  帳号名字為 root  并不是填剛才安裝後第一次運作MYSQL時自己設定的帳号和密碼(這個隻是類似于OICQ的本地安全碼) 否則連接配接失敗。

【設定 MYSQL 随系統運作自動加載】    

開始-->運作--> 分别逐條輸入下面的指令并确定

net start mysql

services.msc

net stop iisadmin

net start w3svc

c:\mysql\bin\mysqld-nt --install

如果是出現下面的提示 那是典型的資料庫未啟動故障 可在 mysql\bin執行winmysqladmin.exe 啟動MYSQL就運作正常了

Connect(0) to MySQL (localhost,root) failed

The URL Is:

<a href="http://www.motianlong.com/bbs/index.php" target="_blank">http://www.motianlong.com/bbs/index.php?</a>

MySQL Server Error:

Can't connect to MySQL server on 'localhost' (10061) ( 2003 )

You Can Get Help In:

附: 進階配置 MySQL 資料庫 為了資料的安全 一些預設值你必須進行修改 比如密碼之類 (一) 連接配接MYSQL: 格式: mysql -h主機位址 -u使用者名 -p使用者密碼  1、例1:連接配接到本機上的MYSQL 首先在打開DOS視窗,然後進入目錄 C:\mysql\bin,再鍵入指令mysql -uroot -p,回車後提示你輸密碼,如果剛安裝好MYSQL,超級使用者root是沒有密碼的,故直接回車即可進入到MYSQL中了,MYSQL的提示符是:mysql&gt;  2、例2:連接配接到遠端主機上的MYSQL 假設遠端主機的IP為:110.110.110.110,使用者名為root,密碼為abcd123。則鍵入以下指令: mysql -h110.110.110.110 -uroot -pabcd123  (注:u與root可以不用加空格,其它也一樣)  3、退出MYSQL指令 exit (回車)  (二) 修改密碼: 格式:mysqladmin -u使用者名 -p舊密碼 password 新密碼  1、例1:給root加個密碼ab12。首先在DOS下進入目錄C:\mysql\bin,然後鍵入以下指令:  mysqladmin -uroot -password ab12  注:因為開始時root沒有密碼,是以-p舊密碼一項就可以省略了。  2、例2:再将root的密碼改為djg345 mysqladmin -uroot -pab12 password djg345  (三) 增加新使用者:(注意:和上面不同,下面的因為是MYSQL環境中的指令,是以後面都帶一個分号作為指令結束符)  格式:grant select on 資料庫.* to 使用者名@登入主機 identified by "密碼"  例1、增加一個使用者test1密碼為abc,讓他可以在任何主機上登入,并對所有資料庫有查詢、插入、修改、删除的權限。首先用以root使用者連入MYSQL,然後鍵入以下指令:  grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";  但例1增加的使用者是十分危險的,你想如某個人知道test1的密碼,那麼他就可以在internet上的任何一台電腦上登入你的mysql資料庫并對你的資料可以為所欲為了,解決辦法見例2。  例2、增加一個使用者test2密碼為abc,讓他隻可以在localhost上登入,并可以對資料庫mydb進行查詢、插入、修改、删除的操作(localhost指本地主機,即MYSQL資料庫所在的那台主機),這樣使用者即使用知道test2的密碼,他也無法從internet上直接通路資料庫,隻能通過MYSQL主機上的web頁來通路了。  grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";  如果你不想test2有密碼,可以再打一個指令将密碼消掉。  grant select,insert,update,delete on mydb.* to test2@localhost identified by "";  (四) 顯示指令  1、顯示資料庫清單: show databases;  剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統資訊,我們改密碼和新增使用者,實際上就是用這個庫進行操作。  2、顯示庫中的資料表:  use mysql; //打開庫,學過FOXBASE的一定不會陌生吧  show tables;  3、顯示資料表的結構:  describe 表名;  4、建庫:  create database 庫名;  5、建表:  use 庫名;  create table 表名 (字段設定清單);  6、删庫和删表:  drop database 庫名;  drop table 表名;  7、将表中記錄清空:  delete from 表名;  8、顯示表中的記錄:  select * from 表名;

=================================

mysql安裝好需要優化配置一下,打開c:\windows\my.ini檔案

仔細對比下面我優化過的my.ini看看哪裡沒有的就加進去

<a href="http://www.phpwind.net/read-htm-tid-79533.html">複制代碼</a>

#This File was made using the WinMySQLAdmin 1.4 Tool

#2005-12-4 15:37:01

#Uncomment or Add only the keys that you know how works.

#Read the MySQL Manual for instructions

[mysqld]

basedir=C:/mysql

#bind-address=192.168.1.1

datadir=C:/mysql/data

#language=C:/mysql/share/your language directory

#slow query log#=

#tmpdir#=

#port=3306

set-variable    = max_connections=2500

skip-locking

#skip-networking

set-variable        = key_buffer=384M

set-variable        = max_allowed_packet=1M

set-variable        = table_cache=512

set-variable        = sort_buffer=2M

set-variable        = record_buffer=2M

set-variable        = thread_cache=8

# Try number of CPU's*2 for thread_concurrency

set-variable        = thread_concurrency=8

set-variable        = myisam_sort_buffer_size=64M

#set-variable        = connect_timeout=5

#set-variable        = wait_timeout=5

server-id        = 1

[isamchk]

set-variable        = key_buffer=128M

set-variable        = sort_buffer=128M

set-variable        = read_buffer=2M

set-variable        = write_buffer=2M

[myisamchk]

#set-variable=key_buffer=16M

[WinMySQLadmin]

Server=C:/mysql/bin/mysqld-nt.exe

user=root

password=********

================好了,代碼也優化好了,zend也裝好了,基本上伺服器配置也OK了~

在開始--運作裡輸入

運作後然後輸入

然後重新啟動一下伺服器就OK了~~

注意:本教程主要引用飛刀的原創文章,但是經過我的測試,發現他介紹的那個加速軟體經常會出錯,是以我換了加速軟體,編寫了這個文章.

另外本人安裝完整的php.ini檔案在附件那裡,大家可以拿去對比

至于phpmyadmin的配置我就不多說了,到處都有教程~:)

PS:如果您需要對系統穩定性/多網站(虛拟主機類)的應用程式池等進行優化,可以聯系我的QQ:14093481,著明:windows優化服務

[ 此貼被showxiu在2007-03-22 21:51重新編輯 ]

下一篇: css clear