¿Cómo habilito SQLite en Linux / Apache / PHP?

12

Para habilitar SQLite en mi configuración de Windows / Apache / PHP, descomento las siguientes líneas en el archivo php.ini y reinicio Apache:

extension=php_pdo.dll
extension=php_pdo_sqlite.dll

Ahora tengo un VPS con Suse Linux 10.3 y Apache / PHP se configuró automáticamente. Al mirar el archivo php.ini para hacer los cambios anteriores, veo que las cosas son un poco diferentes en Linux:

  • no hay una lista de extensiones para descomentar
  • Encontré " extension_dir = /usr/lib/php5/extensions" pero en este directorio solo encuentro:
    • pdo.so
    • pdo_mysql.so

¿Cómo puedo habilitar SQLite en este entorno Linux?

Edward Tanguay
fuente
Aquí hay un gran tutorial sobre cómo habilitar sqlite en un entorno linkyx : exteon.ro/en/articles/php . ¡Espero eso ayude!
Dinu

Respuestas:

14

No puedo decir cómo exactamente para suse esto funcionaría. en el mundo debian es:

apt-get install php5-sqlite

esto instalará la biblioteca necesaria y agregará /etc/php5/conf.d/sqlite.ini con

extension=sqlite.so

así que primero, use yum para ver el paquete de instalación necesario, luego agregue a la línea php.ini anterior.

EDITAR: para php7 el comando es:

apt-get install php7.0-sqlite

y el archivo php.ini se encuentra en: sudo nano /etc/php/7.0/apache2/php.inidonde debe habilitar elextension=sqlite.so

pQd
fuente
apt-get parece ser una cuestión de debian, hay soluciones ( susewiki.org/index.php?title=Install-apt4suse ) pero estoy buscando la solución más simple aquí, debe haber alguna forma de descargar y hacer referencia a un biblioteca sqlite en Suse.
Edward Tanguay
yum es la forma más sencilla
Freiheit
ok, entonces convertí mi VPS de Suse a Debian Linux 4.0 Standard 32-Bit. Escribo "apt-get install php5-sqlite" y dice "leyendo listas de paquetes, creando un árbol de dependencia ... no pude encontrar el paquete php5-sqlite". En /etc/php5/conf.d hay otros 8 archivos .ini pero no sqlite.ini. ¿Cómo es que no pudo encontrar el paquete? ¿Necesito ejecutarlo desde un directorio específico? (Escribo "yum" y dice "-bash: yum: comando no encontrado".)
Edward Tanguay
Debian usa apt-get, Suse ofrece yum (y tal vez zypper). Si apt-get no puede encontrar el paquete, verifique que exista y verifique qué repositorios tiene /etc/apt/sources.listy /etc/apt/sources.list.d.
jldugger
en /etc/apt/sources.list.d Tengo un archivo llamado "debian.list" pero ninguno más, ¿puedo descargar la biblioteca desde algún lugar y hacer referencia en php.ini como en Windows, o es necesario que sea descargado e instalado de alguna manera?
Edward Tanguay
5

Versión corta, pero podría estar equivocada porque no sé con qué repositorios de paquetes está configurado su sistema:

yum install php5-sqlite

Versión larga:

yum search php sqlite

O simplemente busque uno:

yum search sqlite

Mira la lista que vuelve. Averigua qué necesitas, luego:

yum install whatever_package_looked_right_from_the_list
freiheit
fuente
+1: cualquier paquete parecía correcto
Fox Wilson
1

A Linux Mint 12 le faltaba sqlite y generaba el siguiente error:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626/sqlite.so' - /usr/lib/php5/20090626/sqlite.so: cannot open shared object file: No such file or directory in Unknown on line 0

La mejor práctica para mí fue descargar y descomprimir sqlite.soen/usr/lib/php5/20090626/

papi
fuente
Puede reemplazar nattyen la URL con el nombre de su versión, como trusty.
The Unknown Dev
0

El soporte de SQLite está habilitado de forma predeterminada en una compilación estándar de PHP de Linux que comienza con PHP 5.0.

¿Qué versión de PHP usas? ¿Revisó la salida de phpinfo () para ver si SQLite está habilitado? SQLite se habilitará a menos que el

--disable-sqlite

El parámetro se establece en la cadena de configuración.

Pierre-Yves Gillier
fuente