>  기사  >  백엔드 개발  >  PHP와 MySQL 데이터베이스를 지속적으로 연결하는 방법

PHP와 MySQL 데이터베이스를 지속적으로 연결하는 방법

little bottle
little bottle앞으로
2019-04-23 16:08:213624검색

이 기사는 PHP와 MySQL 데이터베이스 간의 지속적인 연결에 대한 구체적인 단계를 소개하는 내용입니다. 도움이 필요한 친구들이 이에 대해 배울 수 있기를 바랍니다.

영구 데이터베이스 연결:

1. 영구 데이터베이스 연결은 스크립트 실행이 종료될 때 닫히지 않는 연결을 의미합니다. 지속적인 연결 요청이 수신된 경우. PHP는 이미 동일한 영구 연결(이전에 열렸던)이 있는지 확인합니다. 존재하는 경우 연결이 직접 사용되며 존재하지 않는 경우 새 연결이 설정됩니다. 소위 "동일" 연결은 동일한 사용자 이름과 비밀번호를 사용하여 동일한 호스트에 연결하는 것을 의미합니다.

관련 튜토리얼: mysql 비디오 튜토리얼

2. 첫 번째 방법은 PHP를 별도로 실행되는 언어 해석기(CGI Wapper)로 사용하는 것입니다. 이 경우, 지속적 연결을 사용하는 것과 비영구적 연결을 사용하는 것 사이에는 차이가 없습니다. 왜냐하면 PHP 스크립트 자체의 실행은 지속적이지 않기 때문입니다.

3. PHP를 다중 프로세스 웹 서버의 모듈로 사용합니다. 이 방법은 현재 Apache에만 적용 가능합니다. 동일한 클라이언트가 두 번째로 서버에 요청하면 다른 하위 프로세스에 의해 전송될 수 있습니다. .을 다루다. 영구 연결을 연 후 SQL 서비스를 요청하는 모든 후속 페이지는 설정된 SQL Server 연결을 재사용할 수 있습니다.

4. 영구 연결에서 데이터 테이블 잠금을 사용할 때 스크립트가 어떤 이유로든 데이터 테이블 잠금을 해제할 수 없으면 동일한 연결을 사용하는 후속 스크립트가 영구적으로 차단되어 httpd 서비스 또는 데이터베이스 서비스를 다시 시작해야 합니다.

5. 트랜잭션 처리를 사용할 때 트랜잭션 차단이 발생하기 전에 스크립트가 종료되면 차단은 동일한 연결을 사용하는 다음 스크립트에도 영향을 미칩니다.

6 프로그램은 영구 연결(PDO::ATTR_PERSISTENT)을 사용하여 액세스합니다. PHP-FPM 작업자 프로세스는 MySQL에 대한 긴 연결에 해당합니다.

요청이 완료된 후 PHP는 다음 번 재사용을 위해 MySQL에 대한 연결을 해제하지 않습니다.

이는 프로그램에 투명합니다. PHP -FPM에서 관리하는 "데이터베이스 연결 풀"로 간주됩니다.

7. MySQL 리소스를 절약할 수 없을 뿐만 아니라 데이터베이스의 부하도 증가합니다.

PDO 영구 연결:

$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
    PDO::ATTR_PERSISTENT => true
));

증명:

관련 튜토리얼: PHP 비디오 튜토리얼

위 내용은 PHP와 MySQL 데이터베이스를 지속적으로 연결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제