MySQL можна описати як систему керування базами даних (з відкритим кодом), яка зазвичай встановлюється як частина відомої ЛАМПА (Linux, Apache, MySQL, Perl/PHP/Python). Він застосовує структуровану мову запитів (скорочення від SQL) і використовує реляційну модель для керування даними.
Це найбільш впізнавана технологія в новітній екосистемі великих даних. Часто відома як найвідоміша база даних і на даний момент ефективна та широко використовується незалежно від виробництва. Зрозуміло, що будь-хто, хто займається загальними ІТ-даними або корпоративними даними, повинен принаймні прагнути до загального знайомства з MySQL.
Кожен, хто новачок або не знайомий із реляційними системами, може створювати потужні, безпечні та швидкі системи зберігання даних MySQL . Програмні інтерфейси та синтаксис MySQL також є ідеальними воротами у величезний світ інших відомих сховищ структурованих даних і мов запитів.
Огляд MySQL
MySQL написано в C++ і C . Написано SQL-аналізатор MySQL yacc , однак застосовує домашній лексичний аналізатор. MySQL реалізується на різних системних платформах, включаючи Tru64, Sanos, SCO UnixWare, SCO OpenServer, SunOS, Symbian, Oracle Solaris, QNX, OS/2 Warp, OpenSolaris, OpenBSD, Novell NetWare, NetBSD, Microsoft Windows, macOS, Linux, IRIX, IBM i, eComStation, ArcaOS, HP-UX, FreeBSD, BSDi та AIX. Також доступний порт MySQL для OpenVMS.
Клієнтські бібліотеки та саме серверне програмне забезпечення MySQL використовують розповсюдження подвійного ліцензування. Вони надаються відповідно до 2-ї версії GPL або пропрієтарної ліцензії. Підтримку можна отримати за допомогою офіційного посібника. Крім того, безкоштовна підтримка доступна в різних формах і каналах IRC. Oracle надає платну підтримку Продукти MySQL Enterprise . Також вони відрізняються обсягом послуг і ціною. Додатково існують номери сторонніх організацій, які пропонують послуги та підтримку.
MySQL отримав різні позитивні відгуки, і ці рецензенти помітили, що він «надзвичайно добре реалізується в середньому випадку» і що «є інтерфейси розробника та документація». Крім того, його було перевірено як справжній багатокористувацький, стабільний і швидкий багатопоточний сервер бази даних SQL.
Технічні характеристики MySQL
MySQL є реляційним
Основним фактором є диференціація реляційних баз даних через інші діапазони цифрових сховищ у тому, як керуються даними на високому рівні. Багато баз даних, таких як MySQL, містять записи в чітко кодифікованих, окремих і кількох таблицях, на відміну від однієї всеохоплюючої колекції або сховищ неструктурованих або напівструктурованих документів.
- Це дозволяє системам реляційних баз даних краще використовувати такі дії, як оновлення інформації, пошук даних або більш складні дії, такі як агрегації.
- Логічна модель вказується для кожного вмісту бази даних, вказуючи, наприклад, значення, дозволені в одному стовпці, характеристики представлень і таблиць або спосіб зв’язування індексів із двох різних таблиць.
- Кілька реляційних моделей відомі з різних причин.
- Вони заохочують користувачів декларативними та інтуїтивно зрозумілими мовами програмування, по суті вказуючи базі даних, який результат бажаний у мові.
- Він переміщує роботу в механізми SQL і RDBMS для кращого збереження та дотримання логічних правил цінної робочої сили та ресурсів.
Відкрите джерело
Будь-яке підприємство або окрема особа може вільно розширювати, публікувати, змінювати та використовувати кодову базу MySQL з відкритим кодом Oracle. Програмне забезпечення опубліковано на GNU GPL (Загальна публічна ліцензія) .
- Для коду MySQL, який потрібно включити або інтегрувати в комерційну програму (або коли програмне забезпечення з відкритим вихідним кодом не є пріоритетом), багато підприємств можуть придбати комерційну ліцензовану версію від Oracle.
- Ці альтернативи пропонують підприємствам додаткову гнучкість, якщо вони вирішують запровадити з MySQL .
- Спільнота та загальнодоступність версій з відкритим вихідним кодом збагачують культуру онлайн-підтримки та документації MySQL, а також гарантують, що нещодавно розроблені чи стійкі можливості ніколи не відрізняються надто далеко від вимог користувача.
MySQL сумісний
MySQL був розроблений для сумісності з іншими архітектурами та технологіями, хоча часто співпрацював із веб-сервісами чи інтернет-додатками. Система керування реляційною базою даних працює в кожному основному обчислювальному середовищі, включаючи ОС на базі Unix, наприклад безліч дистрибутивів Linux, Windows , і macOS .
The клієнт-серверна архітектура з MySQL вказує, що він також може підтримувати низку серверних програм та різні інтерфейси програмування. Дані можуть бути переміщені за допомогою MySQL до його розгалужень ( MariaDB ) та більшість інших систем керування реляційними базами даних також через подібність мови та архітектури.
- Встановлені сторонні засоби міграції та інструменти Oracle також дозволяють MySQL переміщувати дані до та через величезну колекцію загальних систем зберігання, однак вони розроблені як хмарні або локальні.
- MySQL можна використовувати в централізованих або розподілених, віртуалізованих середовищах і навіть доступний у вигляді бібліотек для вивчення невеликих програм для тестування.
- Широка сумісність MySQL з будь-яким іншим програмним забезпеченням і системами робить її практичним вибором систем керування реляційними базами даних у більшості випадків.
Простий у використанні
Можливо, парадигма таблиці є найбільш інтуїтивно зрозумілою та забезпечує більшу зручність використання, хоча реляційна природа MySQL і жорсткі структури зберігання можуть здаватися обмеженнями. Насправді, MySQL висловлює кілька підтверджень щодо підтримки величезного можливого діапазону структур даних, від стандартних, але багатих типів часу, дати, буквено-цифрових, числових і логічних до більш просунутих геопросторових даних або даних JSON.
- Крім дорогого вбудованого збору функцій і простих типів даних, екосистема MySQL також містить низку інструментів, які спрощують усе: від керування сервером до аналізу даних і звітності.
- Незалежно від загальної архітектури системи керування реляційною базою даних, користувачі можуть знайти аспект MySQL, який дозволяє їм кодифікувати та моделювати дані, як вони хочуть.
- MySQL залишається найпростішою технологією баз даних для використання та вивчення.
Особливості MySQL
MySQL надається у двох різних виданнях: власний корпоративний сервер і Сервер спільноти MySQL з відкритим кодом. Корпоративний сервер MySQL відокремлений власною серією розширень, які встановлюються так само, як серверні плагіни, але він поширює систему нумерації версії та розроблено з використанням подібної кодової бази.
Деякі основні функції версії MySQL 5.6 пояснюються нижче:
- Кросплатформна підтримка
- Ан ANSI SQL 99 широка підмножина, а також розширення.
- Збережені процедури з процедурними мовами, які майже відповідають PSM/SQL.
- Оновлювані види
- Курсори
- Тригери
- Інформаційна схема
- Онлайн Мова визначення даних (скорочення від DDL ) у разі застосування InnoDB Система зберігання.
- Схема продуктивності, яка збирає та поєднує статистичні дані щодо продуктивності запитів і виконання сервера для цілей моніторингу.
- Група параметрів режиму SQL для керування поведінкою під час виконання, наприклад строгий режим для дотримання стандартів SQL.
- Точки збереження з транзакціями у разі застосування InnoDB Система зберігання (за замовчуванням). Крім того, NDB Cluster Storage Engine підтримує транзакції.
- Кешування запитів
- Підтримка SSL
- Підвибірки (наприклад, вкладені SELECT )
- Вбудована підтримка реплікації
Віртуальний синхронний: Самокеровані групи сервера MySQL із підтримкою кількох майстрів можуть бути реалізовані за допомогою вбудованого плагіна реплікації груп або Скупчення галери .
Обмеження MySQL
При використанні кількох механізмів зберігання, крім InnoDB (за замовчуванням) , тоді MySQL не відповідає повному стандарту SQL для деяких реалізованих функцій, таких як посилання на зовнішні ключі. Крім того, перевірочні обмеження можна проаналізувати, але їх уникати кожен механізм зберігання до версії MySQL 8.0.15.
До версії MySQL 5.7 тригери обмежені одним тригером для кожного часу/дії, тобто щонайбільше один тригер можна вказати для запуску після операції, тобто ВСТАВИТИ , і один перед ВСТАВИТИ на аналогічному столі. Не вдалося вказати тригери для представлень.
19 січня 2038 року вбудовані функції бази даних MySQL, такі як UNIX_TIMESTAMP повернути 0 після 03:14:07 UTC . Нещодавно була спроба вирішити питання, яке було занесене до внутрішньої черги.
Розгортання MySQL
MySQL можна встановити та зібрати вручну за допомогою вихідного коду, але в основному він встановлюється за допомогою бінарного пакета, якщо не потрібні унікальні налаштування. Система керування пакетами може отримати та інсталювати MySQL з мінімальними зусиллями, додаткова конфігурація часто потрібна для налаштування параметрів оптимізації та безпеки в більшості дистрибутивів Linux.
Додаток високої доступності
Oracle MySQL забезпечує високу доступність додатків із набором інструментів, включаючи оболонка MySQL і Маршрутизатор MySQL . Вони засновані на інструментах з відкритим вихідним кодом і груповій реплікації. MariaDB надає ту саму пропозицію на відміну від продуктів.
Як перезапустити сервер MySQL?
Ми можемо використати команду, наприклад, ' служба' для виконання типових операцій, таких як запуск, зупинка та перезапуск сервера MySQL в Ubuntu. Спочатку нам потрібно увійти на наш веб-сервер і ввести одну з наступних команд.
Ми можемо ввести наведену нижче команду для запуску сервера MySQL в Ubuntu:
$ sudo systemctl start mysql.service $ sudo systemctl status mysql.service
Ми можемо ввести наведену нижче команду для зупинки сервера MySQL в Ubuntu:
$ sudo systemctl stop mysql.service $ sudo systemctl status mysql.service
Ми можемо ввести наведену нижче команду для перезапуску сервера MySQL в Ubuntu:
$ sudo systemctl restart mysql.service
Ми можемо ввести наведену нижче команду для перевірки стану сервера MySQL в Ubuntu (запущено він чи ні):
$ sudo systemctl status mysql.service