PDA

View Full Version : Cấu hình, Cài đặt thủ công Apache PHP MySQL : ko connect được PHP - MySQL



redbox
27-02-2010, 12:18
Chào các bạn.
Tôi đã cài đặt thủ Apache, PHP, MySQL : Môi trường Window 7 Ultimate, theo các bước:
1.Cài đặt apache_2.2.11-win32-x86-openssl-0.9.8i . sau đó xem lại bằng IE8 thì tốt, có hiện dòng chữ: It works !
2. Cài đặt PHP: unzip file php-5.2.9-2-Win32.zip vào thư mục C:\PHP
Điều chỉnh file: C:\Apache22\conf\httpd.conf ;
C:\PHP\php.ini
Sau đó gõ dòng chữ: http://localhost/ thì thấy tốt: It works !
http://localhost/index.php với file index.php có nội dung là: <?php phpinfo(); ?> --> kết quả: tốt. có thông tin PHP.
PHP Version 5.2.9-2
System Windows NT myPC 6.1 build 7600
Build Date Apr 9 2009 08:22:37
SERVER_SOFTWARE Apache/2.2.11 (Win32)
PHP/5.2.9-2
3. Cài đặt MySQL: mysql-5.1.34-win32.msi
Sau đó: "Enable TCP/IP Networking" , port 3306
+ Mở file php.ini tìm ;extension=php_mysql.dll và sửa lại extension=php_mysql.dll (bỏ dấu ; )
+ Copy cái file libmysql.dll trong folder của MySQL vào folder cài đặt PHP5  ( or window32)
+ tìm dòng Code ";extension=php_mysql.dll" rồi bỏ dấu ";" đi

Test lại: tạo file testmysql.php với nội dung:
<?php
$server = "localhost";
$user = "root";
$pass = "www";
$data = "mysql"; // day la database mac dinh co san cua mysql dung de quan ly cau truc
mysql_connect($server, $user, $pass) or die("Error:".mysql_error());
mysql_select_db($data) or die("Error:".mysql_error());
echo "Connect successfully!";
?>
Thì không được kết quả gì: không có error message, error log gì cả. Mặc dù mình đã: thay đổi trong php.ini:
display_errors = Off và sửa thành
display_errors = On
Tìm tiếp đến display_startup_errors = Off
và sửa thành display_startup_errors = On

Vấn đề này mình bị khó khi cài đặt thủ công tương tự trên Window XP SP3.

Vậy bạn nào có kinh nghiệm về connect MySQL này hãy cho ý kiến, kinh nghiệm giúp mình nha. !!!

Vấn đề này rất cơ bản nhưng dễ đau đầu quá.

Cám ơn rất nhiều.

Shellingfox
27-02-2010, 12:28
Bạn đã copy file libMySQL.dll vào thư mục của system32 hoặc là thư mục bin của Apache chưa?

Kiểm tra lại phpinfo() coi thử extension mysql đã được load chưa. Vấn đề của bạn là extension mysql chưa được load.

phuc1040661
27-02-2010, 16:51
Trơi oi! có gi mà đau đầu chú! cài cái EasyPHP vào thi có đủ apache,php,mysql! khỏi phải cấu hình gì hết, khỏe!

tphuy10
27-02-2010, 21:13
Cái này cũng dễ thôi mà bạn. Nói chung là tập tành cái từng cái một mình dễ hiểu sự hoạt động của nó hơn. Bạn vào .../apache/logs/error.log (thư mục bạn cài apache đó). Sau đó dùng notepad mở file này sẽ biết lỗi là gì.
Good luck!

redbox
01-03-2010, 09:02
Thanks all !
nếu dùng easyPHP hoặc XAMPP thì khỏe rồi, nhưng khó mà hiểu được cách setup bộ 3 này.

Về Extension: mình đã xem lại phpinfo(), thì thấy có: extension_dir C:\PHP\ext
Về error.log:
Khi chạy trang testmysql.php: thì log được sinh ra như sau:
[Mon Mar 01 08:52:41 2010] [notice] Parent: child process exited with status 255 -- Restarting.
[Mon Mar 01 08:52:41 2010] [notice] Apache/2.2.11 (Win32) PHP/5.2.9-2 configured -- resuming normal operations
[Mon Mar 01 08:52:41 2010] [notice] Server built: Dec 10 2008 00:10:06
[Mon Mar 01 08:52:41 2010] [notice] Parent: Created child process 1628
[Mon Mar 01 08:52:41 2010] [notice] Child 1628: Child process is running
[Mon Mar 01 08:52:41 2010] [notice] Child 1628: Acquired the start mutex.
[Mon Mar 01 08:52:41 2010] [notice] Child 1628: Starting 64 worker threads.
[Mon Mar 01 08:52:41 2010] [notice] Child 1628: Starting thread to listen on port 80.

Mời các bạn cho ý kiến nhé ! Mình search hướng dẫn cài đặt này nhiều rồi mà thấy vẫn chưa ổn !

Thanks u a lot !

[=========> Bổ sung bài viết <=========]

Bạn nào biết download php_mysql.dll hoặc php_mysqli.dll từ đâu được ko ?
Có vẽ link này die mất rồi: http://dev.mysql.com/downloads/connector/php

Nếu có connector này thì may ra khắc phục được vấn đề php - mysql !!!

Shellingfox
01-03-2010, 15:28
Thanks all !
nếu dùng easyPHP hoặc XAMPP thì khỏe rồi, nhưng khó mà hiểu được cách setup bộ 3 này.

Về Extension: mình đã xem lại phpinfo(), thì thấy có: extension_dir C:\PHP\ext
Về error.log:
Khi chạy trang testmysql.php: thì log được sinh ra như sau:
[Mon Mar 01 08:52:41 2010] [notice] Parent: child process exited with status 255 -- Restarting.
[Mon Mar 01 08:52:41 2010] [notice] Apache/2.2.11 (Win32) PHP/5.2.9-2 configured -- resuming normal operations
[Mon Mar 01 08:52:41 2010] [notice] Server built: Dec 10 2008 00:10:06
[Mon Mar 01 08:52:41 2010] [notice] Parent: Created child process 1628
[Mon Mar 01 08:52:41 2010] [notice] Child 1628: Child process is running
[Mon Mar 01 08:52:41 2010] [notice] Child 1628: Acquired the start mutex.
[Mon Mar 01 08:52:41 2010] [notice] Child 1628: Starting 64 worker threads.
[Mon Mar 01 08:52:41 2010] [notice] Child 1628: Starting thread to listen on port 80.

Mời các bạn cho ý kiến nhé ! Mình search hướng dẫn cài đặt này nhiều rồi mà thấy vẫn chưa ổn !

Thanks u a lot !

[=========> Bổ sung bài viết <=========]

Bạn nào biết download php_mysql.dll hoặc php_mysqli.dll từ đâu được ko ?
Có vẽ link này die mất rồi: http://dev.mysql.com/downloads/connector/php

Nếu có connector này thì may ra khắc phục được vấn đề php - mysql !!!

Bạn coi kỹ lại coi đã copy file libmysql.dll trong thư mục php (hoặc trong thư mục cài đặt mysql) vô trong thư mục bin của apache chưa.

File php_mysql.dll có sẵn trong thư mục ext của php.

redbox
02-03-2010, 09:36
Thanks Shell..
Mình đã giải quyết được rồi !
Vấn đề là file: php_mysql.dll trong phien ban PHP_php-5.2.9-2-Win32 không kết nối với MySQL được. --> mình thay thế bằng file của php-5.2.13-Win32-VC6-x86 thì mới có kết quả.
Và Window 7, cần phải điều chỉnh file "hosts" trong C:\WINDOWS\system32\drivers\etc\hosts : "#127.0.0.1 localhost" --> "127.0.0.1 localhost" thì Win 7 mới cho kết nối với mysql được !

Thanks a lot !