Пересказ статьи Robert Sheldon. Importing data into a MySQL database using LOAD DATA
Команды разработки и баз данных часто загружают данные из плоских текстовых файлов в свои базы данных MySQL. Файлы могут использоваться для добавления справочных данных, поддержки тестов и сред разработки, наполнении новых экземпляров MySQL, загрузки данных на регулярной основе, или иным образом поддерживать их деятельность. В помощь процессу импорта MySQL предоставляет оператор LOAD DATA, который читает строки из текстового файла и вставляет их в целевую таблицу.
Continue reading "Импорт данных в базу данных MySQL с помощью LOAD DATA"
Пересказ статьи Robert Sheldon. Retrieving MySQL data from within Python
Приложения всех типов обычно получают доступ к MySQL для извлечения, добавления, обновления или удаления данных. Эти приложения могут быть написаны на Python, Java, C# или другом языке программирования. Большинство языков поддерживают множество методов для работы с базой данных MySQL и манипуляции ее данными.
Подход, который вы выбираете при доступе к MySQL, будет зависеть от используемого языка программирования и подключения, которое вы предпочтете для взаимодействия с базой данных. Какой бы подход вы ни выбрали, обычно в каждой среде применяются одни и те же основные принципы. Вы должны установить соединение с базой данных, а затем выполнять команды для извлечения или модификации данных.
Continue reading "Получение в Python данных из MySQL"
Пересказ статьи Lukas Vileikis. Optimizing Queries in MySQL: Optimizing Reads
Оптимизация операций чтения является одной из наиболее частых проблем, с которой сталкивается любой администратор баз данных. Не важно, какая система управления базами данных используется - MySQL, ее клоны Percona Server или MariaDB, MongoDB, TimescaleDB, SQL Server, или какие-либо другие, запросы на чтение касаются их всех. В первую очередь, можно привести примеры запросов SELECT, но многое также относится к UPDATE и DELETE, поскольку эти операторы тоже должны извлекать строки для работы с ними.
В этом блоге мы расскажем, как решить проблемы, связанные с этим вопросом. В конце статьи приводятся некоторые операторы DDL для загрузки тестовых данных.
Continue reading "Оптимизация запросов в MySQL: оптимизация чтений"
Пересказ статьи Robert Sheldon. Introducing the MySQL common table expression
Как и во многих реляционных системах управления базами данных, MySQL предлагает разнообразные методы комбинирования данных в операторах языка манипуляции данными (DML). Вы можете соединять несколько таблиц в одном запросе или добавлять подзапросы, которые извлекают данные из других таблиц. Вы можете также обращаться к представлениям и временным таблицам из оператора наряду с постоянными таблицами.
MySQL предлагает также другой ценный инструмент для работы с данными -
общие табличные выражения (CTE). CTE - это именованный результирующий набор, который вы определяете в предложении WITH. Предложение WITH связано с единственным оператором DML, но создается вне этого оператора. Однако только этот оператор может иметь доступ к результирующему набору.
Continue reading "Введение в общие табличные выражения MySQL"
Пересказ статьи Lukas Vileikis. Backing Up MySQL Part 6: Physical vs. Logical Backups
Каждый, кто когда-либо резервировал данные на любой РСУБД, в курсе о бэкапах. Бэкапы - центральная часть целостности данных, особенно в наши дни, когда повреждения данных происходят со всех сторон. Надлежащим образом проверяемые бэкапы критичны для любой компании: как только что-то случается с вашими данными, они помогают быстро все наладить. Возможно, вы слышали о различиях между резервными копиями в системах управления базами данных - сами бэкапы также подразделяются на несколько уникальных форм. Мы говорим о физических и логических формах, которые имеют свои достоинства и недостатки. Давайте рассмотрим различия между этими двумя. Здесь мы адресуемся к MySQL, однако некоторые советы не ограничиваются исключительно этой СУБД.
Continue reading "Резервирование в MySQL: физические и логические резервные копии"
Пересказ статьи Robert Sheldon. Introducing the MySQL DELETE statement
Оператор DELETE позволяет удалить одну или более строк из таблицы, включая временные таблицы. В целом оператор DELETE является довольно простым, но он не менее необходим в вашем арсенале инструментов DML, наряду с другими операторами DML -
SELECT,
INSERT, UPDATE .
Continue reading "Введение в оператор DELETE в MySQL"
Пересказ статьи Robert Sheldon. Introducing the MySQL UPDATE statement
Оператор UPDATE позволяет изменять значения в таблицах базы данных, включая временные таблицы. С помощью единственного оператора вы можете обновить одну или более строк, один или более столбцов, или любую их комбинацию. Вы можете даже обновить несколько таблиц. Проработав эту статью вы узнаете, что оператор UPDATE прост и интуитивно понятен, если усвоить основы его работы.
Continue reading "Введение в оператор UPDATE в MySQL"
Пересказ статьи Lukas Vileikis. Backing up MySQL Part 1 mysqldump
mysqldump является одним из наиболее популярных инструментов резервирования баз данных в мире MySQL.
Инструмент распространен отчасти потому, что он очень простой и довольно мощный - инструмент резервирования баз данных mysqldump основан на командной строке и очень прост в использовании. Имеющая отношение как к MySQL, так и к его разновидностям (MariaDB и Percona Server), эта утилита командной строки является одной из наиболее востребованных среди инженеров баз данных по всему миру.
Continue reading "Резервирование в MySQL. Часть 1: mysqldump"
Пересказ статьи Lukas Vileikis. How Does MySQL Configuration Work?
Если вы хоть немного времени работали с MySQL, то вероятно слышали об одном из её хорошо известных файлов: my.cnf. my.cnf - это конфигурационный файл, специфичный для MySQL и всех ее вариантов, и это то место, куда нужно обращаться всякий раз, когда возникают ошибки конфигурации MySQL. Конечно, мы можем установить пару настроек при запуске MySQL с помощью опций "--", но это не так много, более эффективно установить параметры конфигурации в самом файле.
Continue reading "Как работает конфигурация MySQL?"
Пересказ статьи Antonello Zanini. A Complete Guide to Generated Columns in MySQL
Генерируемые столбцы в MySQL позиционируются как мощный, легкий в использовании и продвинутый инструмент, позволяющий добавить автоматически сгенерированные данные в свои таблицы. Здесь мы изучим все, что необходимо знать для работы с ними.
Генерируемые столбцы позволяют хранить в таблице автоматически генерируемые данные без использования предложений INSERT и UPDATE. Эта полезная функциональность стала частью MySQL, начиная с версии 5.7, и представляет альтернативу триггерам для генерации данных. Помимо этого, генерируемые столбцы могут помочь вам написать более простой и более эффективный запрос.
Continue reading "Исчерпывающее руководство по генерируемым столбцам в MySQL"
Пересказ статьи Marko Zivkovic. How to create and configure a linked server to connect to MySQL in SQL Server Management Studio
В этой статье дается инструкция, которая по шагам приведет вас к созданию связанного сервера в SSMS для подключения к базе данных MySQL.
Статья состоит из трех разделов:
- Установка драйвера ODBC для MySQL
- Конфигурирование драйвера ODBC для подключения к базе данных MySQL
- Создание и конфигурирование связанного сервера с использованием драйвера ODBC
Continue reading "Как создать и сконфигурировать связанный сервер для подключения к MySQL в SQL Server Management Studio"
Пересказ статьи Robert Sheldon. Working with MySQL stored functions
В предыдущих статьях этой серии я делал упор на создании объектов базы данных, которые вы могли использовать, чтобы начать работать с MySQL. Вы узнали как построить исходную базу данных, а затем добавить в нее таблицы, представления и хранимые процедуры. В этой статье я обсуждаю еще один важный тип объекта - хранимую функцию, процедуру, которая хранится в базе данных и может вызываться по требованию, аналогично пользовательской скалярной функции в SQL Server или в других системах баз данных.
Хранимые функции работают во многом сходно с встроенными функциям MySQL. Вы можете вызвать в выражении функцию любого типа, например, в таких предложениях запроса, как SELECT, WHERE или ORDER BY. Например, вы могли бы использовать встроенную функцию CAST в предложении SELECT для преобразовании типа данных столбца, в частности, CAST(plane_id AS CHAR). Выражение преобразует столбец plane_id (целочисленный) к символьному типу данных. В том же стиле вы можете использовать хранимую функцию в выражении, применяя собственную логику к столбцу plane_id или любому другому столбцу.
Continue reading "Работа с хранимыми функциями в MySQL"
Пересказ статьи Lukas Vileikis. The nuances of MySQL indexes
Это знают разработчики и администраторы баз данных - существует много нюансов, которые необходимо иметь в виду, чтобы не падала производительность базы данных, и чтобы она не вызывала проблем ни сейчас, ни в будущем.
Одним из ключевых извечных аспектов, влияющих на производительность баз данных, являются индексы - они всегда были ключом к повышению производительности запросов, но они же были окутаны тайной. Не важно, выполняете ли вы поиск в индексах B-tree, составных индексах, пространственных индексах или любых других типах индексов, имеющихся в выбранной вами системе управления базами данных, все они работают по-разному, и все они имеют свойственные им преимущества и недостатки. Помимо этого, преимущества и недостатки типов индексов уникальны для используемой системы управления базами данных. Но здесь мы сфокусируемся на MySQL и её клонах (Percona Server и MariaDB); все советы, применимые к MySQL, также применимы к Percona Server и MariaDB.
Continue reading "Нюансы индексов в MySQL"
Пересказ статьи Robert Sheldon. Working with MySQL Stored Procedures
Подобно большинству систем управления реляционными базами данных, MySQL поддерживает использование хранимых процедур, которые могут вызываться по требованию приложениями, управляемыми данными. Каждая хранимая процедура является именованным объектом базы данных, которая содержит процедурный код, состоящий из одного или более операторов SQL. Когда приложение вызывает хранимую процедуру, MySQL выполняет эти операторы и возвращает результаты в приложение.
Continue reading "Работа с хранимыми процедурами в MySQL"
Пересказ статьи Robert Sheldon. Working with MySQL Views
Подобно другим системам управления базами данных, MySQL позволяет вам создавать представления, которые дают возможность пользователям и приложениям получать данные без предоставления им непосредственного доступа к лежащим в основе таблицам. Вы можете думать о представлении как о предварительно определенном запросе, который MySQL выполняет при обращении к представлению. MySQL хранит определение представления как объект базы данных, подобно табличному объекту.
Continue reading "Работа с представлениями в MySQL"