Как стать автором
Обновить
3.35

MySQL *

Свободная реляционная СУБД

Сначала показывать
Порог рейтинга
Уровень сложности

Используем sequence в MySQL

Время на прочтение5 мин
Количество просмотров12K

Хочу рассказать о том, как создать сквозной монотонно возрастающий  целочисленный id в MySQL (это называется sequence в других БД). Зачем это нужно? Например, у нас есть два вида задач для сотрудников в системе, у каждого типа задач есть свой набор атрибутов и свой жизненный цикл (набор статусов). Для того чтобы не городить огород в коде приложения для корректного чтения разных сущностей из БД и не плодить колонки с NULL проще всего разнести сущности по разным таблицам.

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии16

MySQL в Docker не может писать slow-логи в /dev/stderr

Время на прочтение8 мин
Количество просмотров7.8K

Прим. перев.: в процессе поиска решения проблемы с логированием медленных запросов MySQL наткнулся на довольно познавательную статью. Её автор не только в деталях описывает своё расследование, которое может оказаться полезным для начинающих администраторов, но и попутно пробуждает чувства ностальгии по эпохе VT100.

Сначала краткая предыстория. Я пытался сделать так, чтобы логи медленных запросов в MySQL писались в /dev/stderr и их можно было бы читать с помощью простого docker-compose logs -f mysql без необходимости входить в контейнер с docker-compose exec mysql ash.

Читать далее
Всего голосов 39: ↑35 и ↓4+31
Комментарии7

selectel-exporter — экспортер для manage-баз данных

Время на прочтение4 мин
Количество просмотров2.2K

Мы в KTS на многих проектах пользуемся услугами managed database от selectel. За этими кластерами нужно следить, и делать это хотелось бы из одной точки. Этой точкой у нас является prometheus, alertmanager и grafana. 

Из коробки у selectel нет prometheus exporter для manage-баз данных. Есть внутренние графики и мониторинг, но использовать их затруднительно. Поэтому мы написали свой selectel-exporter, который использует selectel API.

В статье расскажем, почему решили его написать и расскажем, что он умеет.

Читать далее
Всего голосов 13: ↑12 и ↓1+11
Комментарии2

PlanetScale — Serverless SQL база данных для разработчиков

Время на прочтение4 мин
Количество просмотров4.9K

Этим летом я по уши увяз в serverless-тематике и даже решил переписать один из своих pet-проектов целиком на serverless. Движок для сайта, поддерживающий бессерверные вычисления и вендор для кэширующей прослойки были найдены быстро - NextJS (с деплоем на Vercel) и Upstash с оплатой за каждую отдельную операцию и байт в хранилище. Камнем преткновения стал выбор провайдера для DBaaS. Мне бы хотелось реализовать всё таким образом, чтобы у проекта было две разных базы данных - для разработки и для production, и мне совсем не хотелось запускать базу данных для разработки на локальной машине. Поверхностное ознакомление с DBaaS провайдерами показало, что за дополнительную базу данных пришлось бы платить вдвое больше несмотря на то, что она использовалась бы дай Бог пару раз в неделю. И я ушёл в просмотр докладов и презентаций на YouTube и это именно тот момент когда я открыл для себя PlanetScale. Хочу поделиться своим открытием с вами.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии7

Истории

Централизованное управление CBPolicyD в мультисерверной инфраструктуре Zimbra OSE

Время на прочтение6 мин
Количество просмотров2K

CBPolicyD является универсальным инструментом для управления политиками в Postfix. Он входит в комплект поставки Zimbra OSE и ранее мы рассказывали о том, как настраивать CBPolicyD на своем почтовом сервере и создавать в нем различные политики, которые позволяют повысить уровень защищенности сервера от кибератак. Однако все данные ранее рекомендации были применимы к односерверной инфраструктуре Zimbra OSE, так как CBPolicyD по умолчанию использует автономную СУБД SQLite 3 для хранения и управления политиками, а это означает, что созданная на одном сервере политика не будет иметь силы на другом сервере и каждый раз для внедрения новой политики, администратору придется создавать ее на каждом сервере MTA. В случае с односерверной инфраструктурой это допустимо, однако когда речь идет о мультисерверной инфраструктуре Zimbra OSE, необходимо чтобы созданная политика применялась сразу на всех MTA. Это облегчает не только процесс создания политик, но и процесс управления ими. Для того, чтобы созданная политика автоматически применялась на всех MTA в инфраструктуре, необходимо подключить ее к глобальной СУБД MariaDB. Плюсом использования MariaDB является то, что эта СУБД более отказоустойчива, чем SQLite 3. То есть при больших нагрузках на MTA CBPolicyD гарантированно не будет пропускать письма, не соответствующие настроенным политикам. В данной статье мы расскажем о том, как это сделать.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

DataGrip 2021.2: Генерация источника на основе кода, поиск по истории изменений, управление списком автодополнения и др

Время на прочтение5 мин
Количество просмотров4.4K

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

Что внутри?
Всего голосов 7: ↑7 и ↓0+7
Комментарии8

Как написать Viber чат-бота, работающего с АСУ ТП на базе ПЛК Siemens

Время на прочтение7 мин
Количество просмотров6.7K

Как создать Viber чат-бота на Python для диспетчеризации технологического процесса.

Читать далее
Всего голосов 11: ↑11 и ↓0+11
Комментарии25

Фреймворк на PHP: CodeIgniter 4. «Лёгкий пример» использования Database Migrations (миграций) и Seeding (посев)

Время на прочтение2 мин
Количество просмотров7.9K

Познакомиться с PHP фреймворком CodeIgniter 4 достаточно просто.

Нужно потратить вечер, выполняя инструкции из раздела  «Build Your First Application» («Создайте свое первое приложение»). Поскольку документация написана хорошим, технически понятным языком, то в процессе ознакомления с этим и другими разделами возможно получить даже некоторое эстетическое удовольствие.

Читать далее
Всего голосов 8: ↑2 и ↓6-4
Комментарии24

Установка Ispconfig3 на ubuntu 20.04 (nginx+php-fpm+mysql)

Время на прочтение12 мин
Количество просмотров13K

ISPConfig - бесплатная панель управления хостингом с открытым исходным кодом c возможностью управлять несколькими серверами из одной панели управления. Это один из лучших вариантов для веб-студий, хостинг-компаний, а так же для всех, кто ищет бесплатную панель управления хостингом с широким функционалом. В данной статье мы рассмотрим как выполнить установку Ispconfig3 с nginx, php-fpm и mysql на ubuntu 20.04.

Читать далее
Всего голосов 12: ↑9 и ↓3+6
Комментарии10

Быстрый запуск Nextcloud и Onlyoffice на Ubuntu + SSL от Letsencrypt

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров35K

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

Однажды мне понадобилось 1Tb облачного хранилища и выбор пал на Nextcloud, который и было решено развернуть на собственном домашнем сервере

В данной статье я опишу как быстро и безболезненно установить и настроить облако Nextcloud и облачный редактор Onlyoffice

Статья предполагает, что у вас уже установлен и настроен Ubuntu.

Все действия были проверены на Ubuntu Server 20.04

Что будем делать:

1. Установим Nginx, PHP и MariaDB
2. Добавим бесплатный SSL-сертификат Let's Encrypt
3. Развернем NextCloud
4. Произведем тонкие настройки сервера
5. Установим Onlyoffice

Читать далее
Всего голосов 9: ↑5 и ↓4+1
Комментарии22

CS Cart или через терни к черной дыре костылей и оптимизаций

Время на прочтение6 мин
Количество просмотров9.5K

Совсем недавно, я стал разработчиком модулей для CS Cart. Случилось это по воле случая: меня взяли на работу в Петербургскую сеть интернет магазинов, торгующих вейпами и всякими интересными штуками для удовлетворения потребностей физического характера страждущих пар и одиночек (кто не понял - еще не дорос ). Оба интернет магазина развернуты на двух витринах с разными доменами, но одной админкой и общей базой данных. Что же с ней не так? Думаю о CMS написано много, но я добавлю свою ложку дегтя в бочку с дегтем .

Читать далее
Всего голосов 9: ↑8 и ↓1+7
Комментарии24

Безотказный Zabbix: миграция с асинхронной на групповую репликацию

Время на прочтение11 мин
Количество просмотров5.3K

Всем привет!

Жил был Zabbix с MySQL асинхронной репликацией. И всё бы ничего, но иногда приходилось переключать основной хост и делалось это запуском всяческих Ansible плейбуков, да и при отказе одного из дата центров нужно было проделывать некоторые ручные действия по переключению Secondary реплик на нового мастера. А хотелось чего-то из коробки, отказоустойчивого, и чтобы всё само.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии2

Различия индексов MySql, кластеризация, хранение данных в MyIsam и InnoDb

Время на прочтение5 мин
Количество просмотров25K

Как устроены индексы в MySql, чем отличается индексирование в двух наиболее популярных движках MyISAM и InnoDb, чем первичные ключи отличаются от простого индекса, что такое кластерные индексы и покрывающие индексы, как с помощью них можно ускорить запросы. Вот как мне кажется наиболее интересные темы которые раскрою в этой статье. Тут же постараюсь подробно раскрыть тему с позиции того как работает этот механизм внутри. Буквально на пальцах и с позиции абстракций а не конкретики. В общем чтоб было минимум текста и максимум понятно.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии3

Ближайшие события

Weekend Offer в AliExpress
Дата20 – 21 апреля
Время10:00 – 20:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн

Как новость про +4 выходных дня уронила нам базу данных

Время на прочтение6 мин
Количество просмотров48K
Этот день — яркий пример того, как несколько вещей, которые сами по себе не приводят к отказу, могут удачно совпасть. Итак, 23 апреля было совершенно обычным днём, с обычным трафиком и обычной загрузкой ресурсов. Как обычно, с запасом больше трети, чтобы при потере любого из ЦОДов пережить это без проблем. Никто не думал, что к серверному мониторингу нужно прикручивать ещё мониторинг того, что говорит президент на прямой линии, поэтому дальше случилось вот что:



Примерно в 13:30 у нас резко подскочила нагрузка на поиск по авиации и по железнодорожным билетам. Где-то в этот момент РЖД сообщила о перебоях на сайте и в приложении, а мы начали экстренно наливать дополнительные инстансы бекендов во всех ЦОДах.

Но на самом деле проблемы начались раньше. Примерно в 8 утра мониторинг прислал алерт про то, что на одной из реплик базы данных у нас что-то подозрительно много долгоживущих процессов. Но мы это прошляпили, сочли не очень важным.
Читать дальше →
Всего голосов 111: ↑107 и ↓4+103
Комментарии53

KODI: собираем удобный и функциональный медиацентр для дома. Часть 6. MariaDB и синхронизация медиатеки

Время на прочтение9 мин
Количество просмотров24K

Продолжаем «изобретать» медиацентр. Разберемся, как иметь несколько KODI-медиацентров и одну медиатеку на все устройства в доме. Причем такую медиатеку, которая понимает, где вы закончили просмотр и позволит его продолжить на другом устройстве.

Читать дальше →
Всего голосов 1: ↑1 и ↓0+1
Комментарии33

Войны лоббистов и развитие BIM. Часть 5: BlackRock — хозяин всех технологий. Как корпорации контролируют Open source

Время на прочтение26 мин
Количество просмотров25K

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

Сегодняшние лидеры САПР-индустрии: Autodesk, Hexagon, Nemetschek, Bentley, Trimble - хорошо готовятся к будущим угрозам: стандартной тактикой больших корпораций стал агрессивный захват новых рынков и поглощение возможных конкурентов на ранних стадиях развития. 

В результате вся САПР-индустрия стала похожа на олигополию, в которой доминирует группа из нескольких компаний. И их положение на вершине становится всё более непоколебимым.

Читать далее
Всего голосов 20: ↑19 и ↓1+18
Комментарии34

Как использовать ClickHouse не по его прямому назначению

Время на прочтение10 мин
Количество просмотров19K

Алексей Миловидов делает ClickHouse и, конечно, знает его вдоль и поперек. В том числе и о том, как его можно использовать дополнительно к его штатным и всем хорошо известным функциям.

И сегодня расскажет про эти необычные способы его использования и, может быть, даже не для хранения и обработки данных.

Read more
Всего голосов 47: ↑47 и ↓0+47
Комментарии5

«Ваша устаревшая база данных перерастает сама себя». Опыт chess.com

Время на прочтение14 мин
Количество просмотров9.7K

Прим. перев.: в этой статье сербский «инженер по масштабируемости» нагруженного онлайн-проекта в подробностях рассказывает о своем опыте оптимизации большой БД на базе MySQL. Проведена она была для того, чтобы выдержать резкий рост трафика на сайт, случившийся из-за пандемии.

База данных становится слишком большой или старой? Ее тяжело обслуживать? Что ж, надеюсь, я смогу немного помочь. Текст, который вы собираетесь прочитать, содержит реальный опыт масштабирования монолитной базы данных, лежащей в основе одного из сайтов Топ-250 (согласно alexa.com). На момент написания этой статьи chess.com занимал 215 место в мире по популярности. Ежедневно к нам заглядывали более 4 млн уникальных пользователей, а наши MySQL-базы обрабатывали в общей сложности более 7 млрд запросов. Год назад сайт ежедневно посещали 1 млн уникальных пользователей; в марте прошлого года их число увеличилось до 1,3 млн; сегодня более 4 млн человек заходят на chess.com ежедневно, а число сыгранных партий превышает 8 млн. Я, конечно, знаю, что это не сопоставимо с самыми крупными игроками на рынке, однако наш опыт все же может помочь в такой сложной задаче, как «исправление» монолитной базы данных и ее вывод на новый уровень производительности.

Читать далее
Всего голосов 43: ↑42 и ↓1+41
Комментарии3

Мониторинг популярных баз данных из единого интерфейса Quest Foglight — анонс вебинара

Время на прочтение2 мин
Количество просмотров1.6K
Foglight for Databases — удобный инструмент для DBA, который поддерживает мониторинг SQL Server, Oracle, MySQL, PostgreSQL, DB2, SAP ASE, MongoDB и Cassandra. И всё это в одном интерфейсе.

Кроме этого, инструмент позволяет сравнивать производительности БД в разные периоды времени (например, до релиза и после него), а также выполнять сравнение производительности различных экземпляров.

image

Приглашаем вас зарегистрироваться на вебинар, который состоится 7 апреля в 11 часов по московскому времени. Вы узнаете о возможностях решения, кейсах использования, лицензировании и сможете задать интересующие вопросы. Если вы не сможете присутствовать на вебинаре, в любом случае оставьте ваши контактные данные, мы вышлем вам запись после мероприятия. Под катом описание функционала решения и несколько скриншотов.
Читать дальше →
Всего голосов 4: ↑3 и ↓1+2
Комментарии4

DataGrip 2021.1: Редактирование прав, контекстные шаблоны, предсказуемая навигация и не только

Время на прочтение6 мин
Количество просмотров6K

Привет!

Сегодня мы выпустили DataGrip 2021.1: наш самый мощный релиз за последние годы. И это не шутка!

И что же там за фичи?
Всего голосов 9: ↑9 и ↓0+9
Комментарии0