이것이 누군가를 돕는 경우를 대비하여 :
응용 프로그램의 여러 부분에서 호출되는 함수에서 연결을 열고 닫을 때이 오류가 발생했습니다. 연결이 너무 많아 기존 연결을 재사용하거나 버리고 새 연결을 만드는 것이 좋습니다.
public static function getConnection($database, $host, $user, $password)
{
if (!self::$instance) {
return self::newConnection($database, $host, $user, $password);
} elseif ($database . $host . $user != self::$connectionDetails) {
self :: $ instance-> query ( 'KILL CONNECTION_ID ()'); self :: $ instance = null; 자체 반환 :: newConnection ($ database, $ host, $ user, $ password); } self :: $ instance를 반환합니다. } 우리는 살인에 대해 너무 철저히 알고 있었기 때문에 오래된 연결에서 중요한 일을하는 프로세스는 결코 사업을 끝내지 못했습니다. 그래서 우리는이 줄들을 떨어 뜨 렸습니다
self::$instance->query('KILL CONNECTION_ID()');
self::$instance = null;
머신의 하드웨어 및 설정에서 허용하는대로 다음을 추가하여 서버에서 허용되는 연결 수를 늘 렸습니다.
max_connections = 500
구성 파일에. 이것은 지금 우리의 문제를 해결했고 우리는 mysql 연결을 죽이는 것에 대해 배웠습니다.