Diferencia entre revisiones de «Usuario:ManuelRomero/proyecto/proyectoIternova/mongo»

De WikiEducator
Saltar a: navegación, buscar
(Problema actualizando)
 
(5 revisiones intermedias por el mismo usuario no mostrado)
Línea 1: Línea 1:
 
{{Usuario:ManuelRomero/proyecto/proyectoIternova/nav}}
 
{{Usuario:ManuelRomero/proyecto/proyectoIternova/nav}}
 
__NOTOC__
 
__NOTOC__
 +
===Mongo no actualiza===
 +
*Veo que el método reset de mi modeldata no hace nada
 +
*De momento pongo que retorne el docuemento de la colección encontrado
 +
 +
 +
===Fichero configuración usuario colección smartroads===
 +
smartroads/core/controller/database/database_mongo.php
 +
{{MRM_Actividad|Title=Rol de usuario con mongochef|
 +
:Abro mongo Chef
 +
#Botón derecho sobre la colección a gestionar usuario
 +
#Seleccionar '''''Manager User'''''
 +
#Selecconamos el usuario y doble click
 +
#Selecconar roles
 +
#Asginar
 +
}}
 +
 +
 
Para acceder a mongo en el sistema con rockmongo
 
Para acceder a mongo en el sistema con rockmongo
 
<source lang=php>
 
<source lang=php>
Línea 43: Línea 60:
 
apt-get install mongodb
 
apt-get install mongodb
 
  y se pone a instalar
 
  y se pone a instalar
 +
===21/04/2017===
 +
*Retomo el proyecto
 +
*Tenia la versión 3.xx de mongo
 +
*restablezco la 2.4.9
 +
*Al arrancar la aplicación me da un fallo
 +
{{Plegable|hide|error.log de apache|
 +
[Fri Apr 21 08:28:18.175383 2017] [:error] [pid 1922] [client 172.17.0.1:52590] PHP Fatal error:  Uncaught exception 'MongoDB\\Driver\\Exception\\AuthenticationException' with message 'auth fails' in /var/www/smartroads-core/libs/packages/vendor/mongodb/mongodb/src/Operation/Find.php:219\nStack trace:\n#0 /var/www/smartroads-core/libs/packages/vendor/mongodb/mongodb/src/Operation/Find.php(219): MongoDB\\Driver\\Server->executeQuery('smartroads.conf...', Object(MongoDB\\Driver\\Query), Object(MongoDB\\Driver\\ReadPreference))\n#1 /var/www/smartroads-core/libs/packages/vendor/mongodb/mongodb/src/Collection.php(525): MongoDB\\Operation\\Find->execute(Object(MongoDB\\Driver\\Server))\n#2 /var/www/smartroads-core/core/controller/database/mongodb/mongodb/controller_database_mongodb_mongodb_controller.php(633): MongoDB\\Collection->find(Array, Array)\n#3 /var/www/smartroads-core/core/controller/modules/configuration/controller_modules_configuration_model.php(210): Controller_DataBase_MongoDB_MongoDB_Controller->select_by_criteria('configuration', Array, Array, 1, 0)\n#4 /var/www/smartroads-core/core/controller/modules/configuration in /var/www/smartroads-core/libs/packages/vendor/mongodb/mongodb/src/Operation/Find.php on line 219
 +
}}
 +
*Parece que tengo que volver a crear el usuario en mongo
  
 +
<source lang=bash>
 +
vi /etc/mongodb.conf
 +
Y añadir (o descomentar) la línea:
  
 
+
auth = true
 +
Creamos un usuario para la base de datos admin (usuario root)
 +
$ mongo
 +
  use admin
 +
  db.addUser("root", "password")
 +
Ahora nos autentificamos para poder hacer cosas sobre la base de datos
 +
db.auth("root","root")
 
.....
 
.....
 +
</source>
  
 
===Crear un nuevo usuario en mongo===
 
===Crear un nuevo usuario en mongo===

Última revisión de 20:51 9 may 2017



Mongo no actualiza

  • Veo que el método reset de mi modeldata no hace nada
  • De momento pongo que retorne el docuemento de la colección encontrado


Fichero configuración usuario colección smartroads

smartroads/core/controller/database/database_mongo.php


Icon activity.jpg
Rol de usuario con mongochef
Abro mongo Chef
  1. Botón derecho sobre la colección a gestionar usuario
  2. Seleccionar Manager User
  3. Selecconamos el usuario y doble click
  4. Selecconar roles
  5. Asginar




Para acceder a mongo en el sistema con rockmongo

http://172.17.0.2/smartroads-core/admin/config/rockmongo/index.php?action=admin.index&host=0
usuario/pass root - root

Para pasar del programa al mongo

https://www.mongodb.com/presentations/webinar-mongodb-time-series-data-setting-stage-sensor-management

Problema actualizando

  • Tenía la versión 2.4, y siguiendo la guía de instalación intenté actualizar
https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/
  • Aparentemente todo ok. pero al volver a arrancar el sistema, no arrancaba mongo
  • Veo que tengo problemas

tengo que hacer estas acciones

db.getSiblingDB("admin").runCommand({authSchemaUpgrade: 1 });
 
// Usuario root:
db.createUser({user:"root",pwd:"secret", roles:[{role:"root",db:"admin"}]})
 
// Y luego ya crear el nuevo usuario usuario con el nuevo formato:
use new_database
db.createUser( { user: "mongouser", pwd: "someothersecret", roles: ["readWrite"] })
  • Para ello he de arrancar mongod que debe de ser una instancia de mongo en monousuario, pero no lo consigo
  • He debido de reestablecer el sistema a mongo 2.4 y la he cagado .... esto lo hice siguiente un comentario de stackoverFlow

http://stackoverflow.com/questions/30025083/mongodb-service-not-working-after-upgrade-to-ubuntu-15-04/34838572

sudo apt-get install --reinstall mongodb
  • De esto nos hemos dado cuenta por que después de hacerlo y ver la versión de mongo me sale 2.4, además falla mongod
mongod --f /etc/monogo.conf //Arrancar mono con el ficheor de configuración especificado
  • Después de varias pruebas desinstalo mongo, haciendo previamente una copia de las colecciones de /var/lib/mongodb creando un fichero mongo_colecciones.tar
apt-get purge mongodb mongodb-clients mongodb-server mongodb-dev //Aquí en 
apt-get remove
  • Ahora instalo desde cero
  • Sigo las instrucciones de la web, como no me chuta hago

apt-get install mongodb

y se pone a instalar

21/04/2017

  • Retomo el proyecto
  • Tenia la versión 3.xx de mongo
  • restablezco la 2.4.9
  • Al arrancar la aplicación me da un fallo
  • Parece que tengo que volver a crear el usuario en mongo
vi /etc/mongodb.conf 
Y añadir (o descomentar) la línea:
 
auth = true
Creamos un usuario para la base de datos admin (usuario root)
 $ mongo
  use admin
  db.addUser("root", "password")
Ahora nos autentificamos para poder hacer cosas sobre la base de datos
 db.auth("root","root")
.....

Crear un nuevo usuario en mongo

db.getSiblingDB("admin").runCommand({authSchemaUpgrade: 1 });
 
// Usuario root:
db.createUser({user:"root",pwd:"secret", roles:[{role:"root",db:"admin"}]})
 
// Y luego ya crear el nuevo usuario usuario con el nuevo formato:
use new_database
db.createUser( { user: "mongouser", pwd: "someothersecret", roles: ["readWrite"] })