PHP 개발에서 데이터베이스 작업과 관련하여 데이터베이스 서버 및 클라이언트의 버전 정보를 이해하는 것은 데이터베이스 작업과 관련하여 디버깅, 최적화 및 호환성 감지에 중요합니다. 이 기사에서는 mysql_get_server_info () 및 mysqli_get_client_version () 기능을 사용하는 방법을 살펴보고 MySQL 데이터베이스 서버의 버전 정보와 PHP 및 MySQL 클라이언트의 버전 정보를 쉽게 볼 수 있습니다.
mysql_get_server_info () 함수는 현재 연결된 MySQL 서버 버전 정보를 얻는 데 사용됩니다. 이 기능은 최신 PHP 버전으로 더 이상 사용되지 않았으므로 MySQLI 또는 PDO_MYSQL 확장자를 사용하여 원래 MySQL 확장자를 대체하는 것이 좋습니다.
문법:
<span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-title function_ invoke__">mysql_get_server_info</span></span><span>(resource </span><span><span class="hljs-variable">$link</span></span><span>);
</span></span>
$ 링크 : 옵션 매개 변수, 유효한 MySQL 연결 자원을 지정합니다. 지정되지 않으면 mysql_connect () 함수에 의해 반환 된 현재 연결은 기본적으로 사용됩니다.
예:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$link</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mysql_connect</span></span><span>(</span><span><span class="hljs-string">"localhost"</span></span><span>, </span><span><span class="hljs-string">"root"</span></span><span>, </span><span><span class="hljs-string">"password"</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-variable">$link</span></span><span>) {
</span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">'Could not connect: '</span></span><span> . </span><span><span class="hljs-title function_ invoke__">mysql_error</span></span><span>());
}
</span><span><span class="hljs-variable">$server_info</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mysql_get_server_info</span></span><span>(</span><span><span class="hljs-variable">$link</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"MySQL Server Version: "</span></span><span> . </span><span><span class="hljs-variable">$server_info</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
mysql_get_server_info () 와 달리 mysqli_get_client_version () 함수는 현재 MySQL 클라이언트 라이브러리의 버전 번호를 반환하는 데 사용됩니다. 이 기능은 데이터베이스와 상호 작용하는 클라이언트 버전 정보를 제공하며 일반적으로 클라이언트 라이브러리가 특정 기능 또는 기능을 지원하는지 확인하는 데 사용됩니다.
문법:
<span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-title function_ invoke__">mysqli_get_client_version</span></span><span>(</span><span><span class="hljs-keyword">void</span></span><span>);
</span></span>
이 기능에는 매개 변수가 필요하지 않으며 클라이언트 MySQL 라이브러리의 버전 정보를 직접 반환합니다.
예:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$client_version</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mysqli_get_client_version</span></span><span>();
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"MySQL Client Version: "</span></span><span> . </span><span><span class="hljs-variable">$client_version</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
일반적으로 MySQL 서버 및 클라이언트의 버전을 동시에 확인하여 그 사이의 호환성을 확인해야합니다. mysql_get_server_info () 및 mysqli_get_client_version ()을 사용하여 서버와 클라이언트의 버전 정보를 각각 얻고 정보를 함께 표시 할 수 있습니다.
예:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 사용 mysqli 데이터베이스에 연결하십시오</span></span><span>
</span><span><span class="hljs-variable">$mysqli</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">mysqli</span></span><span>(</span><span><span class="hljs-string">"localhost"</span></span><span>, </span><span><span class="hljs-string">"root"</span></span><span>, </span><span><span class="hljs-string">"password"</span></span><span>, </span><span><span class="hljs-string">"testdb"</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$mysqli</span></span><span>->connect_error) {
</span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"Connection failed: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>->connect_error);
}
</span><span><span class="hljs-comment">// 얻다 MySQL 서버 버전 정보</span></span><span>
</span><span><span class="hljs-variable">$server_version</span></span><span> = </span><span><span class="hljs-variable">$mysqli</span></span><span>->server_info;
</span><span><span class="hljs-comment">// 얻다 MySQL 클라이언트 버전 정보</span></span><span>
</span><span><span class="hljs-variable">$client_version</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mysqli_get_client_version</span></span><span>();
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"MySQL Server Version: "</span></span><span> . </span><span><span class="hljs-variable">$server_version</span></span><span> . </span><span><span class="hljs-string">"<br>"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"MySQL Client Version: "</span></span><span> . </span><span><span class="hljs-variable">$client_version</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
호환성 감지 : 클라이언트 라이브러리가 버전 차이로 인한 이용 불가능 또는 성능 문제를 피하기 위해 MySQL 서버 버전과 호환되는지 확인하십시오.
디버깅 : 데이터베이스 작업 예외가 발생하면 클라이언트 및 서버의 버전을 확인하면 버전 비 호환성으로 인한 오류 여부를 확인할 수 있습니다.
성능 최적화 : 클라이언트 및 서버 버전을 기반으로 새로운 최적화 기능 또는 SQL 확장 기능이 지원되어 해당 최적화를 만들 수 있는지 이해하십시오.
mysql_get_server_info () 와 mysqli_get_client_version () 함수를 결합하면 현재 MySQL 서버 및 클라이언트의 버전 정보를 명확하게 이해할 수 있습니다. 이 정보를 이해하면 데이터베이스를 더 잘 유지하고 성능 문제를 해결하고 최적화 할 수 있습니다. MySQL 확장이 더 이상 사용되지 않았지만 MySQLI 확장 기능을 사용하여 데이터베이스 작업을보다 유연하게 수행하고 더 풍부한 버전 정보를 얻을 수 있습니다.