it-swarm.com.de

mySQL-Server-Portnummer

Ich habe gerade eine Datenbank für MySQL auf meinem Server erstellt. Ich möchte mich über meine Website mit PHP verbinden. Dies ist der Inhalt meiner Verbindungsdatei:

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'password';

$conn = mysql_connect($dbhost, $dbuser, $dbpass)
    or die('Error connecting to mysql');

$dbname = 'epub';
mysql_select_db($dbname);

Ich weiß, wie der Benutzername/das Passwort lautet, und ich kenne die IP-Adresse des Servers. Ich frage mich nur, woher weiß ich, welchen Port ich verwenden soll?

59
109221793

Wenn Ihr MySQL-Server mit Standardeinstellungen ausgeführt wird, müssen Sie dies nicht angeben.

Der Standard-MySQL-Port ist 3306.

[aktualisiert, um die Verwendung von mysql_error () anzuzeigen]

$conn = mysql_connect($dbhost, $dbuser, $dbpass)
    or die('Error connecting to mysql: '.mysql_error());
74
Mchl

Wenn Sie die Portnummer Ihres lokalen Hosts kennen möchten, auf dem Mysql ausgeführt wird, können Sie diese Abfrage auf dem MySQL-Befehlszeilenclient verwenden.

SHOW VARIABLES WHERE Variable_name = 'port';


mysql> SHOW VARIABLES WHERE Variable_name = 'port';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port          | 3306  |
+---------------+-------+
1 row in set (0.00 sec)

Sie erhalten die Portnummer, unter der MySQL läuft.

52
Nikhil Agrawal

schau dir diesen Kerl an 

<?php
// we connect to example.com and port 3307
$link = mysql_connect('example.com:3307', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);

// we connect to localhost at port 3307
$link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>
9
Adi Sembiring

wenn Sie Ihren Port als Variable haben möchten, können Sie PHP folgendermaßen schreiben:

$username = user;
$password = pw;
$Host = 127.0.0.1;
$database = dbname;
$port = 3308; 

$conn = mysql_connect($Host.':'.$port, $username, $password);
$db=mysql_select_db($database,$conn);
7
zhihong

der Standardport von MySQL ist 3306

der Standard-Pot von SQL Server ist 1433

2
Ravi Kumar

Dies ist eine reine PDO-Visualisierung, da die Bibliothek mysql_* veraltet ist.

<?php
    // Begin Vault (this is in a vault, not actually hard-coded)
    $Host="hostname";
    $username="GuySmiley";
    $password="thePassword";
    $dbname="dbname";
    $port="3306";
    // End Vault

    try {
        $dbh = new PDO("mysql:Host=$Host;port=$port;dbname=$dbname;charset=utf8", $username, $password);
        $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        echo "I am connected.<br/>";

        // ... continue with your code

        // PDO closes connection at end of script
    } catch (PDOException $e) {
        echo 'PDO Exception: ' . $e->getMessage();
        exit();
    }
?>

Beachten Sie, dass es sich bei dieser OP-Frage nicht um Portnummern handelt. Wenn Sie immer den Standardport 3306 verwenden, sollten Sie ihn aus dem URI entfernen, d. H. Den port=$port;-Teil entfernen.

Wenn Sie häufig Anschlüsse ändern, sollten Sie die oben angegebene Anschlussnutzung in Betracht ziehen, um die Wartbarkeit zu verbessern und Änderungen an der Variablen $port vorzunehmen.

Einige wahrscheinliche Fehler wurden von oben zurückgegeben:

PDO Exception: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it.
PDO Exception: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: No such Host is known.

Im folgenden Fehler kommen wir uns nach Ändern unserer Verbindungsinformationen zumindest näher:

PDO Exception: SQLSTATE[HY000] [1045] Access denied for user 'GuySmiley'@'localhost' (using password: YES)

Nach weiteren Änderungen sind wir jetzt sehr nahe, aber nicht ganz:

PDO Exception: SQLSTATE[HY000] [1049] Unknown database 'mustard'

Aus dem Handbuch über PDO-Verbindungen :

2
Drew

Wenn Sie 'localhost' angeben, verwendet der Client standardmäßig das Dateisystem-System-Socket auf einem Unix-System. Dabei wird der Wert für mysql_default_socket aus der php.ini (falls festgelegt) und dann der Wert für my.cnf verwendet. 

Wenn Sie eine Verbindung mit einem anderen Tool herstellen, geben Sie den Befehl "show variables wie '% socket%'" aus.

Wenn Sie einen Netzwerkanschluss verwenden möchten (der etwas langsamer ist), geben Sie 127.0.0.1 oder eine physische Schnittstelle an, die der Maschine zugeordnet ist.

2
symcbean

versuchen

$conn = mysql_connect($Host, $username, $password, $port);
1
Sudishrestha
  <?php  
    $dbhost = 'localhost:3306';
//3306 default port number $dbhost='localhost'; is enough to specify the port number
//when we are utilizing xammp default port number is 8080.
      $dbuser = 'root';
      $dbpass = '';
         $db='users';

             $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$db) or die ("could not connect to mysql");      

              // mysqli_select_db("users") or die ("no database");  

    if(! $conn ) {
        die('Could not connect: ' . mysqli_error($conn));
    }else{
        echo 'Connected successfully';
    }
    ?>
0
sivaa reddy