Статьи

Вычисление возраста в SQL запросе

Нашел интересный списоб вычисление возраста пользователя прямо в SQL запросе.

SELECT `first_name` , (YEAR( CURRENT_DATE ) - YEAR( `birthday` ) ) - ( RIGHT( CURRENT_DATE, 5 ) < RIGHT( `birthday` , 5 ) ) AS `age` FROM `users` ORDER BY `id` ASC LIMIT 1

Импорт данных с .sql файла

Иногда через обычные средства (phpmyadmin, etc) бывают недоступны или действуют ограничения. Только приходит на помощь консоль.

mysql -h <host_name> <db_name> -u <username> -p < <file_name>.sql

пароль вводится в интерактивном режиме

Восстановление повреждённого InnoDB

Всем доброй ночи...
Сразу — кто не хочет читать всё — смотрим на выделенный цветом текст...
Давно уже не писал ничего здесь, наконец, подвернулся неудачный случай...
Лежал мой сервер на шкафу несколько месяцев, не запускался вообще ниразу. На кануне, перед тем, как он там оказался, система (FreeBSD 6.4) не была корректно выключена — слишком долго не было электричества, бесперебойник сел и… После этого я сервер запустил, проверил, что система вообще загружается и всё — забил, если можно так сказать :( Электричество у нас подорожало, сервер я больше не могу держать, вместе со своим сайтом с веб-инструментами.

  •  Eugen
  •  01 нояб. 2011 г.
  •  555
  •  0

Хранилище данных Falcon

Хранилище данных Falcon

Автор: Павел Пушкарев, paulus (at) sqlinfo (dot) ru

В сервере MySQL версии 5.2 появился новый вид хранилища данных — Falcon. Эта статья является обзором нового вида хранилища. В ней будут обсуждены его достоинства, недостатки и возможности.

Нужно ли переходить с MyISAM на InnoDB?

Автор: Peter, Percona
Перевод: Vladimir Rusinov

Существует значительная часть проектов, которые используют MyISAM и задаются вопросом, стоит ли им перейти на InnoDB, или же лучше продолжить использовать MyISAM?

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

Обзор InnoDB

Обзор InnoDB

InnoDB — один из почти десятка доступных движков для MySQL, и вот его основные достоинства:

  • Скорость:
    • построчные блокировки (а не целых таблиц как в InnoDB)
    • эффективное использование CPU, памяти и i/o
    • эффективные индексы
  • Стабильность и целостность:
    • автоматическое восстановление после сбоев
    • транзакции и ссылочная целостность
    • возможен онлайн бекап с помощью InnoDB Hot Backup
    • хороший, протестированный код
  • Проверенность:
    • распространяется в составе MySQL с 2001 года
    • широко используется в различных крупных проектах

Уязвимости в MySQL и SQL запросах

Эту статью я прочитал на simplecoding.org и призадумался. В большинстве web приложений, которых я видел, не производят проверку на длину входях данных. Слабое место это все, что связано с личными данными пользователя, авторизация, регистрация, восстановление пароля от учетной записи etc.

SQL-инъекции (SQL-injection) на сегодняшний день остаются наиболее обсуждаемыми проблемами безопасности web приложений.


В тоже время, другие уязвимости SQL запросов, например, связанные со слишком длинными входными данными, обычно игнорируются, хотя могут привести ко всем видам проблем безопасности.

Топ-100 советов по производительности MySQL

Заметка была опубликована на хабре (habrahabr.ru) ИМХО есть что подчерпнуть для разработчика БД. Перевод сделан мной, так что если будут какие то ошибки или неточность перевода, просьба указывать в комментах или написать мне через форму обратной связи.