Рейтинг
+1.14
голосов:
1
avatar

Базы данных MySQL  

Приведение типов в MySQL

Здесь речь пойдёт об основных способах приведения типов в MySQL. Заранее следует оговорить тот момент, что в большинстве случаев приведение типов в MySQL сработает автоматически, например:
//Выполнив запрос:
select 1+'1';
//Получим результат: 2

Однако в ряде случаев требуется специальное приведение типов, о них и пойдёт речь далее.


( Читать дальше )

Как заставить себя спроектировать БД

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

Волшебный пендаль творцы называют обычно красивым словом вдохновение. К чему тут в топике мускла я пишу о вдохновении? Да просто потому что процесс созидания новой схемы новой бд нового проекта у меня вызывает вполне ощутимую лень и небольшой трэмор перед стартом. Где ж брать вдохновение на создание БД, точнее структуры своей будущей БД. Я их беру вот тут Library of free data Models.
Возможно профи это ни к чему, но таким как я это часто просто необходимо — именно посмотреть как другие организовали свое хранилище для очень похожих задач.

Типы данных в БД MySQL

В этой публикации я рассмотрю подробно, на сколько это возможно, основные типы данных используемые в СУБД MySQL.

MySQL поддерживает несколько различных типов данных:
Числовые данные — это все целые числа (без дробной части) и вещественные числа (с дробной частью).
Строковые данные — последовательность символов, заключенная в кавычки. В MySQL в качестве стандарта используются одинарные кавычки и для совместимости с другими базами данных рекомендуется именно их использование.
Календарные данные — тип для обозначение даты и времени, принимает различные формы, например строковую «2007-11-23» или числовую 20071123. Особенностью этого типа данных является их хранение в едином внутреннем формате, что позволяет производить операции сложения и вычитания, в независимости от внешнего представления.
NULL — специальный тип данных, обозначает отсутствие информации.


( Читать дальше )

О настройке и оптимизации MySQL сервера

Сразу скажу, статья не моя, но мне очень понравилась, и чтобы потом не искать решил запостить здесь. Благо автор на своём сайте не запрещает этого делать. За что ему огромное спасибище.
Вот оригинал: http://blog.peter.am/index.php/2010/11/30/setup-optimzations-mysql

В этой статье будут описаны различные настройки MySQL, преимущественно те, которые влияют на производительность. Для удобства все переменные разделены по разделам (базовые настройки, ограничения, настройки потоки, кэширование запросов, тайминги, буферы, InnoDB). Сначала уточним имена некоторых переменных, которые изменились в версии 4 MySQL, а в сети продолжают встречаться и старые и новые варианты имен, что вызывает вопросы.


( Читать дальше )

MySQL перебор значений без перебора (одним скриптом).

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


( Читать дальше )

Типы и структура таблиц в MySQL

    База данных MySQL поддерживает несколько разных видов таблиц, все они имеют свои особенные возможности и ограничения.

    Начну своё описание с «родного» для баз данных MySQL типа таблиц MyISAM. Если в операторе create table не задать тип таблицы то будет назначен именно этот тип.
    Каждая MyISAM таблица хранится на диске в трёх файлах (в поддиректории каталога mysql/data), имена этих файлов совпадают с названием таблицы, а расширение может принимать одно из следующих значений:
.frm — структура таблицы, этот файл содержит информацию об именах и типах столбцов и индексов;
.MYD — в этом файле содержатся данные таблицы;
.MYI — в этом файле содержатся индексы таблицы.


( Читать дальше )

Хранение паролей в базе данных MySQL

    Самый простой способ хранить пароли в базе это положить их в таблице пользователей в открытом виде, допустим в поле с типом VARCHAR. Но при таком подходе, в случае попадания базы в руки злдоумышленника, все пароли 100% становятся ему известны.
    Чтобы этого не произошло, пароль лучше хранить в зашифрованном виде, использовав алгоритмы шифрования md5, sha1 и т.п.

Например GetMD5("mypassword")=="4??{???&\?K?[>D"


( Читать дальше )

Важное о наименовании процедур в MySQL!

Расскажу об одном небольшом нюансе который поможет сэкономить время и нервы. Эта особенность мною была замечена только в MySQL (проявлялась как в 5 так и пока в тестовом 6-ом). Заключается она в необходимости особого наименования процедур, для правильного восстановления базы из архива (дампа MySQL).

Смысл заключается в алфавитном порядке функций. При создании дампа базы все элементы сохраняются в алфавитном порядке, тоесть если в процедуре proc1 вызвать процедуру proc2 — то при восстановлении из дампа вылетит ошибка поскольку первой будет восстанавливаться процедура proc1 — которой требуется proc2 — но её в базе на момент воссоздания ещё не будет.


( Читать дальше )

Менеджеры для работы с БД MySQL

Расскажу о самых популярных (во всяком случае у меня) средствах для работы с базами данных MySQL, лучшего пока нету. Всего таких программ две, помимо довольно удобных и бесплатных утилит администрирования, которые можно скачать с сайта MySQL.

Первая: PHPMyAdmin

( Читать дальше )

Стандартные утилиты в MySQL

Стандартные утилиты в MySQL находятся в подкаталоге bin корневого каталога MySQL.

Список наиболее часто используемых утилит:

myisampack — Сжимает таблицы типа MyISAM, уменьшает их в размере и делает доступными только для чтения;

mysql — консольный клиент для доступа к MySQL серверу, позволяет выполнять SQL запросы и осуществлять администрирование сервера;


( Читать дальше )