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

Везде, где используется LIMIT offset для больших таблиц, рано или поздно начинаются тормоза. Запросы вида

SELECT * FROM test_table ORDER BY id LIMIT 100000, 30

могут выполнятся очень долго. Например, в моем случае, на одном из сайтов кол-во комментариев перевалило за 200к и постраничная навигация по комментариям начала ощутимо тормозить, а в mysql-slow.log все чаще стали попадать запросы с временем выполнения 3-5сек.
Читать полностью »

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

На тот момент был у меня товарищ, который периодически помогал мне в создании разных скриптов и программ, так что очень скоро для меня он стал «ведущим компьютерщиком», которого я мог попросить о любой услуге, касаемо программ и железа, так что когда я решил арендовать сервер в Германии — я ему так и сказал, а он мне так и купил… и настроил. Надо ли говорить о том, что я и не подумал о том кто же будет поддерживать работу на сервере?
Как сервер убил 100 моих сайтов или зачем нужен сисадмин?

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

Структура метаданных в СУБД от Microsoft и Sybase
Не так давно мы анонсировали бесплатную утилиту SQL Dynamite для поиска по метаинформации в базах данных. Хотим поблагодарить всех за хорошие отызвы, критику, найденные ошибки.
Для вас мы выпустили обновление, исправли найденные ошибки, и добавили поддрежку с SQLite и Informix.

Новая версия доступна здесь.

В прошлой статье мы обещали рассмотреть вопросы доступа к метаинформации БД. Сегодня поговорим про MS SQL и Sysbase.

Процесс поиска и анализа связей различных объектов в СУБД Microsoft SQL Server, Sybase Adaptive Server Enterprise, Sybase Anywhere и SQL Azure прежде всего заключается в работе с метаданными.

Проблема в том что Sybase ASE и MSSQL, изначально имея одинаковую структуру метаданных, прошли долгий путь развития независимо друг от друга. Sybase Anywhere изначально была Watcom SQL и имела кучу отличий от Sybase ASE, а SQL Azure – это вообще облачная СУБД. Тем не менее, структура метаданных в них во многом схожа, в частности имеют одинаковые названия таблицы, содержащие ключевую информацию об объектах (sysobjects, syscomments и syscolumns).
Читать полностью »

Совсем скоро произойдет обновление Облачной платформы InfoboxCloud Jelastic до версии 1.9.3. Платформа Jelastic в InfoboxCloud позволяет в 1 клик получать Java, PHP и Ruby окружения, необходимые SQL и NoSQL базы данных, кэш, VDS и не только.

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

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

В этой статье мы рассмотрим, что нам готовит обновление Облачной платформы InfoboxCloud Jelastic.
InfoboxCloud Jelastic
Читать полностью »

Привет!

Я привык выполнять свою работу добросовестно и перед написанием этого поста параноидально проверил несколько раз, насколько подмеченное мной является действительно багом (а не последствиями бессонной ночи перед компьютером), а также попытался найти что-либо похожее в интернетах. In vain. Verloren. Тщетно.

Итак, если интересно, добро пожаловать под кат, чтобы увидеть несложный архитектурный элемент, на котором некорректно срабатывает добавление первой записи в составной VIEW.
Читать полностью »

Вступление

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

Немного теории

В основе работы алгоритма лежит использование SQL — запроса с ключевым словом LIMIT. Для реализации механизма постраничной навигации, нужно: смещение от начальной точки отсчёта — START и число выводимых элементов — LIMIT.

Как же это работает ???
Рассмотрим пример разбивки информации на страницы по 3 — элемента. При такой разбивке мы поочередно будем получать значения с n по n + 3 (размер вывода). Вот наглядная демонстрация:

Постраничная навигация на PHP это очень просто

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

Holland LogoВ один из дней мне надоело использовать самописные скрипты для создания резервных копий баз данных. Не важно, разработаны они были мной или найденны где-то на просторах интернета. Исходя из принципа, что время является самым дорогим ресурсом системного администратора (инженера, архитектора), было найдено решение, отвечающее следующим требованиям: простая установка, быстрая настройка и, как сумма предыдущих требований, быстрое введение в эксплуатацию.

Согласно официальному сайту, Holland — фреймворк с открытым исходным кодом для создания резервных копий, разработанный Rackspace и написанный на языке Python. Проект преследует цель создания бекапов с большой гибкостью настройки, логичной структурой и простотой использования. В данный момент Holland работает с MySQL и PostgreSQL, однако в будущем будет включать большее разнообразие баз данных, и даже приложения, никак не относящимся к базам данных. Благодаря модульной структуре Holland может быть использован для создания резервных копий чего угодно, как угодно.
Читать полностью »

«Какие бывают ошибки, или правильное применение базы данных»

Друзья, мы приглашаем всех, кто занимается архитектурой веб-приложений послушать о том, что такое хорошо, а что такое плохо, если ты используешь в своем проекте базу данных. Выбор хранилища данных — сложная задача, с которой рано или поздно сталкиваются разработчики. Чаще всего результат этого выбора — это компромисс. Сергей Аверин, разработчик компании Badoo, расскажет о собственном опыте, набитых «шишках», рассмотрит важные проблемы, связанные с этой задачей.

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

Я работаю в организации, которая занимается аутсорсингом по всей России, в том числе монтажом СКС в магазинах наших заказчиков. Заказов на монтаж в последнее время стало намного больше и был создан новый отдел, который занимается мониторингом этих открытий. Мне была поставлена задача разработать небольшой сайт для мониторинга данных работ. На сайте должны быть счетчики обратного отчета, отображающее время до открытия магазина, строка с данными об этом магазине (заказчик, бренд, город, адрес, номер заявки в нашей основной информационной системе, тип работ и дата открытия), а вся эта информация на сайте должна браться из таблицы, находящийся на Google docs.
Читать полностью »

Начиная с версии 5.1 в MySQL реализована поддержка динамически подключаемых плагинов. А дистрибутив содержит примерный скелет кода под названием – example. Он описывает интерфейс и структуру базового обработчика – handler, копия которого создается отдельно для каждого соединения с БД. Также ему передаётся указатель на дескриптор таблицы TABLE *table и вспомогательный вектор TABLE_SHARE *share, используемый для синхронизации с другими обработчиками. Разработку плагина можно осуществлять по модульному принципу, реализуя только необходимые функции в первую очередь и закрывая заглушками более сложные операции.
Поскольку шаблон example описывает только интерфейс и не выполняет никаких операций, то в этом примере мы добавим в него реализацию CRUD-операций на основе одно-связного списка. Читать полностью »


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