Рубрика «mysql» - 8

На Хабре есть дайджесты анонсов для Москвы и Санкт-Петербурга, а для Нижнего Новгорода пока почему-то нет, хотя здесь и IT-компаний много (очень много!), и событий хватает всех форматов и для любого стека, и читателей Хабра ого-го. Я для дайджестов слишком ленива занята, но отдельные события удивляют своей крутизной и скромностью освещения. Например, встреча с Петром Зайцевым, посвящённая СУБД. Что ж, будем исправляться.

Хотите немного СУБД из первых рук? Открытой встрече в Нижнем Новгороде — быть - 1

Кстати, только-только отгремит очередной HighLoad++, так что у Петра можно спросить немного инсайтов по теме
Читать полностью »

Привет! В этой статье я хочу рассмотреть такую библиотеку для Java, как ClusterJ, которая позволяет очень просто работать с движком MySQL NDBCLUSTER из Java кода, которая представляет собой высокоуровневое API, схожее по концепции с JPA и Hibernate.

В рамках статьи создадим простое приложение на SpringBoot, а также сделаем стартер с ClusterJ на борту для удобного использования в приложениях с использованием автоконфигурации. Напишем простые тесты с использованием JUnit5 и TestContainers, которые покажут базовое использование API.
Также расскажу о нескольких недостатках, с которыми пришлось столкнутся в процессе работе с ней.

Кому интересно, добро пожаловать под кат.

Читать полностью »

Время высокой точности: как работать с долями секунды в MySQL и PHP - 1

Однажды я поймал себя на мысли, что при работе со временем в базах данных почти всегда использую время с точностью до секунды просто потому, что я к этому привык и что именно такой вариант описан в документации и огромном количестве примеров. Однако сейчас такой точности достаточно далеко не для всех задач. Современные системы сложны — они могут состоять из множества частей, иметь миллионы пользователей, взаимодействующих с ними, — и во многих случаях удобнее использовать бОльшую точность, поддержка которой уже давно существует.

В этой статье я расскажу про способы использования времени с дробными частями секунды в MySQL и PHP. Она задумывалась как туториал, поэтому материал рассчитан на широкий круг читателей и местами повторяет документацию. Основную ценность должно представлять то, что я собрал в одном тексте всё, что нужно знать для работы с таким временем в MySQL, PHP и фреймворке Yii, а также добавил описания неочевидных проблем, с которыми можно столкнуться.

Я буду использовать термин «время высокой точности». В документации MySQL вы увидите термин “fractional seconds”, но его дословный перевод звучит странно, а другого устоявшегося перевода я не нашёл.

Читать полностью »

И снова ERROR 1040…

Техподдержка получает много жалоб на эту печально известную ошибку: ERROR 1040: Too many connections — слишком много соединений. Проблема очевидна: приложение или пользователи создают больше соединений, чем допускает сервер, то есть текущее число соединений превышает значение переменной max_connections.

Подключение MySQL после ошибки 1040: слишком много соединений - 1

Ситуация уже сама по себе проблема для конечных пользователей, но если еще при этом у вас нет доступа к серверу для диагностики и исправления причины, все становится совсем плохо. Обычно приходится завершать экземпляр и перезапускать его, чтобы восстановить.

Читать полностью »

Даже странно, что про Laragon нет ни единой публикации на Хабре. Хочу очень кратко восполнить этот пробел, ибо данный инструмент вполне заслуживает популярности среди целевой аудитории веб-разработчиков, кодящих под Windows.

Laragon

Laragon — это простой и компактный WAMP (Apache + MySQL + PHP под Windows) во многом сродни своим более известным аналогам, вроде XAMPP, OpenServer, Denwer etc. Но, со своей маленькой изюминкой:

Когда вы создаете папку your-test-project в каталоге <laragon_root>www, то содержимое этой папки автоматически становится доступно из браузера по адресу http://your-test-project.test причем, шаблон, по которому именуются домены, также настраиваемый.
Читать полностью »

Салют! Поздравляем всех с днем программиста и делимся переводом статьи, который был подготовлен специально для студентов курса «Архитектор высоких нагрузок».

Шардинг Pinterest: Как мы масштабировали наш парк MySQL - 1

«Шардировать. Или не шардировать. Без попыток.»
— Йода

Сегодня мы погрузимся в разделение данных между несколькими MySQL серверами. Мы закончили шардинг в начале 2012 года, и эта система используется и по сей день для хранения наших основных данных. Читать полностью »

Перекрестная репликация между PostgreSQL и MySQL - 1
Я в общих чертах расскажу о перекрестной репликации между PostgreSQL и MySQL, а еще о методах настройки перекрестной репликации между этими двумя серверами базы данных. Обычно базы данных в перекрестной репликации называются однородными, и это удобный метод перехода с одного сервера реляционной СУБД на другой.

Базы данных PostgreSQL и MySQL принято считать реляционными, но с дополнительными расширениями они предлагают возможности NoSQL. Здесь мы обсудим репликацию между PostgreSQL и MySQL, с точки зрения реляционных СУБД.

Мы не будем описывать всю внутреннюю кухню, только базовые принципы, чтобы вы получили представление о настройке репликации между серверами баз данных, преимуществах, ограничениях и сценариях использования.

Читать полностью »

Как собрать когорты пользователей в виде графиков в Grafana [+docker-образ с примером]

Как мы решили задачу визуализации когорт пользователей в сервисе Promopult c помощью Grafana.

Promopult — мощный сервис с большим числом пользователей. За 10 лет работы число регистраций в системе перевалило за миллион. Те, кто сталкивался с подобными сервисами, знают, что этот массив юзеров далеко не однороден.

Кто-то зарегался и «уснул» навеки. Кто-то забыл пароль и зарегался еще пару раз за полгода. Кто-то несет деньги в кассу, а кто-то пришел за халявными инструментами. И хорошо бы с каждого получить некий профит.

На таких больших массивах данных, как у нас, анализировать поведение отдельного юзера и принимать микро-решения бессмысленно. А вот отлавливать тренды и работать с большими группами — можно и нужно. Что мы, собственно, и делаем.

Читать полностью »

Привет! Рассказываем о том, что мы сделали в DataGrip за четыре месяца. Если вы используете поддержку баз данных в других наших IDE, этот пост для вас тоже.

DataGrip 2019.2: Управление соединениями, поиск по данным, фильтрация в навигации - 1
Читать полностью »

Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2019 году. Часть I - 1

Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик»


Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопросами по SQL с собеседований я познакомлю вас с наиболее часто задаваемыми вопросами по SQL (Structured Query Language — язык структурированных запросов). Эта статья является идеальным руководством для изучения всех концепций, связанных с SQL, Oracle, MS SQL Server и базой данных MySQL.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js