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

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Событие (varchar), дата (timestamp), день-недели (varchar/byte)
    Ответ написан
  • Как правильно (безопасно) хранить пароли от сторонних сервисов в базе данных?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    1. Сделайте коннект к промежуточному хосту (как прокси-хост), на нем пропишите соответствие login:pass (внутренний) -> host,login,pass,port (внешний)
    2. Пропишите, что к промежуточному хосту доступ только с определенного IP (или сертификат).
    3. Не открывайте доступ к этой связке хранения (файловая система, БД и т.д.)
    Все это нужно делать обязательно на другом сервере (возможно виртуальная машина)

    Если даже пароли украли - вы их смените в одно мгновение. (не меняя удаленные)
    Если попытаются подключиться с украденными паролями, то доступ будет только с указанного IP. (ну и сертификат добавьте для более большей надежности)
    --------------
    Ну а по шифрованию - уже все и так здесь много полезного сказали.
    Добавлю лишь: главное - защищайте "соль".
    Ответ написан
    Комментировать
  • Оптимизация действительно длинного запроса?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Гораздо проще все…

    Проверки (WHERE):
    1. Сообщение адресовано мне: `to`=`username`
    2. Оно не прочитано (я бы сделал обратную переменную или по-умолчанию знач. 1): `unread`=1

    Остальных вариантов быть не должно!
    При любом действии с сообщением со стороны пользователя — оно должно быть прочитано (флаг должен ставиться автоматом).
    Если Вы не в этом диалоге — Вы не можете отправить сообщение в этот диалог (с его ID): проверяется при добавлении(создании) нового сообщения в БД.
    Кто инициатор конфы/комнаты и кто удалил/не удалил сообщение(-ия)/пользователя(-ей) — абсолютно не важно.
    Если хотите еще быстрее: добавьте в конце LIMIT 11 и проверьте что если COUNT>10, то выведите «У Вас больше 10 непрочитанных сообщений!».
    Ответ написан