¡Sí, no se puede conectar así!
@PLB y @jammypeach mysqli está después de v4.1, él está usando v3 :) ¡Los chicos leen las especificaciones, si realmente quieren ayudar!
No puede conectarse, porque su archivo de socket está un poco mal. Ahora recuerdo que el viejo RH tenía este problema antes. Su socket es probablemente /var/mysql/mysql.sock o /tmp/mysql.sock, pero una o más aplicaciones están buscando la otra.
Si la suya es /tmp/mysql.sock pero sin /var/mysql/mysql.sock debe:
cd /var
mkdir mysql
cd mysql
ln -s /tmp/mysql.sock mysql.sock
Si tiene /var/mysql/mysql.sock pero no/tmp/mysql .sock a continuación:
cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock
Necesitará permisos para realizar los cambios. ¡Simplemente sudo, si es necesario antes de los comandos de arriba!
otra solución (más fácil):
crear el archivo y phpinfo llamada(); Busque 'mysql.default_socket'; o 'pdo_mysql.default_socket'; Abra My.ini o My.cnf para encontrar el valor del socket, p. socket =/tmp/mysql.sock Abra su archivo php.ini (que también se encuentra en su página phpinfo() como 'Archivo de configuración cargada') y cambie todas las ocurrencias de la ubicación de socket incorrecta a la ubicación de socket correcta de MySQL .
otra solución (más fácil): DSN para PDO:
mysql:unix_socket=/tmp/mysql.sock;dbname=...
mysql_connect:
$db = mysql_connect('localhost:/tmp/mysql.sock', ...
Su sistema es realmente miedo cuando se trata de seguridad, si usted es el anfitrión de los datos sensibles, Me gustaría actualizar a las últimas versiones.
---- ---- ACTUALIZACIÓN
Aaahhhh PHP 5.0 y MySQL 3.23 :)
PHP 5 tiene un cliente MySQL envasados que no puede conectarse a una base de datos MySQL menos de la versión 4.1. Comenzando con la versión 4.1, MySQL usa una nueva forma de hash de contraseñas que no es compatible con las bases de datos pre-4.1. El servidor al que se conecta su configuración es la versión 3.23. Entonces necesitas obtener una versión superior de MySQL. Lo siento, pero no hay otra solución práctica para su caso. Si yo fuera tú, actualizaría todo el sistema e instalaría la versión más reciente del sistema operativo, si tuviera que iría con Debian y las versiones estables más recientes de PHP y MySQL.
Comenzar a utilizar DOP o mysqli_ * en lugar de mysql_ * – Leri
@PLB: ¿Ha leído la pregunta o simplemente el código? –
Si insiste en utilizar MySQL 3.xy con las funciones 'mysql_ *', que pronto quedarán obsoletas, le recomendamos que compruebe en su 'php.ini' si la extensión' php_mysql' está habilitada. – Havelock