Статьи ⇒ Базы данных
Опубликовано: 29 сен 2013 в 14:00
Автор: freeeeez  

oracle

При выборе баз данных для сайта встает вопрос что выбрать? Как правило, мнения разделяются на любителей Oracle и MySQL. Несмотря на то, что обе системы управления базами данных являются продуктом одного производителя первая из них является платной, а вторая предоставляется на бесплатной основе с открытым исходным кодом. 

Нет комментариев
2 233 просмотра
Опубликовано: 3 сен 2013 в 09:33
Автор: freeeeez  

индексирование

Основным способом ускорения доступа к MySQL базам данных является индексирование таблиц. Без индексирования столцов таблиц, выборка происходит путем полного перебора всех записей в таблице, что существенно замедляет поиск. Например, если у вас в базе данных 1000 клиентов, а скрипт выбирает пользователя по номеру паспорта, то каждый раз ему необходимо просмотреть все 1000 строк, чтобы найти соответствие с заданным условием, даже если эта строка была одной из первых. Если столбец с паспортными данными будет содержать уникальный индекс (двух одинаковых номеров паспорта быть не может), то для выбора из таблицы скрипту будет необходимо просмотреть всего одну запись в таблице. Нагрузка на MySQL при таком методе снижается в десятки раз!

1 комментарий
4 417 просмотров
Опубликовано: 22 окт 2012 в 21:43
Автор: freeeeez  

Настройка сервера MySQL необходима для его надежной и бесперебойной работы с частыми обращениями к таблицам. Правильное распределение памяти сервера позволяет увеличить скорость загрузки страниц сайта.

2 комментария
2 978 просмотров
Опубликовано: 30 авг 2012 в 22:41
Автор: freeeeez  

Какие могут возникнуть проблемы при использовании баз данных при разработке сайта? В первую очередь это связано с восприимчивостью скриптов, взаимодействующих с БД, к определенного рода конструкциям, нарушающим нормальную логику работы. Нарушение логики приложения приводит к возникновению ошибок. Это может оказаться важной информацией для злоумышленника.

Нет комментариев
3 463 просмотра
Опубликовано: 5 июн 2011 в 10:25
Автор: Ronald Bradford  Перевод: freeeeez 

Обеспечение безопасности баз данных это одна из самый приоритетных задач. Существуют две основные проблемы безопасности сервера MySQL. Рассмотрим их на примере:

1. Войдите на свой сервер MySQL как root пользователь:

$   ssh root@server-name
Password:  ************
2. Подключитесь к MySQL базе данных без пароля.
$   mysql -uroot
Теперь займемся исправлением этих уязвимостей.

Нет комментариев
4 474 просмотра
Опубликовано: 13 май 2011 в 18:30
Автор: Chris Shiflett  Перевод: freeeeez 

Уровень безопасности на виртуальном хостинге значительно ниже, чем на выделенном. Это является неким компромиссом цены/качества.

Одним из особо уязвимых аспектов виртуальных хостингов является механизм хранения сессий. По умолчанию PHP сохраняет данные сессии в /tmp. К счастью, не каждый может читать файлы сессии, они доступны лишь для сервера:

$ ls /tmp
total 12
-rw-------  1  nobody  nobody  123 May 21 12:34 sess_dc8417803c0f12c5b2e39477dc371462
-rw-------  1  nobody  nobody  123 May 21 12:34 sess_46c83b9ae5e506b8ceb6c37dc9a3f66e
-rw-------  1  nobody  nobody  123 May 21 12:34 sess_9c57839c6c7a6ebd1cb45f7569d1ccfc
$

Нет комментариев
5 771 просмотр
Опубликовано: 4 апр 2011 в 23:34
Перевод: freeeeez 

SQL-инъекция — это процесс, при котором кто-либо выполняет SQL-запрос к базе данных без вашего ведома, с целью нанесения ущерба. Данная техника заключается в эксплуатации уязвимостей программного кода. Это происходит только тогда, когда ваши запросы составлены с использованием внешних данных, которые принимаются от пользователя. В данной статье представлены техники защиты от SQL-инъекций. Я проиллюстрирую эту ситуацию в двух случаях, (1) когда данные, введенные пользователем, плохо фильтруются, и (2) когда они не соответствуют типу принимаемых данных и выполняется один или несколько запросов.

12 комментариев
23 660 просмотров
Опубликовано: 24 мар 2011 в 11:57
Автор: Kevin Spett  Перевод: freeeeez 

Для начала вспомним о простой SQL-инъекции. Это метод взлома, который позволяет злоумышленнику получить несанкционированный доступ к серверу базы данных. Скрипт принимает данные от злоумышленника и выполняет SQL-запросы без предварительной проверки входных данных. Тем самым атакующий может свободно изменять, добавлять и удалять содержимое баз данных.

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

Нет комментариев
10 817 просмотров