본문 바로가기
MySql

MySQL How to know if MySQLnd is the active driver?

by 베이스 공부 2021. 1. 12.
반응형

당연한 질문 일 수도 있지만 확실하게하고 싶습니다.

MySQLnd가 활성 드라이버인지 어떻게 알 수 있습니까?

PHP 5.3과 MySQL 5.1.37을 실행하고 있습니다. phpinfo ()에서 mysqlnd가 나열되어 있지만 이것만으로는 MySQLnd 또는 이전 드라이버를 사용하고 있는지 확인할 수 없습니다.

phpinfo () 출력 추출

mysql
MySQL Support   enabled
Active Persistent Links     0
Active Links    0
Client API version  mysqlnd 5.0.5-dev - 081106 - $Revision: 1.3.2.27 $ 

mysqli
MysqlI Support  enabled
Client API library version  mysqlnd 5.0.5-dev - 081106 - $Revision: 1.3.2.27 $
Active Persistent Links     0
Inactive Persistent Links   0
Active Links    26 

mysqlnd
mysqlnd enabled
Version     mysqlnd 5.0.5-dev - 081106 - $Revision: 1.3.2.27 $ 

PDO
PDO support enabled
PDO drivers     mysql

pdo_mysql
PDO Driver for MySQL    enabled
Client API version  mysqlnd 5.0.5-dev - 081106 - $Revision: 1.3.2.27 $ 

PDO를 사용하고 있는데 PDO 드라이버에 mysql이 표시됩니다.

 

해결 방법

 

mysqli 를 통해 액세스하는 경우 다음과 같이 트릭을 수행해야합니다.

<?php
$mysqlnd = function_exists('mysqli_fetch_all');

if ($mysqlnd) {
    echo 'mysqlnd enabled!';
}

활성 PDO 드라이버인지 감지하려면 MySQL PDO 개체를 만든 다음 다음을 수행하십시오.

if (strpos($pdo->getAttribute(PDO::ATTR_CLIENT_VERSION), 'mysqlnd') !== false) {
    echo 'PDO MySQLnd enabled!';
}

 

참조 페이지 https://stackoverflow.com/questions/1475701

 

 

반응형

댓글