Как создать базу данных MySQL
Здравствуйте, уважаемые посетители блога ZametkiNaPolyah.ru. Продолжаем разговор о базах данных, сегодня будем разбираться с тем,…
Здравствуйте, уважаемые посетители моего скромного блога для вебразработчиков и вебмастеров ZametkiNaPolyah.ru. Этой статьей я хотел бы открыть рубрику Заметки о MySQL. В этой публикации я хотел бы поговорить о том, что же такое базы данных для чего они нужны, и конкретно о системе управления базами данных(СУБД) – MySQL. Так же в этой публикации я вкратце расскажу о том софте, который можно бесплатно скачать с сайта разработчиков СУБД MySQL, который разрабатывался для упрощения работы с базами данных(БД). Так же мы с Вами посмотрим, где можно скачать сам MySQL сервер, подробно рассмотрим процесс установки MySQL сервера на Windows 7. А так же я расскажу, какие файлы отвечают за конфигурацию MySQL сервер.
Сразу оговорюсь, что для изучения баз данных, а в частности MySQL никакой специальной подготовки не требуется, то есть Вам достаточно уметь пользоваться текстовым редактором, например Notepad++, а так же знать несколько запросов, для командной строки Windows. Вобщем для изучения MySQL достаточно быть обычным пользователем домашнего компьютера. Забегая вперед, скажу, что для работы именно с базами данных Вам не потребуется ни HTTP-сервер Apache, ни PHP сервер, но их тоже было бы неплохо установить и пожалуйста, не верьте ресурсам, на которых пишут, что вначале ставится Apache, затем устанавливается PHP сервер, после это нужно устанавливать сервер баз данных MySQL – это все ложь и провокация, последовательность установки этих серверов не имеет никакого значения. Так как они могут работать независимо друг от друга, а вот правильно настроить их взаимодействие это да, это надо. Но в этой статье мы рассмотрим, как установить и настроить MySQL сервер.
Содержание статьи:
MySQL – это сервер баз данных, который очень широко используется в сфере web-разработки, причин тому масса, но самая главная из них – то что сервер MySQL бесплатный(точнее одна из реализаций бесплатная) и распространяется сервер MySQL по GPL License.
Раньше, когда-то давно, во времена красных пиджаков и новых русских MySQL сервер был очень ограничен в своих возможностях и ключевыми недостатками сервера MySQL были: отсутствие сложных запросов языка SQL, отсутствие вложенных запросов, отсутствие транзакций, так же когда-то давно у MySQL сервера не было поддержки целостности данных.
Но потом разработчики сервера MySQL, свиснули технологию сервера баз данных(движок InnoDB) у Oracle и транзакции и целостность баз данных стали не чужды серверу MySQL. А в связи с этим историческим событием, реализаций сервера MySQL две: первая и та, которая нас интересует Open source (то есть с открытым исходным кодом или бесплатная) реализация MySQL сервера и платная реализация сервера MySQL. Но все эти махинации с движком InnoDB относятся, если я не ошибаюсь к четвертой версии сервера MySQL.
Сейчас же сервер MySQL принадлежит фирме Oracle и пятая версия MySQL уже кардинально отличалась от четвертой версии, и именно в MySQL 5 стал по-настоящему серьезным сервером баз данных. На момент написания статьи последняя стабильная версия сервера MySQL 5.5.21, процесс её установки мы и будем рассматривать. Теперь давайте немного поговорим о редакциях сервера MySQL (MySQL сервер является Open source, но не Free).
Платной редакцией MySQL сервера является MySQL Enterprise Server, бесплатная версия MySQL Community Server. Стоимость Enterprise сервера определяется количеством процессоров и оплачивается ежегодно суммой в размере 600$. Разница между Community и Enterprise релизами в том, что все обновления выходят вначале на MySQL Enterprise, а уже потом только спустя длительное время они докатываются до Community.
Так же в Community вырезаны некоторые возможности, например, тут нет кластеризации, но для наших сайтов сервера MySQL Community будет вполне достаточно. Теперь давайте разберемся, что означают цифры, которые идут после названия сервера(не только сервера, но и любой нормальной программы) у нас сейчас доступна версия MySQL 5.5.21, первое число – мажорная версия или другими словами основная в нашем случае основная версия пятая, второе число минорная версия или вспомогательная у нас это тоже пятая версия, и третье число – билд или построение сервера(сборка), в доступной версии это 21, фишка последнего числа в том, что разработчик его меняет после того, как найдет и исправит некоторые багги и неполадки в работе сервера при этом, не внося никаких изменений в работу самого сервера.
Когда в работу программы вносятся какие-то не очень серьезные изменения, разработчик может поменять минорную версию программы, то есть второе число. И очень редко, вносятся кардинальные изменения в работу программы, и при этом разработчик имеет право поменять минорную версию, то есть первое число.
Думаю, что если Вам интересно узнать более подробно историю развития сервера MySQL, то Вы всегда можете воспользоваться поисковыми системами Google или Яндекс и сделать поисковый запрос типа «история развития MySQL».
И так начнем с того, что сервер MySQL это кросплатформенное приложение, то есть Вы его сможете установить в принципе на любую операционную систему, и он будет работать, причем запросы к серверу баз данных, которые Вы будете писать, в любой операционной системы будут одинаковыми. Будь-то Windows, различные Unix, Mac OS, Sun Solaris, так же на сайте разработчика Вы сможете найти исходный код сервера баз данных MySQL. Мы с Вами рассмотрим процесс установки MySQL сервера на Windows 7, обратите внимание, что на сайте разработчика в разделе download MySQL Community сервер есть различные версии сервера MySQL, во-первых, есть версия сервера MySQL под 32 битную операционную систему, а есть версия под 64 битную ось.
Затем, как я уже говорил у Community сервера есть два различных инсталляционных пакета, раньше один назывался Essentials, начальная версия(здесь был только сам сервер баз данных без дополнительных компонентов), и был MySQL Installer немного расширенная версия, хоть я и не знаю, что было отрезано в Essential, я всегда качал себе Installer.
Скачать MySQL сервер можно с официального сайта разработчика – mysql.com. На главной странице сайта есть кнопка download (GA), после того как нажали на кнопу, у вас должен появиться список различных версий серверов, нас интересует MySQL Community Server, на момент написания статьи последней доступной версией была 5.5.24. После того как вы выберете Community вам будет предложено выбрать платформу(операционную систему), а так же будет доступно несколько различных инсталляционных пакетов. Доступны версии для 64 и 32 двух разрядных операционных систем. Качайте installer и не заморачивайтесь с zip архивом.
После того, как будет выбрана нужная версия сервера, вам будет предложено зарегистрироваться и подписаться на обновления, но можно этого не делать, нажав на ссылку с текстом — No thanks, just take me to the downloads! После чего выбирайте сервер, с которого вы будете качать установщик, а так же протокол, по которому будете качать(http или ftp). Кстати, если вы где-то читали, что сервера следует устанавливать в последовательности: Apache, PHP, MySQL, то пожалуйста забудьте все эти сервера могут работать в отдельности друг от друга и никак не связано.
Перейдем к установке MySQL сервера. Установка сама по себе очень простая, но есть несколько моментов, о которых следует упомянуть. Запускаем установачный пакет, жмем Next, читаем и соглашаемся с лицензией, после чего необходимо выбрать режим установки(typical, custom, complete). Можете смело выбирать Typical, но я буду рассматривать Custom, для того чтобы показать что будет установлено. И так, я выбрал custom, а теперь можно посмотреть, что будет установлено.
Сам по себе сервер MySQL с демонстрационными базами данных, на скрине обозначен цифрой 1, клиентская программ для работы с базами данных, на скрине обозначена цифрой 2, тут же можно поменять папку, в которую будет установлен сервер баз данных(MySQL серверу по сути без разницы в какую папку и на какой диск вы его установите), но устанавливать его в папку program files не стоит, так как это будет неправильно с точки зрения политики Windows (в папке program files должны находиться только программы, то есть файлы только для чтения), поэтому я бы посоветовал вам изменить путь что-нибудь типа documents and settings/all users/application data/MySQL/MySQL Server 5.5.24, потому что именно по этому пути вы сможете найти свои базы данных(это для Win XP). С:\Users\Public – это то место, где хранит свои базы данных MySQL сервер на операционных системах Win 7 и Vista.
Собственно все, жмем next и ждем, пока сервер установится. После чего смотрим рекламу и жмем Finish.
После чего можно будет сконфигурировать сервер MySQL или, проще говоря, настроить. Если говорить совсем уж грубо, то MySQL сервер можно разделить на несколько серверов баз данных(instance), каждый из которых можно сконфигурировать по-разному, в зависимости от данных, которые необходимо хранить, ну что же давайте приступим.
Нам предоставляется выбор, либо использовать стандартную конфигурацию, либо самостоятельно настроить сервер, так как вам потребуется. Здесь обязательно следует выбрать детальную установку(detailed configuration). Первое, что надо будет выбрать – роль сервера. Тут три варианта, developer machine, server machine и dedicated mysql server machine. Если говорить по-русски, то первый вариант это MySQL сервер для разработчика, второй вариант это собственно сервер баз данных и третий вариант выделенный компьютер под сервер баз данных.
Если вы выбираете вариант Developer Machine, то MySQL сервер практически не будет потреблять никакие ресурсы(так как клиент у такого сервера один). Если вы выбираете вариант Server Machine, то вы говорите MySQL серверу можешь кушать ресурсы, но так чтобы хватало другим серверам работающим с тобой(это уже боевое использование сервера). Если выбираем вариант Dedicated, то мы говорим серверу, кроме тебя на машине ничего нет, можешь использовать все ресурсы. Я выберу Developer Machine.
Затем нам надо выбрать тип баз данных, с которыми мы хотим работать, их так же три. Если говорить более понятно, то следует сказать, что у MySQL сервера есть несколько движков(около 10) и тут мы должны выбрать какой движок хотим использовать. Transactional Database Only, означает, что мы хотим работать только с транзакционными базами данных. Non — Transactional Database Only, работать только с не транзакционными базами данных.
Но лучше выбрать Multifunctional Database, это означает, что мы установим все возможные движки MySQL. Дело в том, что у сервера MySQL множество движков, но есть один самый крутой(он был в своем время скомунижжен у оракла) и называется InnoDB, особенность этого движка состоит в том, что хранит все свои базы данных он не там, где установлен сервер MySQL, а там где вы ему укажете. При боевом использование для этого выделяются отдельные диски. И именно место хранения баз данных следует указать в следующем окне, после того, как вы выбрали многофункциональные базы данных. Я здесь оставлю все по умолчанию.
После этого нам надо указать серверу MySQL какого вида операции мы на нем будем производить. Об этом можно написать отдельную статью, но сейчас можно сказать, что все операции делятся на два типа, OLTP (процесс изменения реального времени) и OLAP (процесс анализа реального времени), грубо говоря, это операции производимые с данными. OLTP – это преимущественно модификация баз данных, то есть сервер должен выполнять модификацию баз данных без задержек. OLAP – это анализ баз данных, например, какие-нибудь выборки за определенный период времени и т.д. Следует сказать, что реляционные базы данных плохо рассчитаны на OLAP, их достоинство OLTP. От типа операций зависит и количество пользователей, которых сможете одновременно обслужить сервер MySQL. Я оставлю OLAP, с возможность 15 одновременных подключений.
Дальше нужно выбрать порт, на котором будет работать, стандартный порт для MySQL 3306. Прежде чем надавить next, тут надо поставить галочку на пункте add firewall exception for this port, это в том случае если вы используете стандартный виндосовский фаерволл, если у вас стоит какой-нибудь нестандартный firewall, то отключите его на время, а затем жмите Next.
А теперь самая главная настройка, выбор кодировки, в которой будут храниться данные на сервере. Именно хранить, так как MySQL сервер может хранить данные в одной кодировки, а отдавать их пользователю в другой кодировки. Ну тут два варианта, ставим галочку напротив пункта Best Support и данные будут храниться в кодировки utf8 или ставим галочку напротив пункта Manual Selected и из выпадающего списка выбираем кодировку utf8. Ну очевидно, что у юникода много преимуществ, но нам важно, что используя юникод мы можем на сервер отправлять любые данные и на любом языке.
Следующее, что надо выбрать, это как устанавливать MySQL сервер. Первый вариант это установка MySQL сервера как службу windows, то есть MySQL сервер будет работать вне зависимости от пользователя, который на данный момент в системе. То есть в этом пункте нам надо как-нибудь назвать нашу службу. А так же не забудьте поставить галочку на пункте Include Bin Directory, это нужно сделать для того, чтобы каждый раз не прописывать путь к серверу MySQL.
И в конце всей установки нужно указать пароль администратора, естественно, что на домашней машине ничего сложного придумывать нет необходимости. Если вы забудете пароль, то сбросить его всегда можно, но для этого понадобится физический доступ к серверу, удаленно сбросить пароль администратора MySQL сервера практически невозможно. Так же по умолчанию, администратор сервера баз данных может работать только локально. Если нужна удаленная работа администратора, то нужно поставить галочку на пункте Enable root access.
После всего этого останется только ждать, пока программа запишет все наши настройки в специальный настроечный файл, запустит сервер, подключится к нему и даст ему необходимые команды по TCP соединению. Поэтому перед тем как ткнуть на кнопку Execute лучше выключите все firewall’ы и антивирусы.
Возможно, вам будет интересно:
Кирилл, хочу сказать вам спасибо)))) Информация очень помогла)) Мы сейчас в институте проходим курс баз данных и лабы выполняем в MySQL, сама я не могла установить сервер, но с вашей инструкцией у меня получилось)) Кстати, у вас очень хорошо получается, все доступно и понятно, успехов вам))
А я установила и потеряла ее =(
Устанавливала в Documenrs -> Users. А теперь вообще не могу найти таких папок в ноуте =(
Хотя написано доступно, после финиша дело застопорилось.