MySQL은 주류 관계형 데이터베이스 관리 시스템이며, 많은 애플리케이션이 MySQL을 사용하여 데이터를 저장하고 관리합니다. MySQL 연결은 애플리케이션을 닫거나 수동으로 닫을 때까지 유지될 수 있습니다. 그러나 어떤 경우에는 리소스 낭비와 보안 위험을 피하기 위해 MySQL 연결을 제때에 종료해야 합니다.
MySQL 연결을 수동으로 닫는 것이 가장 기본적인 방법입니다. 다음 코드를 사용하여 PHP에서 연결을 수동으로 닫을 수 있습니다.
mysqli_close($conn);
$conn이 연결 개체인 경우 mysqli_connect를 사용하여 데이터베이스에 연결하고 $conn을 반환합니다. 위 코드가 실행되면 연결 개체가 소멸되고 연결이 닫힙니다.
연결 풀을 사용하여 MySQL 연결을 관리하는 경우 연결 풀을 닫아 연결을 닫을 수 있습니다. 연결 풀은 응용 프로그램이 데이터베이스에 연결하고 연결을 끊는 횟수를 효과적으로 줄일 수 있는 재사용 가능한 데이터베이스 연결 집합입니다. 그러나 연결 풀이 닫히지 않으면 연결이 계속 열려 있기 때문에 많은 시스템 리소스를 차지할 수 있습니다.
다음은 Java에서 Connection Pool을 닫는 코드입니다.
DataSource dataSource = // 创建数据源 Connection connection = dataSource.getConnection(); // 获取连接对象 // 执行数据操作 connection.close(); // 关闭连接对象 dataSource.close(); // 关闭连接池
위 코드에서 데이터소스는 개발자가 직접 생성한 것이며, close() 메소드를 호출하여 Connection Pool을 닫을 수 있습니다. 이때 연결 풀의 모든 연결이 해제되고 해당 연결이 닫힙니다.
MySQL은 오랫동안 사용되지 않은 연결을 닫는 시간 초과 제어 옵션도 제공합니다. 이 옵션을 wait_timeout이라고 합니다. MySQL 구성에서 wait_timeout은 기본적으로 8시간으로 설정됩니다. 연결이 8시간 동안 아무런 작업도 수행하지 않으면 자동으로 종료됩니다.
wait_timeout의 값을 변경해야 하는 경우 MySQL 명령줄에서 다음 명령을 실행할 수 있습니다.
SET SESSION wait_timeout = xxx;
여기서 xxx는 시간 초과(초)입니다. 예를 들어 wait_timeout을 5분(300초)으로 설정하려면 다음 명령을 실행하면 됩니다.
SET SESSION wait_timeout = 300;
위 명령을 실행한 후 MySQL은 현재 연결에서 아무런 작업도 수행하지 않으면 300초 이내에 자동으로 연결을 닫습니다.
개발 중에는 MySQL 연결을 닫는 적절한 방법을 채택해야 합니다. 연결을 즉시 종료하면 리소스 낭비와 보안 위험을 효과적으로 줄일 수 있습니다.
위 내용은 mysql 연결 닫기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!