> 데이터 베이스 > MySQL 튜토리얼 > mysql과 mysqli의 차이점

mysql과 mysqli의 차이점

迷茫
풀어 주다: 2017-03-26 11:48:37
원래의
1153명이 탐색했습니다.

Mysqli 연결은 영구 연결인 반면 MySQL은 비영구 연결입니다.

mysql 연결: 두 번째 사용될 때마다 새로운 프로세스가 다시 열립니다.

mysqli 연결: 항상 동일한 프로세스를 사용합니다.

이점: 서버 측의 부담을 크게 줄일 수 있습니다.

물론 mysql에도 영구 연결이 필요한 경우 mysql_pconnect() 함수를 사용할 수 있습니다.

mysqli의 프로세스 지향 사용:

$conn = mysqli_connect(‘localhost’, ‘root’, ’123′, ‘db_test’) or (‘error’);
$sql = “select * from db_table”;
$query = mysqli_query($conn,$sql);
while($row = mysqli_fetch_array($query)){
echo $row['title'];
}
로그인 후 복사

객체 지향 사용 mysqli :

$conn = mysqli(‘localhost’, ‘root’, ’123′, ‘db_test’);
$sql = “select * from db_table”;
$query = $conn->query($sql);
while($row = $query->fetch_array()){
echo $row['title'];
}
로그인 후 복사
  • mysql_connect 및 mysql_pconnect 및 mysqli_connect:

mysql_pconnect에 의해 열린 연결은 닫히지 않습니다(mysql_close가 호출되더라도 유효하지 않음)

은 동일한 머신에서 동일한 사용자 이름

으로 동일한 데이터베이스에 연결되는 경우 연결 버퍼 풀과 유사합니다. 다음 번에 PHP는 다시 설정할 필요 없이 자동으로 마지막 연결을 사용합니다.

장점: 매번 데이터베이스와 연결을 설정하는 오버헤드를 절약합니다.

단점: 일부 메모리를 낭비하고 일부 연결을 차지해야 합니다.

사용자 방문이 크면 오류가 발생합니다. mysql의 max_connections 매개 변수를 더 큰 값으로 변경하거나 mysql_connect()를 사용하여 문제를 해결해야 합니다.

간단히 말하면 MySQL_pconnect는 PHP와 MySQL 간의 지속적인 연결을 설정하는 데 사용됩니다.

일반적으로 PHP의 실행 모드는 스크립트가 실행되기 시작할 때 모든 리소스를 초기화하고 해제하는 것입니다. 스크립트가 완료된 후의 모든 리소스.

MySQL_pconnect 메서드는 이와 같지 않습니다. MySQL_connect는 각 연결이 매번 tcp 및 기타

를 통해 SQL 서버와의 관계를 다시 설정합니다.

pconnect를 사용할 때 MySQL에 연결하라는 요청이 있으면 php는 동일한 연결(동일한 사용자 이름과 비밀번호로 동일한 MySQL 서버에 연결됨)이 설정되었는지 확인합니다. 이전에

있는 경우 이 연결을 직접 사용하십시오. 동일한 연결의 개념은 프로세스에 대한 것입니다.

MySQL_pconnect에 연결하는 다른 프로세스는 여러 연결을 설정합니다.

Connect와 pconnect는 기능적 차이를 가져오지 않고 성능 차이만 가져옵니다.

일반적으로 PHP에는 두 가지 작동 모드가 있는데, 하나는 cgi로 실행되고 다른 하나는 apache로 실행됩니다. module.

cgi로 사용하는 경우 connect는 pconnect와 다르지 않습니다. cgi가 실행될 때마다 리소스가 삭제되고 정리되기 때문입니다.

php를 an으로 실행하면 apache 모듈을 사용하면 데이터베이스에 지속적으로 연결하여 사용할 수 있으나 잠재적인 문제가 있을 수 있습니다.

cgi 설치 방법을 사용하는 경우 php 매뉴얼을 참조하세요. pconnection은 적용되지 않습니다.

긴 연결의 가장 큰 단점은 사용자가 잠기면 현재 프로세스가 영구적으로 잠긴다는 것입니다.

아파치에서 프로세스가 절대 파괴되지 않는다는 설정이라면...

말하고 녹음을 너무 많이 해서

  1. 즉, 프로그래밍 스타일에 따라 작업이 완료된 후 자동으로 중단되므로 mysql_connect를 사용해 보십시오.

  2. 링크 버퍼 풀처럼 mysql_connect와 mysql_pconnect를 함께 사용할 수도 있습니다.

  3. 즉, mysql_connect와 mysql_pconnect 클래스를 생성합니다. .

  4. 물론, 이전 버전과의 호환성을 고려하지 않는다면 mysqli 자체가 영구 연결이기 때문에 mysqli_connect를 사용하는 것이 가장 좋다.

위 내용은 mysql과 mysqli의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿