
PDO_ODBC는 데이터베이스 연결을 관리하는 데 사용되는 PHP 확장입니다. Connection pooling이란 여러 요청이 동일한 데이터베이스에 접속할 때, 기존에 연결된 연결을 재사용하는 기술입니다. 이로 인해 새로운 연결을 생성하는 시간과 자원을 절약할 수 있습니다.
PDO_ODBC에서 connection pooling을 설정하는 방법은 다음과 같습니다.
1. PDO_ODBC의 `persistent` 옵션을 `true`로 설정합니다. 이 옵션을 사용하면 PDO가 연결을 재사용합니다.
#hostingforum.kr
php
$dsn = 'odbc:DRIVER={ODBC Driver 17 for SQL Server};SERVER=my_server;DATABASE=my_database;UID=my_username;PWD=my_password';
$pdo = new PDO($dsn, null, null, array(PDO::ATTR_PERSISTENT => true));
2. PDO_ODBC의 `connection_options` 옵션을 사용하여 connection pooling을 설정할 수 있습니다. 이 옵션을 사용하면 PDO가 연결을 재사용하고, 연결이 끊어졌을 때 자동으로 재연결합니다.
#hostingforum.kr
php
$dsn = 'odbc:DRIVER={ODBC Driver 17 for SQL Server};SERVER=my_server;DATABASE=my_database;UID=my_username;PWD=my_password';
$pdo = new PDO($dsn, null, null, array(
PDO::ATTR_PERSISTENT => true,
PDO::ATTR_CONNECTION_TIMEOUT => 30, // 연결이 끊어졌을 때 재연결하기까지의 시간
PDO::ATTR_TIMEOUT => 30, // 연결이 끊어졌을 때 재연결하기까지의 시간
));
3. PDO_ODBC의 `odbc_default_fetch` 옵션을 사용하여 fetch size를 설정할 수 있습니다. 이 옵션을 사용하면 PDO가 한 번에 가져올 데이터의 크기를 설정할 수 있습니다.
#hostingforum.kr
php
$dsn = 'odbc:DRIVER={ODBC Driver 17 for SQL Server};SERVER=my_server;DATABASE=my_database;UID=my_username;PWD=my_password';
$pdo = new PDO($dsn, null, null, array(
PDO::ATTR_PERSISTENT => true,
PDO::ODBC_DEFAULT_FETCH => 1000, // 한 번에 가져올 데이터의 크기
));
이러한 설정을 통해 PDO_ODBC에서 connection pooling을 설정할 수 있습니다.
2025-08-13 00:56