sql >> Database teknologi >  >> RDS >> Mysql

mysql_connect():Ingen sådan fil eller mappe

Ja, du kan ikke forbinde sådan!

@PLB og @jammypeach mysqli er efter v4.1, han bruger v3 :)Læs specifikationerne, hvis du virkelig vil hjælpe!

Du kan ikke oprette forbindelse, fordi din socket-fil er en smule forkert. Jeg husker nu, at den gamle RH havde dette problem før. Din socket er sandsynligvis som /var/mysql/mysql.sock eller /tmp/mysql.sock, men en eller flere apps leder efter den anden.

Hvis din er /tmp/mysql.sock, men ingen /var/mysql/mysql.sock, skal du:

cd /var 
mkdir mysql
cd mysql
ln -s /tmp/mysql.sock mysql.sock

Hvis du har /var/mysql/mysql.sock, men ingen /tmp/mysql.sock, så:

cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock

Du skal have tilladelser for at foretage ændringerne. Bare sudo, hvis det er nødvendigt før kommandoerne ovenfor!

EN ANDEN LØSNING (lettere):

Opret fil og kald phpinfo(); Se efter 'mysql.default_socket'; eller 'pdo_mysql.default_socket';Åbn My.ini eller My.cnf find socketværdien f.eks. socket=/tmp/mysql.sockÅbn din php.ini-fil (som også findes på din phpinfo()-side som 'Loaded Configuration File'), og skift alle forekomster af den forkerte socketplacering til den korrekte socketplacering fra MySQL.

EN ANDEN LØSNING (nemmeste):DSN for BOB:

mysql:unix_socket=/tmp/mysql.sock;dbname=...

mysql_connect:

$db = mysql_connect('localhost:/tmp/mysql.sock', ...

Dit system er virkelig skræmmende, når det kommer til sikkerhed, hvis du hoster følsomme data, vil jeg opgradere til de nyeste versioner.

---- OPDATERING ----

Aaahhhh PHP 5.0 og MySQL 3.23 :)

PHP 5 har en mysql-klient pakket, der ikke kan oprette forbindelse til en MySQL-database, der er mindre end version 4.1. Fra og med version 4.1 bruger MySQL en ny måde til hashing af adgangskoder, som ikke er kompatibel med tidligere 4.1-databaser. Serveren, som din konfiguration opretter forbindelse til, er version 3.23. Så du skal anskaffe dig en højere version af MySQL. Beklager, men der er ingen anden praktisk løsning for dit tilfælde. Hvis jeg var dig, ville jeg opgradere hele systemet og installere den seneste OS-version, hvis jeg skulle, ville jeg gå med Debian og de seneste stabile versioner af PHP og MySQL.



  1. MySQL hentetid optimering

  2. Stamtavle/slægtsdiagram fra databasen

  3. Microsoft TreeView kontrol selvstudie

  4. Sådan erstattes et regex-mønster i MySQL