Во-первых, несколько советов: прекратите использовать библиотеки mysql и используйте PDO или хотя бы библиотеки mysqli.
Теперь для справки по устранению неполадок: первый шаг должен быть на 100% уверен, что mysql загружается. Создайте сценарий (на основе веб-интерфейса) с:
phpinfo ();
Убедитесь, что где-то на этой странице есть блок, указывающий, что загружается расширение MySQL.
Везде, где вы тестируете, нет ошибок, прямо перед вызовом mysql_connect добавьте следующие строки:
ini_set('display_errors', 1);
ini_set('log_errors', 1);
error_reporting(E_ALL | E_STRICT);
Это гарантирует, что вы не подавите ошибки где-то еще до подключения. Некоторые фреймворки иногда делают это.
Если модуль действительно загружается и с добавленным кодом регистрации ошибок вы все равно не получите действительную ошибку. Я бы попробовал подключиться через php скрипт командной строки. Посмотрите в файле php.ini, чтобы увидеть, что "error_log" установлен на. Это журнал по умолчанию, в который он будет записывать - иногда настройки на основе http отменяют ведение журнала, поэтому, даже если ошибки обнаружены, вы не видите или не можете их найти. Сценарий php командной строки учитывает это.
И последнее, но не менее важное: вы всегда можете опубликовать свою строку подключения в этом сообщении. Попробуйте подключиться из командной строки на сервере в качестве сценария, используя команду mysql с теми же учетными данными, что и ваш mysql_connect. Возможно, вы сможете подключиться просто отлично, но у вас будут неверные учетные данные.
Если модуль не загружается, попробуйте найти, где именно находится модуль, и укажите полный путь к php.ini. Иногда Yum устанавливает вещи не там, где их ищет php.ini. В конце установки Yum иногда указывается путь, если нет, чтобы найти его с помощью грубой силы, сделайте следующее:
cd /
find . -name 'mysql.so'
так в php.ini вместо
extension=mysql.so
1024 * ставить *
extension=/path/to/found/mysql.so
Удачи!