Установка MongoDB на Ubuntu 10.04 и связывание с PHP 23.09.2010

MongoDB — это документная база данных, написанная на c++. Для обмена данными с клиентом использует JSON, а хранит в двоичном формате BSON. По методу обмена данными эта база данных относится к NoSQL, т.е. использует не классический метод для взаимодействия реляционных баз данных и клиента (без SQL).

Для установки в Ubuntu достаточно прописать в консоле:

  1. $ sudo apt-get install mongo

По окончании установки, для проверки работоспособности, выполните в консоле:

  1. $ mongo

Вы должны увидеть примерно следующее приветствие:

  1. MongoDB shell version: 1.2.2
  2. type "exit" to exit
  3. type "help" for help

Возможные проблемы:

mongo: error while loading shared libraries: libmozjs.so: cannot open shared object file: No such file or directory

Монго ругается на недостающую библиотеку, попробуем ее найти

  1. $ find /usr/lib -name libmozjs.so
  2. #если библиотека не нашлась, то необходимо установить firefox, и повторить
  3. $ sudo apt-get install firefox
  4. #У нас есть путь, теперь необходимо сделать так, что бы mongo его увидела
  5. #для этого необходимо ее поместить в /usr/lib, это делается одним из способов ниже
  6. $ sudo cp <lib-path> /usr/lib
  7. $ sudo ln -s <lib-path> /usr/lib/libmozjs.so

JS Error: Error: couldn't connect: couldn't connect to server 127.0.0.1 127.0.0.1:27017 (anon):1028

Скорее всего сервер просто не запущен

  1. $ sudo service mongodb start

Устанавливаем соединение PHP с MongoDB

Установку будем проводить через PECL, если он не установлен, то выполняем следующее

  1. $ sudo apt-get install php-pear

и...

  1. $ sudo pecl install mongo
  2. sudo sh -c "echo 'extension=mongo.so' > /etc/php5/conf.d/mongo.ini"
  3. sudo service apache2 restart
  4. php -i | grep -i mongo
  5.  

Последняя команда должна вывести нечто подобное

  1. /etc/php5/cli/conf.d/mongo.ini,
  2. mongo
  3. MongoDB Support => enabled
  4. mongo.allow_persistent => 1 => 1
  5. mongo.auto_reconnect => 1 => 1
  6. mongo.chunk_size => 262144 => 262144
  7. mongo.cmd => $ => $
  8. mongo.default_host => localhost => localhost
  9. mongo.default_port => 27017 => 27017
  10. mongo.long_as_object => 0 => 0
  11. mongo.native_long => 0 => 0
  12. mongo.utf8 => 1 => 1

На этом установка завершена, можно сделать тестовое подключение

  1. $mongo = new Mongo('localhost');
  2. $database = $mongo -> test;
  3.  
  4. $itemarray(
  5.     "id"    => "ololo"
  6. );
  7.  
  8. $database -> items -> insert($item);
  9.  
  10. $cursor = $database -> items -> find( array("id" => "ololo") );
  11.  
  12. foreach($cursor as $item){
  13.     var_dump($item);
  14. }

Надеюсь эта статья окажется вам полезной


, , , , ,


Похожие статьи


Добавить комментарий