sql >> Databáze >  >> RDS >> Mysql

Chyba 2002 Připojení odmítnuto na připojení PHP k MySQL běžící na MAMP

Problém je v tom, že nepředáváte port jako pátý parametr připojení mysqli. Pokud používáte localhost jako váš hostitel je parametr port ignorován. To je důvod, proč ve fragmentu MAMP nepředávají $db_port jako parametr to prostě není potřeba. Důvodem, proč k tomu dochází, je localhost nepoužívá TCP/IP, místo toho využívá unixové sokety.

Poté, co jste se řídili návrhem ostatních, pravděpodobně jste změnili kód do bodu, kdy jste měli

$db_host = '127.0.0.1';

To je v pořádku, ale protože již nepoužíváte unixové sokety (localhost ), parametr portu je nutný k navázání spojení. Mysqli používá 3306 port jako výchozí, pokud jako pátý parametr nezadáte žádný jiný. Takže toto je port, ke kterému se pokoušíte připojit pomocí tohoto kódu. Zde se objevila Error: Connection refused pochází z.

K vyřešení problému stačí předat port jako pátý parametr takto:

$mysqli = new mysqli($db_host,$db_user,$db_password,$db_db,$db_port);

Úryvek sám o sobě je skvělý, jen úplně nevyhovoval vašim potřebám a museli jste ho trochu upravit. Pokud chcete používat úryvky, musíte rozumět tomu, co dělají a v tomto případě, jak funguje mysqli. Nezapomeňte si to pro budoucnost zapamatovat, protože se tím jistě vyhnete nepříjemným situacím a chybám, jako je tato.



  1. Připojení C# Mysql musí být platné a otevřené

  2. Odstraňte primární klíč v MySQL

  3. Povídání o překážkách výkonu SQL Server

  4. Jak určit řazení v dotazu v SQL Server (T-SQL)