Как сделать популярный сайт. ~~~~~ Три команды-кита, на которых держится MySQL ~~~~~
Добрый день,
уважаемые читатели рассылки
"Как сделать популярный сайт" Выпуск 181.
~~~~~ Три команды-кита, на которых держится MySQL ~~~~~
Внимание! Если ваша почтовая программа не отображает корректно рисунки или тексты, то Нажмите здесь ::
http://kocby.ru/post/webmaster/text/issue181.html
Три команды-кита, на которых держится MySQL
Если Вы не популярны,
Значит, Вас как бы и не существует...
... мы успешно создали нашу первую базу. Затем для нее мы создали первого пользователя. Этому первому пользователю дали нужные права относительно нашей
первой базы. Затем в нашей первой базе с помощью скрипта создали первую и единственную в этой базе таблицу.
Сегодня, для того, чтобы сделать четкую и явную связь с прошлым выпуском сделаем описание полей этой таблицы.
Описание полей таблицы gbver103 БД _gb2011
Поле
Тип
Сравнение
Null
По умолчанию
Дополнительно
Описание
id
int(5)
-
Нет
Нет
AUTO_INCREMENT
Уникальный номер, однозначно идентифицирующий запись в таблице.
parent_id
int(5)
-
Нет
0
-
Номер записи, к которой привязана данная запись. Если 0 - значит, эта корневая запись.
name
varchar(50)
utf8_general_ci
Нет
Нет
-
Здесь то, что пользователь вводит по приглашению "Ваше имя:"
comment
text
utf8_general_ci
Нет
Нет
-
Здесь то, что пользователь вводит по приглашению "Комментарий:"
IP4
varchar(15)
utf8_general_ci
Нет
Нет
-
IP адрес пользователя, который ввел эту запись.
date_add
datetime
-
Нет
Нет
-
Дата и время ввода записи
Структура нашей таблицы весьма проста, я думаю, что вы интуитивно догадались за что отвечает то или иное поле.
Подчеркну два момента.
IP адрес пользователя, который ввел эту запись, возможно, не стоит выводить из БД для просмотра, это зависит от типа сайта на котором будет установлена эта
Книга Отзывов. В нашем случае, где, в основном, собираются программеры, я думаю, есть смысл выводить этот реквизит для наглядности.
А вот фиксировать IP адрес, я считаю, следует обязательно. На всякий случай. Это создает гибкость в плане принятия решений по администрированию, защите от
спама и т.д.
И второй момент. Структура таблицы выводится по следующим командам:
DESC gbver103;
DESCRIBE gbver103;
Собственно, это одна и та же команда, только в первом случае использован ее сокращенный вид.
Полезность знания этой команды заключается в том, что она (как и следующие команды SQL, которые мы сегодня посмотрим) является универсальной и используется
не только в MySQL, но и во всех БД эс-кью-эль-ного типа.
Экспорт БД _gb2011 с помощью phpMyAdmin
Полезняшка из серии "Это должен знать и делать каждый" - резервное копирование БД.
1. Заходим в phpMyAdmin
2. Выбираем нужную БД (в нашем примере _gb2011, login_gb2011, у вас может быть в названии базы свой префикс или вообще без префикса).
3. Нажимаем "Экспорт".
4. Выбираем нужные опции.
5. Нажимаем "ОК".
В результате мы сохраним на наш локальный компьютер полностью БД, вместе с ее структурой и данными.
Теперь можно будет легко установить БД на другой хостинг или у себя на локальном компьютере.
Единственно стоит иметь ввиду, что данный простой способ хорошо работает на маленьких БД, на больших могут возникнуть разные проблемы, которые заставят вас
делать ужасное - думать.
А вот для маленьких баз (весом до 100 метров) этот способ работает ок без напряжения извилин.
Самые нужные и популярные команды SQL
Одну команду из этой серии (DESC) мы уже освоили, теперь еще три.
Кстати, это как раз те самые три команды, на которые мы дали права нашему пользователю в
прошлом выпуске:
SELECT (выборка записей из БД) - это самая безобидная и неопасная команда из нашей тройки,
UPDATE (обновление записей в БД) - тут надо быть очень осторожным, эксперименты ставить только на тестовых БД,
INSERT INTO (добавление записей в БД) - не так ответственно, как при команде UPDATE, но тоже следует проявлять осторожность.
Примеры данных команд:
SELECT * FROM gbver103 WHERE 1=1;
SELECT * FROM gbver103 WHERE parent_id=0;
UPDATE gbver103 SET name='Некий Автор', comment='Запись не имела информационной ценности и была заменена с помощью команды UPDATE.' WHERE IP4 LIKE
'%80.239.242.30%'
INSERT INTO gbver103 (parent_id, name, comment, IP4, date_add) VALUES (0,'DB Admin', 'Попытка вставить новую запись из интерфейса phpMyAdmin с помощью
команды INSERT - я хацкер из Шанхая - у меня крутой IP адрес!', '222.222.222.222', '2011-03-13 22:22:22');
Обращаю внимание, что наша работа напрямую с БД в интерфейсе phpMyAdmin носит чисто учебно-административно-показательный характер. Нормальная, обычная
работа, конечно, производится в программной оболочке через обычный браузер (IE, FireFox и др.).
Как сделать эту оболочку, как в нее вставлять команды SQL, мы поговорим в следующем выпуске. А за это время вы как раз научитесь ловко работать с вашей БД
напрямую, без браузера. Это очень полезный навык.
Вот и все на сегодня. Приглашаю всех желающих стать успешным самому и сделать более успешной систему Матрица путем участия в
ее бета тестировании. Количество бета-тестеров по состоянию на сейчас: (вот сейчас и посмотрю...) 508. Присоединяйтесь, коллега, присоединяйтесь. Мир тесен.
Сегодня вы поможете мне протестировать мой проект, завтра я помогу протестировать ваш, и путь к успеху открыт у нас обоих. В Матрице вы научитесь добиваться
успеха в любом деле, в том числе и в строительстве популярных сайтов.
Спасибо за внимание.
~~~~~ Обратная связь ~~~~~
У вас есть два способа реагирования на данный выпуск.