Как я писал в прошлых постах, СУБД - это обычная программа, только работающая специальным образом. Можно сказать чуть больше - в мире программирования практически все продукты являются обычными программами, без какой-то волшебной магии. СУБД устанавливается на компьютер - хоть на простой ноутбук, хоть на дорогущий сервер. Некоторые из СУБД (например - SQLite) вообще работают даже на мобильных устройствах. Собственно говоря, как и любая другая программа, СУБД хранится в некоторой папке. В случае с ОС Windows, это часто C/Program Files.
Установленная СУБД ассоциируется с некоторым "портом", и начинает его прослушивание на предмет входящих подключений. В случае с MySQL, номер такого порта - 3306. В случае с PostgreSQL - 5432. Подключение внешних клиентов (программ или пользователей) осуществляется по IP-адресу компьютера и указанному порту. Одновременно из внешнего мира, к СУБД могут подключиться достаточно много клиентов - сотни, а иногда и десятки тысяч, в зависимости от мощности компьютера.
Помимо "алгоритмической" части, СУБД так же включает в себя сами базы данных. То есть, файлы специального формата. Эти файлы хранятся в физических папках, на этом же компьютере. Это может быть диск C, или любой другой. Путь к папке, где будут храниться файлы базы, определяется при установке СУБД. Как можно понять, сама СУБД занимает условные 100-700 Мб, в зависимости от системы. При этом, файлы баз данных могут быть условно "бесконечными" по размеру - и зависят напрямую от приложения, которое будет записывать данные в базу - и конечно от мощности компьютера.
СУБД - фоновая программа ⚙️
Основная особенность СУБД заключается в том, что такие системы работают в фоновом режиме - то есть, у них нет видимого интерфейса. Взаимодействие же внешних программ с такими системами осуществляется через SQL-запросы - то есть тексты специального формата. Если мы посмотрим внутрь условного интернет-сайта, или же внутрь некоторого приложения, то найдем там прямые тексты SQL запросов, которые отправляются в СУБД через TCP-IP подключение. Другими словами - прикладной программный код существует отдельно, а работающая в фоновом режиме СУБД существует отдельно.
Если говорить про облачные базы данных - то вышеуказанный принцип тоже сохраняется. Так же программа-СУБД устанавливается на компьютер-сервер, и настраивается специальным образом. При этом, на таком компьютере хранится только какой-то кусочек базы - несколько таблиц из общей массы, или какая-то отдельная часть одной очень большой таблицы. При этом, несколько таких компьютеров связываются между собой, и работают как единое целое.
🔐 После установки СУБД на компьютер, установщик попросит тебя придумать логин и пароль администратора базы. Это типовой шаг, который есть практически у всех систем. После того как пароль будет задан, установщик запустит СУБД на твоем компьютере в "фоновом режиме". Так же, установщик пропишет внутри компьютера нужные настройки, чтобы сразу после включения компьютера СУБД стартовала автоматически. После этого, этап установки заканчивается. С этого момента с базой данных можно начинать работать. Обрати внимание - каждый раз после включения компьютера, СУБД будет автоматически запускаться. Сама база данных - это просто набор файлов. Без включенного СУБД работать с базой данных не представляется возможным.
📟 Для работы с базой данных используют или специальный "коннектор", или GUI / IDE, или консоль. Коннектор - это программная библиотека, которая поставляется производителем конкретной СУБД для разных языков программирования. GUI / IDE - это человекопонятный интерфейс для работы с базой как с простым Excel-файлом. И наконец консоль - это обычная текстовая консоль, которая позволяет отправлять в базу какие-то данные, и потом читать их оттуда с помощью SQL. Независимо от выбора варианта, вероятным языком общения с базой данных будет SQL.
Типовой алгоритм взаимодействия приложения с базой данных 🤝
Первый шаг в работе с базой данных заключается в установлении соединения между приложением и базой данных. Обычно для этого используется специальный драйвер (коннектор) базы данных, который предоставляет необходимые функции для взаимодействия. Приложение передает данные о подключении, такие как адрес сервера базы данных, имя пользователя и пароль, чтобы установить безопасное и аутентифицированное соединение.
"Драйвер" / "Коннектор" - звучит очень сложно, но на практике выглядит очень просто. Внутри языков программирования, практически в каждом из них - есть готовые библиотеки для работы с различными СУБД. Чтобы например подключиться из языка PHP к СУБД MySQL, достаточно знать логин, пароль и номер порта. После этого, нужно будет написать несколько строк со специальным синтаксисом, и вуаля - можно сохранять, искать или обновлять данные.
Опять же, практически все приложения работают с базами данных. Практически все интернет-сайты работают с базами данных. Высокоуровневые языки программирования уже давно развиты настолько, что предоставляют доступ практически ко всем популярным СУБД - остаётся только знать специальный синтаксис, и можно создавать отличные программы, которые умеют хранить внутри себя данные.
🔥 Понравилось? Подпишись! Победим восстание роботов вместе! 🔥
🚀 P.S. Ты можешь круто поддержать меня и проект "Войти в IT" на boosty! Я публикую там более эксклюзивный и профессиональный, иногда немного личный контент. Хочешь посмотреть как я выгляжу в реальной жизни? Тогда жми: Ссылка 🚀
P.S.2 У меня ещё есть Telegram-канал. Там посты чуть попроще, и чуть повеселей. Ссылка