Сьогодні хотілося б написати про російську СУБД Лінтер, яка може скласти конкуренцію таким відомим системам управління баз даних, як Microsoft SQL Server і Oracle Database. У статті коротко розглянемо можливості СУБД, ціни і версії.
Про СУБД Лінтер
Linter Standard - це базове рішення сімейства Лінтера дозволяє вирішувати більшість завдань пов'язаних зі зберіганням і обробкою даних. До основних плюсів цього рішення можна віднести компактність, простоту, вбудовуваність і масштабованість. Ця редакція підтримує найбільшу кількість операційних систем, в тому числі для мобільних пристроїв: Windows. Linux. Mac OS X. FreeBSD. Unix System V. SUN Solaris. HP-UX. OpenVMS. PalmOS. Android. EmbeddedLinux і Windows CE. Для розробників надається багатий набір утиліт і програмних інтерфейсів: ODBC. ADO.NET. OLEDB. JDBC. PHP. Python. DBExpress. PERL / DBI. Ruby. OCI тощо.
Linter Multiversion - ця версія СУБД підтримує версійна модель обробки даних. Тут забезпечена більш швидка обробка конкуруючих транзакцій за рахунок використання багатоверсійного зберігання записів. При багато користувачів роботі це дозволяє поліпшити показники розпаралелювання. Проте, ця версія СУБД підтримує стандартні режими роботи транзакцій від Dirty Read до Serializable.
Завдяки підтримці багатоверсійності кожна прикладна задача довгий час може незалежно працювати зі своєю версією вихідних даних. І тільки при фіксації транзакції буде необхідно синхронізувати зміни, зроблені з одним набором даних з різних програм.
Вартість СУБД Лінтер та технічна підтримка
Установка СУБД Лінтер на Windows
В якості експерименту я спробую встановити останню версію Linter Standard (На момент написання статті - це версія 6.0.18.9. Файл linter_s_6.0.18.9_win.exe) на комп'ютер під керуванням Windows 7. Детально розглядати всі кроки установки я не буду. Після перших двох кроків (вибір мови та згоду з ліцензією) ви потрапляєте на крок введення реєстраційної інформації. Тут потрібно або ввести серійний номер в поля «Ліцензія», або встановити галочку «Демоверсія».
Потім після кроку з вибором папки установки йде крок вибору встановлюваних компонентів, див. Картинку нижче. Ось які приклади з варіантами установки я знайшов в документації:
Приклад конфігурації Лінтера-сервера:
Приклад конфігурації Лінтера-клієнта для адміністратора:
Приклад конфігурації Лінтера-клієнта для розробника:
-
-
- «Мережеві драйвери»;
- «Інструментальні засоби» -> «Динамічні бібліотеки»;
- «ODBC-драйвери» і / або «OLEDB-драйвер», і / або «JDBC-драйвер»;
- SDK;
- «Приклади»;
- «Демонстраційна БД».
-
Приклад конфігурації Лінтера-клієнта для користувача:
Я залишив галочки, виставлені за замовчуванням і, судячи з ним, мені будуть встановлені сама СУБД. драйвери, засоби адміністрування, демонстраційна БД. приклади і документація. Засоби для реплікації і Windows CE SDK встановлені не будуть, тому що за замовчуванням відповідні галки НЕ виставлені. Єдине, що я поміняв - це встановив галочку під списком «Нові засоби адміністрування і мережеві драйвери за замовчуванням».
На наступному кроці при виборі папки я залишив все без змін і на кроці додаткових налаштувань я залишив включеними всі галки.
Після цього кроку почнеться установка СУБД. В процесі установки буде запропоновано налаштувати ODBC (створити DNS), конфігурувати JDBC. де я все залишив за замовчуванням.
Після закінчення встановлення ви побачите вікно настройки кодування демонстраційної БД. Я залишив кодування, запропоновану за замовчуванням.
Потім з'являється діалог редагування списку серверів (якщо була виставлена галка «Редагувати список серверів бази даних», див. Крок «Додаткові настройки та дії»). Мені для експериментів вистачить і демонстраційної БД, тому я не буду тут нічого міняти, а просто натисну «Зберегти».
Потім був запуск служб, і установка завершилася успішно.
Після установки, щоб полегшити роботу з консольними утилітами, в змінну оточення PATH бажано додати шлях до підкаталогу \ bin установчого каталогу СУБД Лінтер.
Перевірка установки СУБД Лінтер
Оскільки при установці у нас була встановлена галочка «Запустити ядро СУБД Лінтер на демонстраційної БД», то після установки СУБД стартує автоматично. При цьому є два варіанти запуску СУБД. як сервіс (служба) або як додаток. Якщо при установці у вас стояла галка «Служби», то СУБД стартує як сервіс, інакше, як додаток. У моєму випадку галка «Служби» була встановлена, тому СУБД запустилася як сервіс.
Якщо СУБД працює як служба Windows. то для перевірки роботи СУБД. за допомогою програми «Адміністратор СУБД Лінтер» (пункт меню «Застарілі засоби адміністрування -> Адміністратор СУБД Лінтер» в меню «Пуск»). Якщо світлофор зелений, значить СУБД працює.
Тут же можна зупинити СУБД і запустити знову: пункти меню «База -> Запустити» і «База -> Зупинити». При запуску і зупинці запитується логін і пароль. Для демонстраційної бази даних Лінтера можна знайти логін і пароль у файлі readme.txt в папці БД. у мене це папка C: \ Program Files (x86) \ Linter \ db \ DEMO.
Якщо вам знадобиться запустити СУБД як додаток, то ви можете це зробити, вибравши пункт меню «Пуск -> Програми -> СУБД Лінтер -> СУБД Лінтер». Після запуску ви побачите таке віконце:
Якщо ж ви спробуєте запустити Лінтера як додаток, в той час як СУБД працює як сервіс, ви отримаєте помилку «Could not create mailslot" \\. \ Mailslot \ LinterMailslot5 ". The default server is already running? System error 183 - Неможливо створити файл, так як він вже існує. »:
Але найкращий спосіб перевірки працездатності СУБД. - це перевірка за допомогою робочого столу (пункт меню «Пуск -> Програми -> СУБД Лінтер -> Робочий стіл»). Як видно на зображенні, в інспектора бази даних є гілка «Локальне ядро», всередині якої є демонстраційна БД. Якщо СУБД зупинена, то гілки «Локальне ядро» ви не побачите. Якщо СУБД працює, то тут ви також побачите бази даних, і можете відкрити кожну з них, ввівши логін і пароль.
Також тут можна проінспектувати сервіси в гілці «Мережа». Як бачите на зображенні, шестерінки поруч з рядками «Ядро» і «Мережевий сервер» пофарбовані зеленим кольором, значить відповідні сервіси працюють. Тут же можна ці сервіси запустити або зупинити. Для запуску або зупинки, клацніть по потрібному сервісу, а потім виберіть пункт меню «Ядро -> Запустити», «Ядро -> Зупинити», «Мережевий сервер -> Запустити» або «Мережевий сервер -> Зупинити» (запуск і зупинка сервісів з контекстного меню тут у мене не запрацювала). Тут під ядром розуміється сама СУБД. а під мережевим сервером - драйвер сервера, який потрібен для доступу до вашої СУБД з віддалених клієнтів.
Мережевий сервер також можна запустити як додаток ОС, для цього є пункт меню «Пуск -> Програми -> СУБД Лінтер -> Мережевий сервер».
Робота з базою даних
Виконання виділеного запиту теж немає (що теж незручно). Трохи виправляє ситуацію можливість виконати поточний запит (запит, на якому стоїть курсор - клавіша F8) або виконати всі запити після поточного запиту (F6).
Редагувати текст процедур і тригерів можна в діалоговому вікні «Властивості», що абсолютно незручно, або в отладчике. Отладчик відкривається на окремій закладці і можна переключатися між кількома процедурами, але в заголовку завжди написано слово «Отладчик» (див. Картинку знизу), тому, коли процедур буде відкрито багато, вам буде нелегко знаходити потрібну закладку.
Не буду далі розглядати інтерфейс Робочого столу Лінтера з точки зору розробника, тому що ви можете і самі випробувати ті функції, які вам цікаві.
Управління правами доступу користувачів
Тут же можна додавати і видаляти користувачів, змінювати їх властивості, змінювати розклад (див. Малюнок) і отримувати звіти по доступу та об'єктам.
Двічі клацнувши на користувача, ви підніміть діалог властивостей, в якому можна вказати тип і рівень доступу, налаштувати ідентифікацію та ін.
Щоб налаштовувати ролі користувачів, потрібно натиснути кнопку «Ролі». Після цього на окремій закладці відкриється таблиця з усіма ролями БД. Тут можна додавати і видаляти ролі, призначати їх користувачам.
З контекстного меню на закладці «Користувачі» або «Ролі» можна підняти діалог для настройки дискреційного доступу до об'єктів, см. Картинку.
Повну документацію по налаштуванню прав доступу ви можете знайти в документації до робочого столу СУБД Лінтер тут.
SQL використовується в СУБД Лінтер
Також, при реалізації мови в СУБД Лінтер, в нього внесено деякі елементи, які не специфіковані в стандарті SQL-92, а саме:
-
-
- інтернаціоналізація імен об'єктів БД (таблиць, стовпців і ін.), тобто можна використовувати кирилицю в назвах;
- засоби для роботи в режимі реального часу;
- засоби оперативного тестування таблиць БД;
- засоби оперативного архівування об'єктів БД;
- засоби підтримки кодових сторінок для подання системної і користувальницької інформації;
- набір скалярних функцій для підтримки ODBC-інтерфейсу;
- набір скалярних функцій для сумісності SQL-сервера СУБД Лінтер з SQL- сервером СУБД Oracle.
-
Додатково в мову SQL СУБД Лінтер додані:
-
-
- команди управління комплексом засобів захисту інформації;
- команди організації повнотекстового пошуку в БД;
- кошти вбудовування SQL для систем програмування C / C ++;
- засоби підтримки процедурного мови СУБД Лінтер;
- засоби підтримки реплікації (тиражування) даних;
- засоби підтримки геометричних типів даних.
-
Підтримуються наступні об'єкти БД: таблиці, уявлення, стовпці, індекси, що обмежують умови цілісності, користувачі, привілеї, ролі, синоніми, події, послідовності, блокування, транзакції, збережені процедури, тригери, кодові сторінки, аліаси і трансляції.
Підтримуються наступні типи даних (тут в списку також вказані синоніми):
-
-
- рядкові фіксованої довжини (CHAR | CHARACTER);
- рядкові змінної довжини (CHAR VARYING | CHARACTER VARYING | VARCHAR);
- байтові фіксованої довжини (BYTE | RAW);
- байтові змінної довжини (BYTE VARYING | VARBYTE);
- UNICODE фіксованої довжини (NATIONAL CHARACTER | NATIONAL CHAR | NCHAR);
- UNICODE змінної довжини (NATIONAL CHARACTER VARYING | NATIONAL CHAR VARYING | NCHAR VARYING | NVARCHAR);
- точні числові (DECIMAL | DEC | NUMERIC | NUMBER | BIGINT | INTEGER | INT | SMALLINT);
- наближені числові (REAL | DOUBLE | FLOAT);
- дата і час (DATE);
- логічний тип (BOOLEAN);
- BLOB (BLOB | LONG RAW);
- зовнішній файл (EXTFILE | EF).
-
Повний опис SQL СУБД Лінтер є в довіднику по SQL тут.