Как получить пул соединений, работающих с подключением к UnixODBC для доступа к PHP-CGI PDO iSeries?

Я пытаюсь подключить пул соединений, используя PHP / PDO с помощью драйвера UnixODBC под названием iSeries Access для Linux.

Я не устанавливаю PDO :: ATTR_PERSISTENT в свой конструктор PDO, поскольку я хочу использовать пул, а не постоянство (я в среде PHP-CGI).

Используя раздел «Объединение пулов» в http://www.ibm.com/developerworks/systems/library/es-linux_bestpract.html, я разместил

Pooling = Yes 

в моем odbc.ini и

 CPTimeout = 600 

в моем odbcinst.ini

Однако кажется, что драйвер ODBC не является пулом соединений, потому что каждое обновление страницы генерирует связанное с CPIAD09 сообщение о входящем соединении.

Вот мои полные файлы конфигурации ODBC:

 ==== odbc.ini ==== [AS400] Description = Production AS/400 Database Driver = iSeries Access ODBC Driver System = XXX.XXX.XX UserID = XXXXXXXX Password = XXXXXXXX Naming = 0 DefaultLibraries = USERLIB, BPCSF, ADV, WEB, RITAUSR Database = ConnectionType = 0 CommitMode = 2 ExtendedDynamic = 0 DefaultPkgLibrary = QGPL DefaultPackage = A/DEFAULT(IBM),2,0,1,0,512 AllowDataCompression = 1 LibraryView = 0 AllowUnsupportedChar = 0 ForceTranslation = 0 Trace = 0 DSN = AS400 Pooling = Yes 

а также

 ==== odbcinst.ini ==== [iSeries Access ODBC Driver] Description = iSeries Access for Linux ODBC Driver Driver = /opt/ibm/iSeriesAccess/lib/libcwbodbc.so Setup = /opt/ibm/iSeriesAccess/lib/libcwbodbcs.so NOTE1 = If using unixODBC 2.2.11 or later and you want the 32 and 64-bit ODBC drivers to share DSN's, NOTE2 = the following Driver64/Setup64 keywords will provide that support. Driver64 = /opt/ibm/iSeriesAccess/lib64/libcwbodbc.so Setup64 = /opt/ibm/iSeriesAccess/lib64/libcwbodbcs.so Threading = 2 DontDLClose = 1 UsageCount = 1 CPTimeout = 600 

Увеличение количества пулов соединений всегда будет продолжаться.

 Pooling = Yes 

Это нужно сделать под [ODBC] в вашем odbcinst.ini, а не в файле odbc.ini

 CPTimeout = 600 

Поместите это в свой odbc.ini