Что необходимо набрать в командной строке после установки mongodb для ввода команд

Основы MongoDB за 5 минут

Данная статья рассчитана на новичков, для тех кто хочет быстро изучить основы работы в MongoDB не влезая в документацию и туториалы на ютубе. Если в данной статье упущены некоторые темы, то автор посчитал, что человек неразбирающийся в теме сам будет в состоянии загуглить это + на протяжении всей статьи расставлены ссылки на документацию, дабы новичкам было легче ориентироваться.

Считается одним из классических примеров NoSQL-систем, использует JSON-подобные документы и схему базы данных. Данную базу данных применяют в веб-разработке, в частности, в рамках JavaScript-ориентированного стека MEAN, MEVN, MERN, которые часто используются веб-разработчиками, как любимые стеки технологий для создания приложений.

Установка

Скачать MongoDB можно с официального сайта для Linux, MacOS, Windows.

В Linux это также можно сделать с одной из следующих команд:

brew

Также для того чтобы взаимодействовать с БД нам потребуется шелл (MongoShell), который качается отдельно: https://www.mongodb.com/try/download/shell?jmp=docs

Основы

После успешной установки MongoDB и Mongoshell мы можем спокойно начать взаимодействовать с базой данных с помощью терминала. Достаточно просто ввести mongosh :

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Более подробно о том, что будет ниже можно прочитать здесь

Всё дело в том, что в mongoDB не существует базы данных, покуда мы в неё что-то не поместим. Также, при обращении к определенным объектам (база данных, коллекция) mongoDB они меняют значение, только если существуют, а если не существуют, то они просто создаются. Давайте продемонстрируем принцип работы:

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Для того чтобы создать новую базу данных (или использовать существующую) мы должны использовать ключевое слово use :

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Давайте создадим новую коллекцию под названием customers (покупатели) и положим туда значение name: Daniil :

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Далее мы можем посмотреть наши коллекции с помощью специального метода getCollectionNames :

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Вуаля! У нас есть массив из наших коллекций и по такому же принципу (нахождения нужных нам методов) можно исследовать всю MongoDB, однако мне ещё есть что рассказать, продолжим.

Есть ещё сокращения команд, которые мы тоже можем использовать, например show collections вернёт нам то же самое, однако вид будет более читаемый для человека:

Что необходимо набрать в командной строке после установки mongodb для ввода команд

У нашей коллекции, к слову, тоже есть методы и свойства, но они немного другие:

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Давайте добавим ещё нескольких покупателей с помощью метода insertMany() :

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Итак, давайте заметим несколько моментов на скриншоте:

Метод insertMany() принимает массив элементов, а не просто элементы

MongoDB все равно прилегают ли ключи и их значения к скобкам или нет

Синтаксис MongoDB очень похож на синтаксис JavaScript, поэтому мы можем использовать все виды кавычек (двойные, одинарные, обратные).

Теперь давайте выведем двух пользователей (не важно каких) из нашего списка используем следующую команду db.customers.find().limit(2) :

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Как мы видим мы вывели всего два объекта из нашей коллекции, однако что ещё мы можем делать с «найденными» объектами? А вот что:

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Теперь давайте рассортируем наши значения с помощью метода sort() :

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Можно сортировать значения и с помощью двух аргументов, но для начала давайте их добавим! Для того чтобы добавить значения к найденному элементу коллекции давайте применим функцию updateOne :

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Теперь давайте применим метод updateMany() для того чтобы поменять значения у множества элементов, а затем перейдем к сортировке с двумя аргументами:

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Теперь рассортируем массив с помощью двух аргументов:

Что необходимо набрать в командной строке после установки mongodb для ввода команд

MongoDB позволяет получить специфические поля из найденных объектов и не показывать другие (нам ненужные поля):

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Также мы можем выводить наши значения и с помощью других методов, однако дочерние методы тоже будут другими:

Что необходимо набрать в командной строке после установки mongodb для ввода команд

В данном случае мы перевели наш массив данных в обычный массив. Позже мы сможем проводить над ним некие операции.

Более сложные запросы

Атомные операторы нужны для того, чтобы усложнять запросы. Популярные атомные операторы:

Некоторые из них мы рассмотрим ниже:

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Как мы видим тут вывелись все записи, у которых поле age больше чем 15.

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Добавим ещё один объект, у которого не будет поля age и проверим работу оператора exists :

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Видим, что тут exists отработал верно и запись с name: ‘Denis’ не вывелась.

Стоит уточнить, что атомные операторы работают почти со всеми командами в MongoDB, вы можете совмещать их и создавать сложные запросы.

Все остальные команды по типу:

deleteOne (удаляет запись)

replaceOne (заменяет запись)

updateOne (обновляет запись)

и их братья-близнецы с Many работают точно так же. Вы можете попробовать узнать зачем они нужны просто создав базу данных с парой записей и поэксперементировать (в конце-концов так материал будет усваиваться достаточно быстро и осядет в вашей голове на долгое время), ведь всё что вам нужно вы уже узнали.

Если вам была интересна данная статья, то вы можете найти больше подобных статей в моем блоге. Надеюсь, что я приоткрыл завесу MongoDB и дал понять, что он уж точно не сложней, чем все остальные базы данных.

Источник

MongoDB для начинающих: основные команды (часть 2/3)

Сегодня мы продолжим разговор о СУБД MongoDB. В этом уроке вас ждёт знакомство с основными командами для работы с БД через командную строку.

Поскольку данный урок написан для начинающих, мы рассмотрим только самые необходимые основы. Если же вы хотите получить нечто большее, то можете ознакомиться с официальной документацией.

Итак, сейчас мы займёмся заполнением коллекции ТВ шоу, (shows), с которой в следующей части будем работать непосредственно из PHP скриптов.

Для начала вам необходимо запустить командную строку и запустить MongoDB:

Для просмотра БД, который по умолчанию достались нам после установки набираем команду:

Итак, для нашего примера можем воспользоваться базой данных `test`. В ней мы создадим коллекцию `shows` и поместим туда несколько записей. Для начала давайте создадим сами записи и запишем их в переменные.

Если вы внимательно посмотрите на приведённые строки, то увидите что записи представляют из себя строки в формате JSON. После выполнения данных команд, MongoDB выведет вам их в отформатированном виде.

Так же, я думаю вы заметили, что мы ещё не создали коллекцию shows. Данная операция выполнится автоматом, когда мы будем добавлять данные в коллекцию. Теперь, нам необходимо воспользоваться командой `.save()` для сохранения записей:

В результате выполнения последних команд, коллекция shows будет заполнена тремя JSON строками. Для просмотра всех коллекций можно воспользоваться командой `show collections`.

Для просмотра данных коллекции можем воспользоваться методом `find()`:

На этом всё. В следующей статье я покажу вам как работать с СУБД MongoDB через PHP.

Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: http://www.hongkiat.com/blog/webdev-with-mongodb-part2/
Перевел: Станислав Протасевич
Урок создан: 8 Апреля 2013
Просмотров: 47443
Правила перепечатки

5 последних уроков рубрики «PHP»

Фильтрация данных с помощью zend-filter

Когда речь идёт о безопасности веб-сайта, то фраза «фильтруйте всё, экранируйте всё» всегда будет актуальна. Сегодня поговорим о фильтрации данных.

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Контекстное экранирование с помощью zend-escaper

Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Подключение Zend модулей к Expressive

Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Совет: отправка информации в Google Analytics через API

Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Подборка PHP песочниц

Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

Источник

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Для установки MongoDB загрузим один распространяемых пакетов с официального сайта https://www.mongodb.com/try/download/community.

Для загрузки нобходиомго функционала выберем нужную операционную систему и подходящий тип пакета. Рассмотрим на примере установки на ОС Windows.

MongoDB можно загрузить в ряде вариантов. Так, для Windows доступна загрузка установщика msi и также доступна загрузка zip-пакета. В реальности нам достаточно загрузить zip-архив и распаковать в нужной нам папке. Поэтому выберем этот вариант загрузки:

Что необходимо набрать в командной строке после установки mongodb для ввода команд

Если до установки уже была установлена более ранняя версия MongoDB, то ее необходимо удалить.

Содержимое пакета MongoDB

Если после установки мы откроем папку bin в распакованном архиве ( C:\mongodb\bin ), то сможем найти там кучу приложений, которые выполняют определенную роль. Вкратце рассмотрим их.

Что необходимо набрать в командной строке после установки mongodb для ввода команд

    mongo : представляет консольный интерфейс для взаимодействия с базами данных, своего рода консольный клиент

    mongod : сервер баз данных MongoDB. Он обрабатывает запросы, управляет форматом данных и выполняет различные операции в фоновом режиме по управлению базами данных

    mongos : служба маршрутизации MongoDB, которая помогает обрабатывать запросы и определять местоположение данных в кластере MongoDB

    Создание каталога для БД и запуск MongoDB

    После установки надо создать на жестком диске каталог, в котором будут находиться базы данных MongoDB.

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    Командная строка отобразит нам ряд служебной информации, например, что сервер запускается на localhost на порту 27017.

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    Это консольная оболочка для взаимодействия с сервером, через которую можно управлять данными. Второй строкой эта оболочка говорит о подключении к серверу mongod.

    Теперь поизведем какие-либо простейшие действия. Введем в mongo последовательно следующие команды и после каждой команды нажмем на Enter:

    С помощью метода db.users.insertOne() в коллекцию users базы данных test добавляется объект < name: "Tom" >. Описание добавляемого объекта определяется в формате, с которым вы возможно знакомы, если имели дело с форматом JSON. То есть в данном случае у объекта определен один ключ «name», которому сопоставляется значение «Tom». То есть мы добавляем пользователя с именем Tom.

    Если объект был успешно добавлен, то консоль выведет результат операции, в частности, идентификатор добавленного объекта.

    А третья команда db.users.find() выводит на экран все объекты из бд test.

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    Установка драйверов MongoDB

    На офсайте на странице https://docs.mongodb.com/ecosystem/drivers/ можно найти список драйверов для всех поддерживаемых языков программирования, в частности, для PHP, C, C++, C#, Java, Go, Python, Rust, Ruby, Scala, Swift, а также для Node.js.

    Работа с драйверами на конкретных языках программирования будет рассмотрена в соответствующих разделах, посвященных этим языкам..

    Источник

    MongoDB для начинающих: знакомство и установка (часть 1/3)

    Также MongoDB включает в себя собственную утилиту для выполнения команд, направленных на работу с БД. В данном цикле статей, мы затронем следующие темы:

    Разработчикам не составляет труда быстро освоить работу с Mongo, если они знакомы с JSON. Этот формат использует выражения, которые состоят из пар “ключ”: “значение”.

    Почему MongoDB

    Между не табличными СУБД многие пользователи делают выбор в пользу MongoDB. Во-первых, данную систему можно установить практически на всех операционных системах (Windows, OSX, Linux). Во-вторых, проект до сих пор активно развивается и с завидной частотой команда разработчиков публикует обновления. Также мне кажется, что MongoDB предоставляет хорошую документацию для начинающих.

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    MongoDB лучше подходит в тех случаях, когда таблицы можно представить в виде объектов. По-моему, подобные системы лучше использовать при разработке приложений для мобильный устройств. В этом плане, Mongo предоставляет отдельные библиотеки, как для iOS, так и для Adndroid-а.

    Ключевая терминология

    Перед тем как приступить к установке MongoDB, давайте разберёмся с основными понятиями.

    Как и MySQL, MongoDB может содержать множество баз данных, только вместо таблиц они содержат “коллекции”.

    Пример:

    Внутри коллекции Users (пользователи) может располагаться запись с ключами firstname (имя) и lastname (фамилия). В то же время, та же коллекция может содержать запись с другими ключами: firstname, lastname, e-mail, birth (день рождения). В этом-то и заключается гибкость MongoDB.

    Пример:

    Поначалу данная терминология может быть непривычной. Всё будет намного понятнее, когда вы увидите работу с СУБД на практике.

    Установка MongoDB на Windows

    Сперва качаем архив с MongoDB для win32 или win64.

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    Далее, нажимаем на кнопку “Переменные среды”:

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    В открывшемся окне ищем системную переменную Path. Кликаем по ней дважды. В поле “значение переменной” переходим в самый конец, ставим знак “;” и вписываем путь к каталогу bin:

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    Отлично! Жмём “ок”. и переходим к следующему шагу.

    Далее нам необходимо зарегистрировать MongoDB как сервис, чтобы он запускался автоматически при включении компьютера. Для этого вызываем командную строку и пишем:

    Данная команда создаст специальный лог файл и настройки конфигурации для сервиса.

    Далее создаём сервис:

    Возвращаемся к командной строке и запускаем сервис MongoDB:

    Для того чтобы проверить, будет ли сервис запускаться автоматически, нажимаем сочетание клавиш “windows+r”, пишем “services.msc”, нажимаем ОК.

    В списке сервисов ищем MongoDB и, если его тип запуска не автоматический, то выставляем данный пункт, предварительно сделав правый клик, и выбрав, “свойства”.

    Теперь, когда мы создали сервис, который будет запускать MongoDB при включении компьютера, нам не нужно будет делать это вручную.

    Для проверки работы MongoDB открываем командную строку и пишем:

    Нажимаем Enter. Далее можем работать с данной СУБД. К примеру, посмотрим, какие сейчас у нас есть базы:

    В ответе вы должны увидеть вот такую вот строку:

    Итак, MongoDB установлена и сконфигурирована. В следующей части мы рассмотрим основные команды для работы с данной СУБД.

    Данный урок подготовлен для вас командой сайта ruseller.com
    Источник урока: http://www.hongkiat.com/blog/webdev-with-mongodb-part1/
    Перевел: Станислав Протасевич
    Урок создан: 3 Апреля 2013
    Просмотров: 112285
    Правила перепечатки

    5 последних уроков рубрики «PHP»

    Фильтрация данных с помощью zend-filter

    Когда речь идёт о безопасности веб-сайта, то фраза «фильтруйте всё, экранируйте всё» всегда будет актуальна. Сегодня поговорим о фильтрации данных.

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    Контекстное экранирование с помощью zend-escaper

    Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    Подключение Zend модулей к Expressive

    Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    Совет: отправка информации в Google Analytics через API

    Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.

    Что необходимо набрать в командной строке после установки mongodb для ввода команд

    Подборка PHP песочниц

    Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

    Источник

    The mongo Shell¶

    The mongo shell is an interactive JavaScript interface to MongoDB. You can use the mongo shell to query and update data as well as perform administrative operations.

    Download the mongo Shell¶

    The mongo shell is included as part of the MongoDB server installation. If you have already installed the server, the mongo shell is installed to the same location as the server binary.

    Alternatively, if you would like to download the mongo shell separately from the MongoDB Server, you can install the shell as a standalone package by following these steps:

    Access the Download Center for your Edition of MongoDB:

    Select the Package to download according to your platform:

    For additional installation guidance specific to your platform, or to install the mongo shell as part of a MongoDB Server installation, see the installation guide for your platform.

    Start the mongo Shell and Connect to MongoDB¶

    Once you have downloaded the mongo shell, you can use it to connect to your running MongoDB server.

    Starting in MongoDB 4.2 (and 4.0.13), the mongo shell displays a warning message when connected to non-genuine MongoDB instances as these instances may behave differently from the official MongoDB instances; e.g. missing or incomplete features, different feature behaviors, etc.

    Prerequisites¶

    Once you have verified that the mongod server is running, open a terminal window (or a command prompt for Windows) and go to your directory:

    macOS Security Verification¶

    macOS may prevent the mongo shell from running after installation. If you receive a security error when starting the mongo shell indicating that the developer could not be identified or verified, do the following to grant the mongo shell access to run:

    Local MongoDB Instance on Default Port¶

    You can run mongo shell without any command-line options to connect to a MongoDB instance running on your localhost with default port 27017:

    Local MongoDB Instance on a Non-default Port¶

    MongoDB Instance on a Remote Host¶

    To explicitly specify the hostname and/or port,

    You can specify a connection string. For example, to connect to a MongoDB instance running on a remote host machine:

    . For example, to connect to a MongoDB instance running on a remote host machine:

    command-line options. For example, to connect to a MongoDB instance running on a remote host machine:

    MongoDB Instance with Authentication¶

    To connect to a MongoDB instance requires authentication:

    You can specify the username, authentication database, and optionally the password in the connection string. For example, to connect and authenticate to a remote MongoDB instance as user alice :

    If you do not specify the password in the connection string, the shell will prompt for the password.

    Connect to a MongoDB Replica Set¶

    To connect to a replica set:

    You can specify the replica set name and members in the connection string.

    If using the DNS Seed List Connection Format, you can specify the connection string:

    Use of the +srv connection string modifier automatically sets the ssl option to true for the connection.

    . command-line option. For example, to connect to replica set named replA :

    TLS/SSL Connection¶

    For TLS/SSL connections,

    You can specify the ssl=true option in the connection string.

    If using the DNS Seed List Connection Format, you can include the +srv connection string modifier:

    Use of the +srv connection string modifier automatically sets the ssl option to true for the connection.

    For more information on the options used in the connection examples as well as other options, see mongo reference and examples of starting up mongo.

    Working with the mongo Shell¶

    To display the database you are using, type db :

    To switch databases, issue the use helper, as in the following example:

    See also db.getSiblingDB() method to access a different database from the current database without switching your current database context (i.e. db ).

    You can switch to non-existing databases. When you first store data in the database, such as by creating a collection, MongoDB creates the database. For example, the following creates both the database myNewDatabase and the collection myCollection during the insertOne() operation:

    If the mongo shell does not accept the name of a collection, you can use the alternative db.getCollection() syntax. For instance, if a collection name contains a space or hyphen, starts with a number, or conflicts with a built-in function:

    The mongo shell prompt has a limit of 4095 codepoints for each line. If you enter a line with more than 4095 codepoints, the shell will truncate it.

    For more documentation of basic MongoDB operations in the mongo shell, see:

    Format Printed Results¶

    The db.collection.find() method returns a cursor to the results; however, in the mongo shell, if the returned cursor is not assigned to a variable using the var keyword, then the cursor is automatically iterated up to 20 times to print up to the first 20 documents that match the query. The mongo shell will prompt Type it to iterate another 20 times.

    In addition, you can use the following explicit print methods in the mongo shell:

    For more information and examples on cursor handling in the mongo shell, see Iterate a Cursor in the mongo Shell. See also Cursor Help for list of cursor help in the mongo shell.

    Multi-line Operations in the mongo Shell¶

    If you end a line with an open parenthesis ( ‘(‘ ), an open brace ( ‘<' ), or an open bracket ( '[' ), then the subsequent lines start with ellipsis ( ". " ) until you enter the corresponding closing parenthesis ( ')' ), the closing brace ( '>‘ ) or the closing bracket ( ‘]’ ). The mongo shell waits for the closing parenthesis, closing brace, or the closing bracket before evaluating the code, as in the following example:

    You can exit the line continuation mode if you enter two blank lines, as in the following example:

    Tab Completion and Other Keyboard Shortcuts¶

    The mongo shell supports keyboard shortcuts. For example,

    Use to autocomplete or to list the completion possibilities, as in the following example which uses to complete the method name starting with the letter ‘c’ :

    For a full list of the shortcuts, see Shell Keyboard Shortcuts

    .mongorc.js File¶

    Exit the Shell¶

    To exit the shell, type quit() or use the shortcut.

    Comparison of the mongo Shell and mongosh В¶

    mongosh is currently available as a Beta release. The product, its features, and the corresponding documentation may change during the Beta stage.

    The new MongoDB Shell, mongosh, offers numerous advantages over the mongo shell, such as:

    During the beta stage, mongosh supports a subset of the mongo shell methods. Achieving feature parity between mongosh and the mongo shell is an ongoing effort.

    Источник

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

    Ваш адрес email не будет опубликован. Обязательные поля помечены *