Ответы пользователя по тегу MySQL
  • Как устранить тормоза таблицы после большого delete?

    KorroLion
    @KorroLion
    Для логов можно было бы сделать шардинг по дням. Таблицы: Logs_1, Logs_2, Logs_3 и т.д.
    Старые таблицы дропать (это моментально!)
    Номером таблицы может быть день недели, день месяца или года.
    Ответ написан
    Комментировать
  • Имеет ли смысл разделять данные пользователей в SaaS сервисе по отдельным БД?

    KorroLion
    @KorroLion
    при регистрации генерировать отдельную БД?

    Жесть! Ни в коем случае!

    Аккаунтов будет порядка сотен, количество записей в таблицах для одного пользователя - порядка десятков тысяч.

    Это даже не хайлоад! Я бы понял, если бы речь шла про десятки и сотни миллионов записей в таблице.

    Разделение юзеров по разным базам - это Шардинг в MySql. Но все кластеры должны быть готовы и базы при регистрации генерироваться не должны! Вам он не потребуется, так что не заморачивайтесь!
    Ответ написан
    Комментировать
  • Одна база на два сервера. Какие есть варианты реализации?

    KorroLion
    @KorroLion
    На сервере 1 и сервере 2 поднять Базы. Настроить между ними репликацию master-master.
    Скрипты на сервере 1 и 2 пусть запрашивают базу по localhost, чтобы не делать внешний запрос ко второму серверу.
    Вариант взять третий сервер, поставить на него mysql

    Если 2 сервера используются для повышения отказоустойчивости, то использование 3-его зависимого сервера лишь уменьшит ее.
    Допустим, лег сервер 3, тогда вообще ни сервер 1, ни сервер 2 смысла иметь не будут.
    Ответ написан
    8 комментариев
  • Как вывести последние записи из двух таблиц и отсортировать их по дате?

    KorroLion
    @KorroLion
    Такое чувство, что база данных спроектирована неверно.
    Я правильно понимаю, что эти 2 сущности между собой не связаны? Тогда почему их нужно выводить одним запросом?
    Если имеется ввиду, что bodykits и disks принадлежат к единой сущности товара, то данное решение немасштабируемо, т.к. придется для каждого нового товара заводить новую таблицу.
    Для товаров я бы выделил общие свойства: id, date, photomini и вынес в отдельную таблицу с товарами.
    Кастомные свойства всех товаров можно вынести в отдельную общую таблицу + сделать таблицу с описанием типов товаров.

    Получится:
    types - Возможные типы товаров: 1-bodykits; 2-disks (id, type)
    goods - Перечисление всех товаров с привязкой к типу из types (id, type_id, date, photomini)
    properties - Перечисление возможных свойств для типа (id, type_id, name_of_property)
    values - Значение свойств для конкретного товара (id, good_id, property_id, value)

    Там, где требуется вывести вывести разные типы товаров смешано выводить нужно только общие свойства из таблицы goods, т.к. и шаблон вывода скорее всего заточен на общие характеристики (которые есть у всех)
    Ответ написан
    Комментировать
  • Как спроектировать базу данных сайта знакомств на MySQL?

    KorroLion
    @KorroLion
    1) Немасштабируемое решение! Все страны нужно вынести в отдельную таблицу.
    2) Зависит от конечных запросов. Сделайте сначала без индексов, потом проанализируйте запросы. Без полного архитектурного представления нельзя сказать, какие индексы потребуются ))
    3) Верно! Если не знаете с какой целью данное поле должно быть NULL, то делайте тип поля NOT NULL.
    Каким образом это осуществить?

    А каким образом Вы создаете базу данных?
    4) Не понял вопроса
    Ответ написан
    2 комментария
  • Как записать id объявления в таблицу бд изображений после его подачи?

    KorroLion
    @KorroLion
    Итого я понял так:
    1) Есть HTML форма, в которой есть ajax-загрузчик фоток
    2) Есть серверный скрипт сохранения фотки
    3) Есть серверный скрипт сохранения объявы (при сабмите формы №1)

    При генерации формы генерим уникальный токен формы. Его вставляем в скрытое поле формы.

    Если происходит загрузка фотки, то в скрипт №2 передаем токен формы. Его записываем в отдельное поле таблы фоток.

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

    P.S. Код не читал (многабукв).
    Ответ написан
  • Как добавить данные в Mysql из файла?

    KorroLion
    @KorroLion
    Распарсить скриптом на любом языке программирования. Еще лучше распарсить и сразу скриптом залить в Mysql.
    Ответ написан
    Комментировать