sql >> Database >  >> RDS >> Mysql

Kan geen verbinding maken met lokale MySQL-server via socket

Omdat de fout wordt gegenereerd door de aanroep van mysql_real_escape_string() het houdt eerder in dat je mysql_connect() . niet hebt aangeroepen eerst en geef een geldige db-handle door aan mysql_real_escape_string (of de aanroep naar mysql_connect() mislukt).

In sommige gevallen zal de mysql-extensie proberen om automatisch verbinding te maken met de standaardinstellingen in php.ini, waarbij het faalt naar my.cnf als deze niet beschikbaar zijn - die uiteraard niet geldig zijn. Of het kan zijn dat de instellingen geldig zijn, maar dat de mysqld niet actief is.

Heeft u scripts die met succes verbinding maken met de database?

Heeft u een gebruikersnaam en wachtwoord voor de database?

Probeer:

check_running();

$user=''; // fill in your details
$password=''; // fill in your details

$hosts=array(
  'localhost', '127.0.0.1', $_SERVER['HTTP_HOST'], $_SERVER['SERVER_ADDR']
);
foreach ($hosts as $addr) {
   try_con($addr, $user, $password);
   try_con($addr . ':3306', $user, $password);
}

function try_con($host, $user, $password)
{
 $dbh=mysql_connect($host, $user, $password);
 if ($dbh) {
     print "Connected OK with $host, $user, $password<br />\n";
 } else {
     print "Failed with $host, $user, $password<br />\n";
 }
}

function check_running()
{
   // this assumes that you are using Apache on a Unix/Linux box
   $chk=`ps -ef | grep httpd | grep -v grep`;
   if ($chk) {
      print "Checking for mysqld process: " . `ps -ef | grep mysqld | grep -v grep` . "<br />\n";
   } else {
       print "Cannot check mysqld process<br />\n";
   }
 }


  1. sql geografie naar dbgeography?

  2. FOUT 1452 (23000):Kan een onderliggende rij niet toevoegen of bijwerken:een beperking van een externe sleutel mislukt

  3. MySQL-resultaten rangschikken en groeperen

  4. ATAN() Functie in Oracle