Установка InterBase и MongoDB в Linux (Ubuntu server)

Posted by on in Blogs

Надеюсь, пока мы готовимся выпустить новый релиз RAD Studio с поддержкой Linux, вы уже готовите соответствующую инфраструктуру! 

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

  1 - как установить "Platform Assist" server, который нужен для загрузки и отладки из IDE RAD Studio программ на Linux сервер,
  2 - как установить на сервер под управлением Linux наиболее распространенные СУБД, особенно те, которые будут использоваться в наших демонстрационных примерах. 

Пункт 1 из этого списка прекрасно описан в блоге "Configure Delphi and RedHat or Ubuntu for Linux development" ("Deploying the PAServer”) на английском языке; этого вполне достаточно для тех, кому это описание требуется срочно. Я опубликую соответствующее краткое руководство на русском чуть позже, а сейчас необходимо привести инструкции по второму вопросу, так как на практике встретились некоторые особенности, связанные с Linux

К этому моменту у нас уже есть Ubuntu Linux 64-бит сервер, установленный в виртуальную машину. Теперь нужно установить и настроить на этом сервере InterBase XE7 Developer Server и нужный для демонстрации сервер MongoDB Community Edition.

Напомню, что InterBase - cверхбыстрая, масштабируемая и встраиваемая SQL-СУБД с возможностями защиты данных коммерческого уровня, аварийного восстановления и синхронизации изменений - доступна в нескольких редакциях. Загрузить бесплатную  редакцию сервера для разработчиков можно на сайте Embarcadero. В 64-битный Linux имеет смысл поставить 64-битный сервер InterBase. 

InterBase Developer Server

Дистрибутив InterBase содержится в сжатом архиве InterBase_XE7.zip. Если в Ubuntu не был ранее установлен распаковщик, нужно предварительно установить unzip.

 

Для переноса скачанного архива в каталог /tmp/IBXE7 на Ubuntu я воспользовался утилитой WinSCP, а для распаковки архива - командой

unzip InterBase_XE7_EN.zip

Перед установкой необходимо дать соответствующему файлу инсталлятора права на выполнение

cd /tmp/IBXE7
chmod +x install_linux64.sh

Далее важно выполнять установку с правами привилегированного пользователя. у меня сработала такая команда:

sudo sh install_linux64.sh

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

На остальные вопросы можно отвечать по умолчанию, просто нажимая Enter. По завершении установки перейдем в каталог, куда InterBase был установлен, и проверим список файлов в этом каталоге и подкаталоге bin.

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

Тут есть определенная проблема, так как привычный графический диалог регистрации не стартует из-за отсутствие GUI. Нужно выполнить такое заклинание:

cd /opt/interbase
sudo ./bin/LicenseManagerLauncher -i Console

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

Можно выбрать 3 опцию и затем следовать инструкциям, присланным по электронной почте, но если есть выход в интернет, проще зарегистрировать сервер по варианту 2 - Direct register. Ниже на картинке пример ответов на вопросы при регистрации. 

После регистрации сервер можно запускать. Для этого используется ibmgr (Linux InterBase Server Manager)

cd /opt/interbase
sudo ./bin/ibmgr

команда start запускает сервер InterBase, stop - останавливает.

MongoDB Community Edition Server

Бесплатная редакция MongoDB Community Edtion одной из самых популярных NoSQL СУБД, доступна теперь только в 64-битном варианте, поэтому устанавливать его можно только в 64-битный Linux.

Сама по себе процедура не сложная и подробно описана в документации на сайте MongoDB. Приведу общую последовательность команд и замечания.

Установочные пакеты имеют цифровую подпись для надежности. Поэтому, прежде всего, нужно выкачать соответственные публичные ключи

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

Затем создать файл со списком 

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

и обновить  локальную базу данных пакетов apt-get

sudo apt-key update

После этого выполнить установку сервера

sudo apt-get install -y mongodb-org

MongoDB будет установлен в каталоги по-умолчанию и будет хранить данные в  /var/lib/mongodb и файлы журналов в /var/log/mongodb. Сервис (демон) СУБД будет стартовать с правами пользователя mongodb, поэтому обязательно нужно изменить права доступа к указанным каталогам для этого пользователя. Все стартовые настройки находятся в файле /etc/mongod.conf.

Чтобы запустить mongoDB, как сервис, нужно выполнить

sudo service mongod start

а чтобы остановить

sudo service mongod stop

Проверить успешность запуска можно просмотром журнала

tail /var/log/mongodb/mongod.log

и искать там строку

[initandlisten] waiting for connections on port 'port',
где 'port' - номер порта связи, указанный в настройках, по умолчанию - 27017

По умолчанию в настройках  доступен только localhost (адрес 127.0.0.1), чтобы открыть доступ по другим адресам, необходимо модифицировать файл /etc/mongod.conf



About
Gold User, Rank: 11, Points: 295
SC at Embarcadero. DB Tools expert Delphi practitioner

Comments

Check out more tips and tricks in this development video: