Category: Brukerveiledninger

Installere Mongo og Mongod

MongoDB er en dokumentbasert, såkalt nosql-database. Det vil si at data ikke lagres i tabeller og rader som i en relasjonell database, som f.eks. MySql, men i objekter, i MongoDBs tilfelle som bson-ojekter (bson = binær json). Dette gjør databasen spesielt egnet til objektorienterte programmeringsspråk, hvor man slipper å gå veien om en såkalt ORM (Object Relational Mapper). ORMs er kjent for å skalere dårlig, og MongoDB brukes spesielt innenfor det som kalles Big Data, bl.a. til å analysere loggfiler fra webservere. (mer…)

Gitt at en webserver og php allerede er installert, kan mongo instaleres via pecl, slik

# pecl install mongo

Hvis alt går som det skal, får du disse meldingene:

Build process completed successfully
Installing ‘/usr/lib/php/modules/mongo.so’
install ok: channel://pecl.php.net/mongo-1.0.4
You should add «extension=mongo.so» to php.ini

Neste skritt er å sette inn linjen extension=mongo.so i filen: php.ini

I en Ubuntu-installasjon med Apache2, finner vi php.ini her, og kan redigere den, f.eks. med vim:

# vim /etc/php5/apache2/php.ini

Restart Apache for å effektuere endringene, og mongodb er tilgjengelig fra php-skript.

 

 

 

 

Her er et enkelt php-skript som kobler seg til en Mongo-database og setter inn et par dokumenter i en samling og lister dem opp etterpå:

<?php
error_reporting(E_ALL);
ini_set(‘display_errors’, ‘1’);

header(«Content-type: text/plain»);

$connection = new Mongo();
$db = $connection->mydb;

$collection = $db->mycollection;
$myobj = array(«first_name» => «John», «last_name» => «Doe», «age» => 30);
$myobj2 = array(«first_name» => «Jane», «last_name» => «Doe», «age» => 27);
$collection->insert($myobj);
$collection->insert($myobj2);

$cursor = $collection->find();
foreach($cursor as $result)
{
echo «Name: » . $result[«last_name»] . «, » . $result[«first_name»] . «\n»;
echo «Age: » . $result[«age»] . «\n\n»;
}

//$db->drop();
$connection->close();
?>