Как включить поддержку SQLite в CloudFoundry (PHP Buildpack)

Я создаю приложение на IBM Bluemix с помощью CloudFoundry. Мне удалось развернуть php-buildpack. Как включить также поддержку SQLite? ... Я даже не уверен, включен ли sqlite в пакет сборки, поскольку в качестве расширения указано только «pdo_sqlite».

Если я не могу получить поддержку sqlite из этого пакета сборки, есть ли другой способ получить поддержку sqlite?


person Andrej    schedule 29.07.2015    source источник


Ответы (2)


Хотя инструкции в ответе Джеффа Слойера верны, вы можете пересмотреть использование sqlite. SQLite — это внутрипроцессная база данных, и ее содержимое резервируется в файловой системе. В Bluemix/Cloud Foundry файловая система, в которой вы запускаете свое приложение, является эфемерной, а это означает, что каждый раз, когда вы перезапускаете свое приложение, вы теряете все, что вы сохранили в файловой системе, таким образом, вы теряете содержимое своей базы данных.

person whitfiea    schedule 30.07.2015
comment
требуется документация или доказательство этого! - person bharal; 08.02.2018

Вы должны включить библиотеку в .bp-config/options.json файле. Как в примере ниже

{
    "PHP_EXTENSIONS": ["pdo_sqlite"]
}

PDO — это просто оболочка для доступа к базе данных в PHP, для получения дополнительной информации см. ">в чем разница между sqlite3 и pdo_sqlite в StackOverflow.

Если вы запустите phpinfo() в своем приложении, вы увидите, что SQLite3 установлен.

sqlite3

Если вы запустите следующее.

if (class_exists('SQLite3')) {
    echo "sqlite3 is here";
}

Он вернется и скажет, что sqlite3 установлен.

person Jeff Sloyer    schedule 29.07.2015