1

Тема: Выводит: Cannot load mysql extension. Please check your PHP

Тема похожая поднималась. По поиску нашел/читал http://forum.php-myadmin.ru/viewtopic.php?id=127 и http://forum.php-myadmin.ru/viewtopic.php?id=94 но всё развно тема не раскрыта.
Вот что имеем:
*Установил Апач 2.2.4 и php/5.2.0. работают хорошо.
*Установил mysql 5.0.27. тоже работает через Command LIne Client, а под phpMyAdmin не идет. Выводит: Cannot load mysql extension. Please check your PHP configuration. - Documentation.
*В пхп.ини раскоментировал extension=php_mysql.dll
* Захожу под root без пароля.
* sql установлен как сервис.
* phpMyAdmin распакован весь.
* libmysql.dll в system32 помещен.

В общем продел все настройки и шаги как на курсах, где установка и работа прошли отлично.

Мож чё пропустил? phpMyAdmin Не загружет SQL.

2

Re: Выводит: Cannot load mysql extension. Please check your PHP

rapdancer сказал:

В пхп.ини раскоментировал extension=php_mysql.dll

Этого не всегда достаточно, например, если php не может найти директрию библиотек по тому пути, что прописан в php.ini.

Прверь с помощью функции phpinfo() значения директив:
- Configuration File (php.ini) Path // путь к конфигурационному файлу PHP - php.ini
- extension_dir    // путь к директории библиотек
- include_path // переменная окружения

Если они не соответствуют действительным, исправь их значения в php.ini.
Можешь, кстати, полистать статью Hanut-a "Инструментарий веб-разработчика"

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

3

Re: Выводит: Cannot load mysql extension. Please check your PHP

Спасибо огромное!
Ты прав, пути в php.ini отличались от действительных и папки tmp не было созданно. Сейчас уже всё работает! Ты-супер гуру! Респект!

4

Re: Выводит: Cannot load mysql extension. Please check your PHP

Извените за вопрос, но я все таки понять не могу:
* куда писать функцию phpinfo()
* где проверять путь к конфигурационному файлу
* что за переменная окружения и куда там путь указывать

Путь в extension_dir поменял, строку с extension=php_mysql.dll раскомментировал, добавил файл php_mysql.dll в папку PHP, т.к. его там не было. И всеравно вылазит: Cannot load mysql extension. Please check your PHP configuration. - Documentation

Я УЖЕ НЕДЕЛЮ с этой проблемой МУЧАЮСЬ.

Вот краткое содержание php.ini

[PHP]

;;;;;;;;;;;;;;;;;;;;
; Language Options ;
;;;;;;;;;;;;;;;;;;;;

engine = On
zend.ze1_compatibility_mode = Off
short_open_tag = Off
asp_tags = Off
precision = 14
y2k_compliance = On
output_buffering = 4096
zlib.output_compression = Off
implicit_flush = Off
unserialize_callback_func=
serialize_precision = 100
allow_call_time_pass_reference = Off
safe_mode = Off
safe_mode_gid = Off
safe_mode_include_dir =
safe_mode_exec_dir =
safe_mode_allowed_env_vars = PHP_
safe_mode_protected_env_vars = LD_LIBRARY_PATH
disable_functions =
disable_classes =
expose_php = On

;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;

max_execution_time = 30
max_input_time = 60
memory_limit = 128M

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

error_reporting = E_ALL
display_errors = Off
display_startup_errors = Off
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = Off

;;;;;;;;;;;;;;;;;
; Data Handling ;
;;;;;;;;;;;;;;;;;

variables_order = "GPCS"
register_globals = Off
register_long_arrays = Off
register_argc_argv = Off
auto_globals_jit = On
post_max_size = 8M
magic_quotes_gpc = Off
magic_quotes_runtime = Off
magic_quotes_sybase = Off
auto_prepend_file =
auto_append_file =
default_mimetype = "text/html"

;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;

doc_root =
user_dir =
extension_dir = "C:\Program Files\PHP\"
enable_dl = On

;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

file_uploads = On
upload_max_filesize = 2M

;;;;;;;;;;;;;;;;;;
; Fopen wrappers ;
;;;;;;;;;;;;;;;;;;

allow_url_fopen = On
allow_url_include = Off
default_socket_timeout = 60
upload_tmp_dir="C:\DOCUME~1\prk\LOCALS~1\Temp\php\upload"
session.save_path="C:\DOCUME~1\prk\LOCALS~1\Temp\php\session"

;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;

extension=php_mysql.dll

;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;

[Syslog]
define_syslog_variables  = Off
[mail function]
SMTP = localhost
smtp_port = 25
[SQL]
sql.safe_mode = Off
[ODBC]
odbc.allow_persistent = On
odbc.check_persistent = On
odbc.max_persistent = -1
odbc.max_links = -1
odbc.defaultlrl = 4096
odbc.defaultbinmode = 1
[MySQL]
mysql.allow_persistent = On
mysql.max_persistent = -1
mysql.max_links = -1
mysql.default_port =
mysql.default_socket =
mysql.default_host =
mysql.default_user =
mysql.default_password =
mysql.connect_timeout = 60
mysql.trace_mode = Off
[MySQLi]
mysqli.max_links = -1
mysqli.default_port = 3306
mysqli.default_socket =
mysqli.default_host =
mysqli.default_user =
mysqli.default_pw =
mysqli.reconnect = Off
[mSQL]
msql.allow_persistent = On
msql.max_persistent = -1
msql.max_links = -1
[PostgresSQL]
pgsql.allow_persistent = On
pgsql.auto_reset_persistent = Off
pgsql.max_persistent = -1
pgsql.max_links = -1
pgsql.ignore_notice = 0
pgsql.log_notice = 0
[Sybase]
sybase.allow_persistent = On
sybase.max_persistent = -1
sybase.max_links = -1
sybase.min_error_severity = 10
sybase.min_message_severity = 10
sybase.compatability_mode = Off
[Sybase-CT]
sybct.allow_persistent = On
sybct.max_persistent = -1
sybct.max_links = -1
sybct.min_server_severity = 10
sybct.min_client_severity = 10
[bcmath]
bcmath.scale = 0
[Informix]
ifx.default_host =
ifx.default_user =
ifx.default_password =
ifx.allow_persistent = On
ifx.max_persistent = -1
ifx.max_links = -1
ifx.textasvarchar = 0
ifx.byteasvarchar = 0
ifx.charasvarchar = 0
ifx.blobinfile = 0
ifx.nullformat = 0
[Session]
session.save_handler = files
session.use_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 1000
session.gc_maxlifetime = 1440
session.bug_compat_42 = 0
session.bug_compat_warn = 1
session.referer_check =
session.entropy_length = 0
session.entropy_file =
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 5
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"
[MSSQL]
mssql.allow_persistent = On
mssql.max_persistent = -1
mssql.max_links = -1
mssql.min_error_severity = 10
mssql.min_message_severity = 10
mssql.compatability_mode = Off
mssql.secure_connection = Off
[Tidy]
tidy.clean_output = Off
[soap]
soap.wsdl_cache_enabled=1
soap.wsdl_cache_dir="/tmp"
soap.wsdl_cache_ttl=86400

Все остальные строки закомментированы.

Установленная ОС:
Windows Server 2003
Установленное ПО:
Apache 2.2.4
MySQL 5.0.27
PHP 5.2.1
phpMyAdmin 2.10.0.2
Дополнительно: скачал php_5.2.0_mysql_5.0.27-win32.rar, в архиве 2 файла: libmysql.dll и php_mysql.dll
php_mysql.dll засунул в директорию с PHP, т.е. "C:\Program Files\PHP\"
libmysql.dll поместил в "C:\WINDOWS\system32"

5

Re: Выводит: Cannot load mysql extension. Please check your PHP

Вобщем, для таких как я, начинающих администраторов форумов big_smile
ЧИТАЙТЕ http://php-myadmin.ru/learning/instrument-intro.html - Инструментарий веб-разработчика!!!
А потом уж вопросы smile

И в добавок, из книги "Законы Мерфи"
Аксиома Кана.
Если ничто другое не помогает, прочтите, наконец, инструкцию!

6

Re: Выводит: Cannot load mysql extension. Please check your PHP

Lokki

Этого не всегда достаточно, например, если php не может найти директрию библиотек по тому пути, что прописан в php.ini.

Прверь с помощью функции phpinfo() значения директив:
- Configuration File (php.ini) Path // путь к конфигурационному файлу PHP - php.ini
- extension_dir    // путь к директории библиотек
- include_path // переменная окружения

Если они не соответствуют действительным, исправь их значения в php.ini.
Можешь, кстати, полистать статью Hanut-a "Инструментарий веб-разработчика"

Здравствуйте.
Делал всё по мануалу Инструментарий веб-разработчика, но выходит всеравно тот-же глюк:

Вывожу настройки с помощью phpinfo(); - показывает какой-то бред:
Configuration File (php.ini) Path - C:\WINDOWS 

А вот конкретно те переменные, о которых Вы говорили:

extension_dir E:/servdata/php/ext E:/servdata/php/ext
include_path .;e:\servdata\php\includes

Тоесть, как я понимаю - глюк только в Configuration File (php.ini) Path.
А где его менять? Поидее этот путь прописывается в httpd.conf. Там он у меня стоит PHPIniDir "E:/servdata/php"

Что делать? Я ни в httpd.conf, ни в php.ini не нашёл где этот C:\WINDOWS прописан. Ума не дам!
Может это из-за установленного Denwer-а (хотя он вообще на другом диске).
Помогите, может я ещё чего-то не вкурил?

7

Re: Выводит: Cannot load mysql extension. Please check your PHP

Phobos
В C:\WINDOWS есть php.ini? Если есть, то удалите его оттуда.

8 (изменено: Phobos, 2008-02-13 16:02:20)

Re: Выводит: Cannot load mysql extension. Please check your PHP

Hanut
Нет, там нет php.ini. И откуда в настройках этот путь я так и не понял. Но он там и остался. Однако всё заработало, после того как я в системных переменных в Path прописал путь к папке ext и перезагрузился. Странно, в статье было описано, что достаточно было прописать путь к php, а пришлось ещё к ext писать. Ну по крайней мере заработал phpMyAdmin, что уже радует!

Так вроди разобрался, где чего. Блин, первый раз сервер настраиваю. Все на Denwer до сих пор сидел. Надо сказать, полезное занятие, хоть и целый день потерял, зато чему-то научился.

Спасибо за ответ!

9

Re: Выводит: Cannot load mysql extension. Please check your PHP

Phobos сказал:

И откуда в настройках этот путь я так и не понял. Но он там и остался.

Это плохо.

Phobos сказал:

Однако всё заработало, после того как я в системных переменных в Path прописал путь к папке ext и перезагрузился.

Этого делать было не надо. Поищите дубли библиотек из каталога ext.

Думаю проблема не решена и вы еще столкнетесь с трудностями.
Проверьте выключен ли Денвер и не осталось ли записей от него в PATH.
Если захотите дальше возиться, то покажите PATH.

10

Re: Выводит: Cannot load mysql extension. Please check your PHP

Hanut
Денвер отключен. Записей не осталось. В PATH всё нормально.

Вероятно это из-за предыдущих неудачных попыток установки где-то что-то завалялось (но не php.ini или httpd.conf. Их искал и не нашел).
Вероятно стоит поискать php_mysql.dll. Чтож, попробую поискать. Отпишусь потом, в этом пролема была, или нет.

11

Re: Выводит: Cannot load mysql extension. Please check your PHP

Единственное место, которое вызывает подозрение - это C:\Program Files\Zend\ZendStudio-5.5.1\bin\php5\ext
Остольное только в дистрибутивах.
Как Вы думаете, может Зендовская папка повлиять?

12

Re: Выводит: Cannot load mysql extension. Please check your PHP

Phobos сказал:

Как Вы думаете, может Зендовская папка повлиять?

А зачем я по вашему просил PATH показать? Именно чтобы прояснить что еще может находиться в переменных окружения.

13

Re: Выводит: Cannot load mysql extension. Please check your PHP

Hanut сказал:

А зачем я по вашему просил PATH показать? Именно чтобы прояснить что еще может находиться в переменных окружения.

C:\Program Files\CodeGear\RAD Studio\5.0\bin;C:\Documents and Settings\All Users\Документы\RAD Studio\5.0\Bpl;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Autodesk\Backburner\;C:\Program Files\Common Files\Autodesk Shared\;E:\servdata\php\;E:\servdata\php\ext\;E:\servdata\mysql\bin

Вроди нет лишнего ничего.

14

Re: Выводит: Cannot load mysql extension. Please check your PHP

Phobos
Попробуйте поставить E:\servdata\php на самое первое место в списке, перезагрузитесь и посмотрите не изменится ли что-либо. Смотрите в phpinfo(), откуда подгружается php.ini.

15 (изменено: Phobos, 2008-02-13 20:52:31)

Re: Выводит: Cannot load mysql extension. Please check your PHP

Hanut
Попробовал. Плюс удалил свою "самодеятельность" (E:\servdata\php\ext\) от туда.

Всеравно пишет через phpinfo():
Configuration File (php.ini) Path  C:\WINDOWS 

Однако phpMyAdmin нормально работает!

Вот ещё не упомянул об одной странности:

Configuration File (php.ini) Path  C:\WINDOWS 
Loaded Configuration File  E:\servdata\php\php.ini 

Как это папка с php.ini - Windows, а загруженный файл берётся там где положено (из E:\servdata\php\). hmm

16

Re: Выводит: Cannot load mysql extension. Please check your PHP

Phobos
Извиняюсь, я сам запутался и вас запутал. Эта строка такой быть и должна.
Configuration File (php.ini) Path  C:\WINDOWS
Так как в конфигурационном файле Apache с помощью директивы PHPIniDir, мы явно указываем каталог в котором находится конфигурационный файл PHP.

Все у вас хорошо с настройками. Проблем не будет.

17

Re: Выводит: Cannot load mysql extension. Please check your PHP

Hanut
Ну это замечательно!
Спасибо за внимание, влюбом случае!