오류: SQLSTATE[HY000] [2002] 대상 머신이 적극적으로 거부하여 연결할 수 없음
코드 디버깅 중에 갑자기 오류가 발생했습니다.데이터베이스 연결과 관련하여 일련의 오류가 발생합니다.
ERROR: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it.
( ! ) Fatal error: Uncaught exception 'PDOException' with message ' in C:\wamp\www\web\main\users.php on line 15
( ! ) PDOException: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it. in C:\wamp\www\web\main\users.php on line 15
이것은 오류가 가리키는 위치의 코드입니다.
function __construct()
{
$this->con = new PDO("mysql:host=".$this->host.";dbname=".$this->db,$this->user,$this->pass);
}
평소에 이런 문제가 잘 생기지 않아서 WAMP에 대해 공부를 많이 못해서 어떻게 해야할지 모르겠습니다. 도와주셔서 감사합니다.
WAMP 아이콘이 주황색이면 서비스 중 하나가 시작되지 않은 것입니다.
실행 중인 서버가 없다는 메시지를 받고 따라서 요청을 듣고 있으므로 MySQL이 시작되지 않은 것 같습니다.
mysql 로그를 보고 아무것도 알려주지 않는다면 window 이벤트 로그에서Windows -> Applications
부분.오류 메시지는 MySQL이 시작되지 않는 원인을 식별하는 데 상당히 유용합니다.
때로는 WAMPS Servers MySQL에서 다른 설치의 my.ini 파일을 픽업하기 때문에 발생하기도 합니다(일반적으로 \windows 또는 \window\system32 폴더).'my.ini' 및 'my.cnf'를 검색한 후 \wamp 밖에서 이 중 하나를 찾으면...폴더 구조를 삭제하거나 최소한 이름을 바꾸어서 찾을 수 없도록 해야 합니다.그런 다음 MySQL 서비스를 다시 시작합니다.
코드에서 사용하는 것과 다른 MySQL 포트를 사용할 수 있음
$conn = new PDO("mysql:host=".SERVER_NAME.";port=3307;dbname=".DB_NAME, DB_USER, DB_PASS);
두 포트가 동일해야 합니다.
드루팔 웹사이트를 한 로컬 호스트에서 다른 호스트로 마이그레이션할 때도 비슷한 문제가 있었습니다.XAMMP를 실행하는 Mac에서 WAMP를 실행하는 Windows까지.
이것은 웹사이트의 페이지에 접속하려고 할 때 계속 발생하는 오류 메시지였습니다.
PDOException: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it.
in drupal_get_installed_schema_version() (line 155 of C:\wamp\www\chia\includes\install.inc).
설정에서.php, 데이터베이스 이름, 사용자, 비밀번호 등 모든 것을 올바르게 변경했습니다.
$databases = array (
'default' =>
array (
'default' =>
array (
'database' => 'mydatabasename',
'username' => 'mydbusername',
'password' => 'mydbpass',
'host' => 'localhost',
'port' => '8889',
'driver' => 'mysql',
'prefix' => '',
),
),
);
몇 시간 동안 아무 생각 없이 구글 검색을 한 후 포트를 빈 값으로 변경했습니다.
'port' => '',
그리고 그 후에 사이트가 제대로 로딩되었습니다.
MySQL 서버가 실행되고 있는지 확인합니다.Apache 서버(또는 사용하는 서버)를 실행하지 않으면 이 문제가 발생할 수 있습니다.로컬 서버를 실행하고 페이지를 새로 고칩니다.
wampServer를 다시 시작합니다...그게 해결이 될 겁니다 만약 해결이 안 된다면..레스타
WAMP Server(또는 XAMP)가 작동하는지 확인합니다. 즉, WAMP 아이콘이 녹색이어야 합니다.
디렉토리에서 다음 파일을 삭제합니다.
\wamp\bin\mysql\mysql5.6.17\ib_logfile0
\wamp\bin\mysql\mysql5.6.17\ib_logfile1
\wamp\bin\mysql\mysql5.6.17\ibdata1
이것으로 문제가 해결되었습니다.
Xampp나 실행 중인 서버를 다시 시작해야 합니다. sq를 확인하세요.
저도 같은 문제가 있어서 WAMP 서버를 시작하는 것을 기억하지 못해서 연결할 수 없었습니다.WAMP SERVER 또는 XAMMP를 다시 시작하거나 다시 시작하기만 하면 작동합니다.
정확한 db 세부 정보를 삽입하고 mysql 서버를 재시작하기만 하면 됩니다.
같은 시스템에서 XAMPP와 WAMP를 함께 사용하는 경우 sql server 포트 번호 추가
<connection>
<host><![CDATA[localhost:3390]]></host>
<username><![CDATA[root]]></username>
<password><![CDATA[]]></password>
<dbname><![CDATA[sritoss_1910]]></dbname>
<initStatements><![CDATA[SET NAMES utf8]]></initStatements>
<model><![CDATA[mysql4]]></model>
<type><![CDATA[pdo_mysql]]></type>
<pdoType><![CDATA[]]></pdoType>
<active>1</active>
</connection>
저도 같은 문제가 있었는데, 방금 다음과 같이 mysql/data 파일에 있는 로그 파일을 모두 삭제했습니다.
mysql-bin - 2020@002d...
이 파일들만 있으면 효과가 있었습니다.
도움이 되었으면 좋겠습니다.
저도 같은 문제가 있었습니다.결국 MySQL이 포트 3306이 아닌 포트 3308을 사용하고 있다는 것을 알게 되었습니다.포트를 3306으로 변경했는데 놀랍게도 작동했습니다.
php를 mysql 데이터베이스에 연결하는 것이 문제였는데, php 내 관리 페이지가 완벽하게 표시되었습니다.
참고: laravel을 사용하는 경우 캐시를 지우고 서버를 다시 시작합니다.
wamp 서버를 다시 시작한 다음 php bin/magent to cache:clean
'dsn' => 'mysql:host=localhost;port=3307;dbname=yourdbname',
가상 상자 / 부랑자 / 홈스테드 설치로 Windows에서 "partisan migration"을 실행하는 동안 오류가 발생했습니다.
설명서에는 가상 머신에서 이 명령을 실행해야 한다고 나와 있습니다.
됐어요!!!
현재 프로젝트 폴더 안에서 해야 합니다.
언급URL : https://stackoverflow.com/questions/22523298/error-sqlstatehy000-2002-no-connection-could-be-made-because-the-target-mac
'programing' 카테고리의 다른 글
PSCustomObject가 아닌 원시 형식(예: String)을 반환하도록 Select-Object를 가져오는 방법은 무엇입니까? (0) | 2023.09.06 |
---|---|
mysql에서 캐스케이드를 삭제할 때 어떻게 사용합니까? (0) | 2023.09.06 |
ajax를 통해 FormData 개체와 추가 매개 변수 전송 (0) | 2023.09.06 |
장고: 색인 작성: 비고유, 다중 열 (0) | 2023.09.06 |
Markdown/Textile을 HTML로 변환하는 자바스크립트(그리고 이상적으로 Markdown/Textile로 다시 변환) (0) | 2023.09.06 |