Субд для linux
Субд для linux
Данный обзор — субъективные впечатления автора и не претендует на полную объективность. Наверняка, в обзоре много неточностей и ошибок. Сообщите мне о них. Возможно, кто-то продвинулся дальше и сможет рассказать многое в свою очередь. Многие СУБД рассматривались поверхностно и не испытывались вообще. Велись поиски под конкретный проект и некоторые варианты отбрасывались на этапе изучения документации.
Предисловие
Итак, не было специальной цели написания данного обзора. Цель была другая. Требовалось найти СУБД для системы, которая должна решать одну из основных задач автоматизации Сбербанка — лицевые счета клиентов. Поиски привели к тому, что пришлось пересмотреть несколько доступных на сегодня свободных СУБД. В результате сложилось определенное впечатление, которое и приведено ниже.
В обзоре отсутствуют объяснения, почему в качестве платформы автоматизации была выбрана ОС Linux. Это тема другой статьи. Если коротко, то Linux это Unix-like операционная система с сетевой оконной графической системой X Window. Все компоненты системы, включая исходные тексты, распространяются свободно. Здесь же перечислю те требования, которые я предъявлял к СУБД, с позиций ее применения в упомянутой системе:
- реальный многопользовательский режим;
- транзакционная защита от сбоев;
- возможность «плотного» хранения данных. (Имеется в виду возможность хранения множества типов, например языка С, и возможность их обработки. Требование связано с объемом и составом данных. Примерный объем 50000-100000 записей лицевых счетов и 300000-500000 записей о движении денег.);
- желательно, чтобы СУБД работала в режиме клиент-сервер через TCP/IP;
- возможность работать с базой из процедурного языка, лучше из С или С++. Желательно иметь доступ типа SQL;
- и, наконец, СУБД должна обладать достаточной «скорострельностью» (Например, задача получения баланса, т.е. сложение массива чисел (см. объем базы) на процессоре 486DX при 8 Мб и средних по скорости IDE дисках не должна занимать более 5 мин.)
Возможно, последнее требование сформулировано не совсем корректно, тем более, что все это можно улучшать за счет аппаратуры. Но интуитивно должно быть понятно, что я хотел сказать.
Замечу, что предыдущий вариант системы был сделан в SCO UNIX с использованием коммерческой СУБД Raima Data Manager (RDM), известной больше под названием dbVista 3.21. И, надо сказать, RDM показала себя с лучшей стороны. Она удовлетворяла практически всем перечисленным требованиям, если не считать отсутствия режима клиент-сервер.
Кстати, загрузочная прикладная программа, собранная под управлением SCO Unix с библиотекой RDM, с успехом работала в Linux (через систему совместимости iBCS) и гораздо быстрее, чем в родном ей SCO UNIX. По некоторым данным, в Linux можно изготовить объектный модуль (в формате COFF), который линкуется с библиотекой из SCO Unix. Я не проверял, если кто знаком с этой технологией, пусть поделится. Если это так, то получается, что Linux позволяет работать с SCO-версией RDM, и при этом SCO Unix не нужен вообще.
Тому, кто знаком с RDM, должны быть понятны мои пристрастия. Среди требований ничего не сказано об интерфейсе с пользователем. Этот интерфейс логичнее, проще и стандартнее сделать другими средствами, например, на Tcl/Tk для X Window. Поэтому не обсуждаем эти вопросы.
Рассмотренные СУБД, пункты обзора и условности.
В следующем разделе приведена информация по СУБД:
- Postgres
- Ingres
- Mbase
- ONYX
- mSQL
- Typhoon
- LINCKS
- Exodus
Информация представлена в следующем виде:
ИТ База знаний
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Популярное и похожее
Установка VirtualBox 6.0 на Linux
Как восстановить пароль от root в CentOS 7
Установка VirtualBox 6.0 на Linux
Захват пакетов с tcpdump: руководство с примерами
Как создавать и выбирать базы данных MySQL в Linux
All your base are belong to us
3 минуты чтения
MySQL — одна из самых популярных систеа управления реляционными базами данных с открытым исходным кодом. В этом руководстве объясняется, как создавать базы данных MySQL или MariaDB с помощью командной строки Linux.
Подготовка
У вас в системе должен быть установлен сервер MySQL или MariaDB.
Все команды выполняются от имени администратора (минимальная привилегия, необходимая для создания новой базы данных — CREATE ) или с учетной записью root.
Чтобы получить доступ к оболочке MySQL, используйте команду:
После чего чего появится запрос где нужно ввести пароль пользователя root MySQL. Если вы не установили пароль для своего рутового пользователя MySQL, вы можете пропустить опцию -p .
Создание базы данных MySQL
Создать новую базу данных MySQL так же просто, как запустить одну команду.
Чтобы создать новую базу данных MySQL или MariaDB, введите следующую команду, где database_name — это имя базы данных, которую вы хотите создать:
Мы должны получить следующий вывод:
Если вы попытаетесь создать базу данных, которая уже существует, вы увидите следующее сообщение об ошибке:
Чтобы избежать ошибок, если база данных с тем же именем, которое вы пытаетесь создать, существует, используйте оператор IF NOT EXISTS :
Получим следующий вывод:
В приведенном выше выводе Query OK означает, что запрос был успешным, а 1 предупреждение говорит нам, что база данных уже существует, и новая база данных не была создана. Учитывайте что в Linux базы данных MySQL и имена таблиц чувствительны к регистру.
Просмотреть все базы данных MySQL
Чтобы просмотреть созданную вами базу данных из оболочки MySQL, выполните следующую команду:
Команда выше выведет список всех баз данных на сервере. Вывод должен быть похож на это:
Выбрать базу данных MySQL
При создании базы данных, новая база данных не выбирается для использования.
Чтобы выбрать базу данных перед началом сеанса MySQL, используйте следующую команду:
Получим такой вывод:
После выбора базы данных все последующие операции, такие как создание таблиц, выполняются с выбранной базой данных.
Каждый раз, когда вы хотите работать с базой данных, вы должны выбрать ее с помощью оператора USE .
Вы также можете выбрать базу данных при подключении к серверу MySQL, добавив имя базы данных в конце команды:
Создание базы данных MySQL с помощью mysqladmin
Вы также можете использовать утилиту mysqladmin для создания новой базы данных MySQL из терминала Linux.
Например, чтобы создать базу данных с именем database_name , вы должны использовать следующую команду:
Полезна ли Вам эта статья?
Пожалуйста, расскажите почему?
Нам жаль, что статья не была полезна для вас 🙁 Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!
Подпишитесь на нашу еженедельную рассылку, и мы будем присылать самые интересные публикации 🙂 Просто оставьте свои данные в форме ниже.
Средства визуального проектирования Баз Данных в Linux
Сейчас я работаю над разработкой нового проекта и в нём я решил использовать много новшеств, которые уже давно заприметил, но в силу того что до этого проекты были типичными использовать их не было необходимости.
В качестве одного из новшеств я решил не создавать Базу Данных вручную, как это было раньше, а сделать её используя какое-нибудь средство для визуального проектирования БД. Но задача оказа лась сложнее, нежели я думал.
Для начала нужно было найти программу, которая отвечает следующим требованиям:
Работает в Ubuntu Linux без использования Wine и других эмуляторов Windows. Марк Шаттлворт сказал, что использование Wine неправильный путь, и я с ним согласен;
Не должна связываться с БД, так как это не к чему, да и хостеры зачастую не дают доступа к MySQL извне.
Умеет создавать ER-модель БД;
Умеет создавать из модели SQL-код, пригодный для использования в MySQL.
Первое на что я обратил внимание, естественно, была программа MySQL Workbench (скачать MySQL Workbench). После установки версии 5.1.5aplha и не долгих тестов я был очень рад, так как понял что это именно то, что я хотел. Но моя радость была не долгой. После того как я приступил к созданию модели нужной мне БД програма начала вести себя неадекватно и вылетала при каждом удобном случае. После долгих попыток «договориться» с программой не приведших вообще ни к какому результату, был продолжен поиск аналогичных программ.
Было опробовано дополнение к IDE Eclipse — AmaterasERD. Плагин хорош только для быстрого набрасывания модели БД. Поддерживает построение отношений таблиц, но при этом нельзя указать какое действие должно производиться с зависимой таблицей (RESTRICT, CASCADE и т.д.). Да и превращение модели в SQL-код я не нашёл.
Был опробован GNU Ferret. Это что-то совсем аскетичное и на уровне начала 90-х.
OpenOffice.org: Базы данных — это сродни Microsoft Access и для данной задачи оказался бесполезен.
Execute Query — мощная среда, но в следствии того что я не могу подключиться к БД хостера мне не помогла. Также не имеет типов данных TEXT, BLOB и иже с ними.
Power*Architect Data Modeling Tool — удобное средство, но так же как и Execute Query имеет не все типы данных. Слегка аскетичное.
dbWrench — умеет делать всё что мне нужно, имеет приятный интуитивнопонятный интерфейс, работает быстро. Отличная альтернатива ещё очень сырому MySQL Workbench, НО она платная! 149 USD! Есть триал версия, которая работает 30 дней.
Есть ещё один интересный плагин для Eclipse от компании Soyatec, но я его ещё неиспытывал.
Выводы
В мире Linux есть много инструментов, которые могут выполнить поставленные мною задачи. Какие-то хуже, какие-то лучше, но идеального я так и не нашёл. Завтра испытаю плагин для Eclipse от Soyatec. Если он окажется лучше dbWrench, то буду проектировать БД в нём, а пока победитель моего обзора однозначно dbWrench , хоть он и платный!
Добавлено 28 января 2009 в 11:00
Плагин для Eclipse от компании Soyatec установить не удалось в силу моего низкого уровня знаний зависимостей плагинов среды Eclipse. Требуется плагин org.eclipse.pde, а я его найти и установить не смог.
Средства визуального проектирования Баз Данных в Linux: 6 комментариев
Я использую DBDesigner-4.
http://www.fabforce.net/dbdesigner4/index.php
А точнее его форк — http://sourceforge.net/projects/dbdesigner-fork
Дело в том, что сам проект уже не развивается, а Форк — это попытка оживить его.
Конечно там есть много странностей и глюков, но ничего лучшего я не нашел.
Его плюсы:
— Генерация SQL,
— свзяь с БД (синхронизация, реверс-инжениринг),
— кроссплатформенность,
— текстовый формат файла (XML), что удобно для SVN
Спасибо за обзор! Как раз нужно средство визуального проектирования под линукс
Спасибо за обзор, я действительно нашел кое-какие вещи полезными для себя. Хотелось бы сказать по поводу PDE (Plugin Development Environment), тут всё просто. Не смотря на то, что в названии присутствует слово Plugin (да и в Eclipse, грубо говоря всё плагины), это не 1-2 файла и ставить их отдельно не лучшая идея. Проще всего скачать готовую сборку, куда pde уже входит. Показательной может оказаться вот эта страница: http://www.eclipse.org/downloads/packages/compare-packages. PDE присутствует в 5-ти сборках, какую из них выбрать? Это вопрос индивидуальный, но думаю для рисования ER-диаграм наиболее уютным пристанищем будет Eclipse Modeling Tools.
Правда, сказать, я не пробовал устанавливать Soyatec, но с Вашей подачи он меня заинтересовал, так что я его ещё поизучаю.
пользуюсь MySQL Workbench всё устраивает… работает как часики.. Что конкретно не получалось там сделать?
Взгляните на хороший и бесплатный инструмент — Valentina Studio 5.x, который вышел буквально пару месяцев назад. Я юзаю уже месяц – до сих пор нахожу новые фишки.
http://www.valentina-db.com/valentina-studio-overview
Andrey, спасибо за наводку. Сегодня начну тестировать, а потом опишу свои впечатления.
Добавить комментарий Отменить ответ
Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.
Лучшие базы данных для Linux
В наше время базы данных используются везде, начиная от предприятий, где в них храниться различная производственная информация и имена сотрудников и заканчивая веб-сайтами. Большинство движков веб-сайтов хранят всю необходимую им информацию в базе данных и получают ее от туда. Такой способ работы намного быстрее, чем использование файлов для сохранения данных и намного надежнее, чем хранение данных в оперативной памяти.
За время развития технологий баз данных было создано много систем управления ими, моделей работы, а также программного обеспечения. В этой статье мы рассмотрим лучшие базы данных Linux, которые вы можете использовать в своих проектах. Вы сможете выбрать какое решение подойдет именно для вас и почему. Все пункты списка базы данных под linux расположены в случайном порядке. Все базы данных из списка поддерживают стандарт ACID.
1. MySQL
Разработка базы данных MySQL началась в 1995 году, за это время над ней работали несколько компаний, и сейчас она принадлежит Oracle. Кроме версии с открытым исходным кодом, существует несколько коммерческих версий, в которых реализованы дополнительные возможности, такие как кластер гео-репликации и автоматическое масштабирование.
MySQL относиться к типичным реляционным базам данных, все данные хранятся в таблицах и приложения могут очень быстро получить к ним доступ. Для запросов используется стандартный язык SQL, поддерживается большинство возможностей языка, определенных стандартом. При всем этом, она легка в использовании и развертывании.
За время своего развития MySQL получила поддержку различных типов таблиц, интеграцию во многие программы и языки программирования, а также имеет веб и графические интерфейсы для настройки.
2. PostgreSQL
Postgresql появился приблизительно в то же время, что и MySQL. Это объектно-реляционная база данных с открытым исходным кодом, все данные представлены в виде объектов. В отличие от MySQL, эта база данных неукоснительно следует всем стандартам SQL из-за чего она может показаться более сложной. Она разрабатывается программистами со всего мира, а направление развития контролируется советом.
Postgresql поддерживает множество интересных возможностей, среди которых оптимизация запросов, репликация данных, курсоры, позволяющие передавать только часть данных приложению, тиггеры — события для запросов SQL, поддержка шифрования по умолчанию. Кроме того, можно создавать пользовательские типы данных, а также сама база интегрирована во множество языков программирования и приложений.
3. SQLite
База данных SQLite была впервые выпущена в 2000 году. Она работает не в форме клиент-сервер, как это делают большинство баз данных, а представляет из себя библиотеку, которая встраивается в приложение. Все данные хранятся в одном файле, на том компьютере, где запущена программа. Читать данные из файла могут несколько клиентов одновременно, но записывать только один и если других операций чтения не выполняется.
Благодаря компактности SQLite накладные расходы минимальны, а установка и использование очень просты. В то же время база данных соответствует большинству требований стандарта SQL. Поэтому SQLite используется по умолчанию во многих веб-фреймворках, и программах для рабочего стола, например: Mozilla Firefox, Skype, Thunderbird и многих других.
4. MariaDB
Эта база данных основана на исходном коде MySQL и ее разработка началась после перехода оригинала в собственность Oracle. За работу взялись первоначальные разработчики MySQL. MariaDB сохраняет тесную совместимость с MySQL, поддерживаются все ее команды и синтаксис запросов. Кроме того, из дополнительных возможностей можно отметить поддержку таблиц: XtraDB, Aria, PBXT, FederateX, OQGRAPH, SphinxSE и другие.
Кроме таблиц была очень сильно улучшена производительность и добавлены новые возможности. Разработка ведется компанией MariaDB Foundation и разработчиками по всему миру, но в развитие проекта инвестируют деньги множество компаний, среди которых Google и Intel. Это лучшая и самая популярная база данных Linux.
5. Percona
Percona DB — это сборка базы данных MySQL со включенным по умолчанию движком таблиц XtraDB. Этот движок основан на InnoDB но дает более высокую производительность и больше статистики.
Движок таблиц XtraDB основан на InnoDB, но включает патчи исправлений от компаний Google и Percona, поэтому дает большую производительность. Здесь улучшен механизм работы с памятью, скорость ввода/вывода, добавлена поддержка работы нескольких потоков и управление пропускной способностью. Вы можете не использовать отдельный сервер баз данных, а включить XtraDB в MariaDB или MySQL.
6. MongoDB
MongoDB — это не реляционная, документарная база данных, которая была выпущена в 2007 году. Основная ее особенность в том, что данные хранятся не в виде строк в таблицах, а в документах, в формате JSON. Запросы на получение и изменение данных тоже оформляются через JavaScript подобный язык.
Эта база данных не подходит для хранения реляционных данных, данных между которыми важны связи. Но она дает очень высокую скорость работы. Над разработкой проекта работают более 1000 партнеров. Дальше, снова базы данных sql.
7. Firebird
Firebird — это реляционная система управления базами данных, основанная на исходном коде базы данных Interbase, которая была выпущена компанией Borland в 2000 году. Поддерживаются все инструкции стандарта SQL 92 и почти все из SQL 99. Поддержка ACID реализована с помощью версий записи, каждый запрос работает со своей версией, а это значит, что ничего не блокируется и не мешает друг-другу. Из дополнительных возможностей поддерживаются тиггеры и процедуры хранения.
8. CUBRID
Это объектно-реляционная система управления базами данных, которая появилась в 2008 году. Она имеет особую архитектуру, специально оптимизированную для быстрой работы веб-приложений. За каждую задачу отвечает отдельный процесс, что дает преимущество в скорости. На данный момент поддерживается стандарт SQL 92.
База данных может интегрироваться со множеством языков программирования, среди которых PHP, Perl, Python и Ruby.
Выводы
В этой статье мы рассмотрели лучшие бесплатные базы данных Linux и других операционных систем, которые вы можете использовать в своих проектах. Все они имеют открытый код и распространяются полностью бесплатно, но каждая из них имеет свои преимущества. Какую базу данных вы используете в своих проектах? Почему именно ее? Напишите в комментариях!
На завершение вы можете посмотреть видео, о том, что такое базы данных:
Приложения: Linux
Vivaldi 2.11.1811.52
Браузер Vivaldi для Linux, построен на базе Chromium, но при этом он определенно не является очередным клоном Google Chrome
Slimjet 26.0.3.0
Браузер для Linux на основе Chromium и движка Blink. Быстрый, настраиваемый, безопасный, стабильный, с поддержкой расширений
Arch Linux 2020.04.01
Дистрибутив GNU/Linux общего назначения, достаточно гибкий для выполнения любой роли. Ориентирован на опытных пользователей
qBittorrent для Linux 4.2.3
BitTorrent-клиент со встроенным поисковым движком, поддержкой unicode, Drag’n’Drop, возможностью скачивать только указанные файлы, а не весь торрент, работой через прокси и т.д. Версия для Linux
Linux Kernel 5.6.2
Linux Kernel — ядро операционной системы, соответствующее стандартам POSIX. Составляет основу операционных систем семейства Linux
mesa 20.0.3
Свободная реализация OpenGL для UNIX-подобных операционных систем. Несмотря на то, что официально Mesa не сертифицирована, она вполне соответствует стандарту OpenGL
Chromium 80.0.3987.162
Браузер с открытым исходным кодом, на основе которого создаётся Google Chrome и многие другие популярные браузеры
XAMPP для Linux 7.4.4.0
Удобный в установке дистрибутив Apache для использования в Linux
NetBSD 9.0 / 8.2
Cвободно распространяемая, кросс-платформенная (поддерживаются более 50 аппаратных платформ), защищенная Unix-подобная операционная система.
Google Chrome 80.0.3987.162
Браузер производства Google для Linux с открытым исходным кодом, сочетающий поддержку новейших веб-приложений и удобный поиск с высокой скоростью и стабильностью
Apache HTTP Server 2.4.43
Самый популярный веб-сервер. Версия для Linux
Telegram Desktop 2.0.1
Безопасный мессенджер, позволяющий обмениваться текстовыми сообщениями, а также фото- и видео-файлами. Имеет два режима работы — обычный и «секретный», использующий end-to-end шифрование
Nautilus 3.36.1.1
Файловый менеджер для Gnome, обеспечивающий простой единый способ управления файлами и каталогами
Stellarium 0.20.0
Астрономическая программа с многоязычным интерфейсом для Linux. В масштабе реального времени прорисовывает трехмерное фотореалистичное изображение неба
4MLinux 32.0 / 33.0 Beta
Небольшой независимый дистрибутив Linux общего назначения с рабочим окружением JWM. Особенно подходит в качестве системы для восстановления после сбоев, LiveCD мультимедийного центра и операционной системы для старых компьютеров