Estoy ejecutando Ubuntu 16.04 LTS y quiero usar Mongodb con PHP. Para esto probé
sudo apt-get install php5-mongo
que es suficiente para Ubuntu 14.04 LTS sería suficiente pero me equivoqué. Recibo un mensaje de error como:
E: Unable to locate package php5-mongo
Acabo de actualizar el sistema operativo de la máquina a Ubuntu 16.04 LTS
y quería utilizar mongodb
con PHP 7.0.4
.
Entonces, ¿qué puedo hacer para resolver esto?
sudo apt-get install php7-mongo
pero no obtuve ningún resultado positivosudo add-apt-repository ppa:chris-lea/mongodb-drivers sudo apt-get update sudo apt-get install php5-mongo
W: The repository 'http://ppa.launchpad.net/chris-lea/mongodb-drivers/ubuntu xenial Release' does not have a Release file. N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use. N: See apt-secure(8) manpage for repository creation and user configuration details. E: Failed to fetch http://ppa.launchpad.net/chris-lea/mongodb-drivers/ubuntu/dists/xenial/main/binary-amd64/Packages 404 Not Found
Respuestas:
Para instalar la extensión mongodb, haga:
fuente
Estoy seguro de que ha encontrado una solución por ahora. Sin embargo, quiero compartir cómo lo hice:
sudo apt-get install php5.6-mongo
fuente
Estoy usando php versión 7.0 en ubuntu 16.04. Estoy dando una información detallada para instalar el controlador / cliente mongo. Primero instalé manualmente mongodb y luego el controlador mongodb-php para ello.
1) Instalación de mongo db. Ingrese los siguientes comandos:
Para iniciar correctamente Mongdb como servicio, es decir, iniciar automáticamente Mongodb cuando se inicia el sistema, siga los siguientes pasos:
Cree el archivo mongodb.service en / etc / systemd / system / ingresando el comando:
Pegue los siguientes contenidos en él:
Luego ingrese los siguientes comandos:
2) Instalación del controlador mongo-php:
También puede recibir un error: phpize no encontrado. Phpize es un comando que se utiliza para crear un entorno de compilación. Este error podría aparecer en el momento de la instalación de cualquier extensión pecl. Para resolver este problema del comando phpize no encontrado, el usuario debe instalar el paquete php5-dev. Para instalarlo ingrese el comando:
Luego, en el archivo php.ini que se encuentra en el directorio /etc/php/7.0/apache2, agregue la extensión mongo db:
Agregue la siguiente línea en el archivo:
extensión = mongo.so;
(Es posible que deba especificar la ubicación exacta del archivo. En mi caso, el archivo estaba en /usr/lib/php/20151012/mongodb.so).
Entonces el mongo db se instala junto con su controlador.
3) Ahora tenga en cuenta que las clases mongo-php han cambiado. La mayoría de los recursos disponibles en la red dan soluciones utilizando clases antiguas que se reemplazan. A continuación se encuentran los enlaces a los que puede referirse:
http://php.net/manual/en/set.mongodb.php
http://zetcode.com/db/mongodbphp/
Aquí hay algunos comandos para las operaciones básicas de la base de datos:
Para insertar datos en la base de datos:
Para buscar datos:
fuente
o para php 7
fuente
Estoy usando esto en mi Dockerfile:
fuente