Традиционно в Windows, в особенности в Windows Server, используется продукт того-же прозиводителя - Microsoft - называемый SQL Server. Различные его версии предоставляют нам различные ограничения и возможности. Есть даже бесплатная версия под названием Microsoft SQL Server Express, ограничивающая администраторов и разработчиков размером базы данных, потребляемого ОЗУ, процессорных ядер, а в редакции MSDE2000 - еще и количеством одновременных подключений. Есть и более "способные" продукты, за которые нужно выложить уже ооочень немаленькие (для России - просто дикие) деньги.
Однако MS SQL многого не может. Как минимум - он просто не совместим с MySQL, используемом на подавляющем большинстве хостингов. Простенькие запросы будут работать и там, и там, а вот запросы посложнее - тут уже эти два сервера откажутся понимать друг друга.
Я не буду здесь разглагольствовать - что лучше, что хуже - это отдельная статья для отдельных писателей, требующая тщательного и детального подхода. Для себя я сделал выбор, оглашать здесь который не собираюсь (по долгу службы я администрирую как MS SQL, так и MySQL) - каждый выбирает серверное ПО по своим потребностям, способностям, умениям, желаниям и целям. А на Windows-платформе, наверное, даже уместнее использовать MS-решения (далекооо не всегда, конечно, но иначе для чего Windows вообще тогда нужна?)
Но задача у нас стоит вполне определенная - нам нужен MySQL на платформе Windows Server (неважно какой - будь это 2003 Web Edition или 2008 Enterprise). Для чего - не особо важно (хоть и потребуется это понимание в процессе установки).
СкачиваемЗаходим на сайт www.mysql.com, идем во вкладку "Downloads", под надписью "MySQL Community Server" тыкаем в ссылку "Download". Открывается страница закачки, откуда мы можем скачать текущую версию или справа нажать на "Looking for previous GA versions?" и попасть на такую-же страницу закачки версии 5.1.
Здесь я опишу установку на основе MySQL 5.1.57, т.е. как раз "устаревшей", но максимально совместимой с используемыми на хостинг-серверах.
Итак, скачиваем и ложим, например, на рабочий стол.
УстановкаЗапускаем установщик. На вопрос "как ставить" выбираем "Typical".
После установки инсталлер нас спросит - настроить ли сервер сейчас ("Configure MySQL Server now"). Ставим галочку и идем дальше.
Начальная конфигурацияВыбираем пункт "Detailed configuration" и двигаемся дальше.
1) Тип сервера. Нас спрашивают - что это за компьютер:
1а) Developer machine: машина разработчика ПО, работающего с базами данных MySQL. Выбирайте этот вариант в том случае, если это не сервер, а просто локальная инсталляция MySQL для работы программиста.
1б) Server machine: обычно выбираем этот вариант - это сервер, на котором будет стоять MySQL вместе с какими-то другими службами (например, с веб-сервером).
1в) Dedicated server machine: если на этой машине ничего, кроме MySQL, стоять не будет. Т.е. это сервер исключительно под базы данных MySQL.
2) Преимущественный тип БД.
2а) Multifunctional database. Сбалансированный вариант для использования как с базами данных InnoDB, так и MyISAM. Рекомендую выбирать его.
2б) Transactional database. Вариант, если подавляющее количество баз данных у Вас будет в формате InnoDB.
2в) NOn-transactional database. Вариант на случай, если большинство баз - в формате MyISAM.
3) Выбираем каталог, в котором MySQL сервер будет хранить базы данных.
4) Количество одновременных соединений (coucurrent connections). Сильно зависит от цели установки сервера MySQL.
4а) Decision Support DSS (OLAP). Небольшое количество одновременных соединений (будет установлена настройка на 20 одновременных соединений).
4б) Online Transaction Processing (OLTP). Больше подходит для популярных веб-серверов и клиент-серверного ПО в виде толстых клиентов - будет установлена настройка на 500 одновременных соединений.
4в) Manual. Вы сами можете выбрать в поле "Concurrent connections" значение, которое нужно установить.
Выбирайте аккуратно - если сервер готов принять больше соединений одновременно - то он будет больше кушать памяти, пуская большое количество ПО к себе. Если соединений не хватит - сервер ответит отказом очередному клиенту на соединение на время занятости. Что Вам важнее - тормоза при превышении расчетной нагрузки из-за активного своппинга или просто "откидывание" клиентов - решайте сами. Старайтесь прикинуть реальную нагрузку, которую может получить этот сервер.
5) Сетевая настройка.
5а) Enable TCP/IP Networking. Если поставить галочку - сервер будет доступен по TCP/IP. Крайне рекомендуется оставить этот пункт даже в том случае, если все ПО, использующее MySQL, находится на этом же сервере - какие-то клиенты могут не понимать ничего, кроме TCP/IP.
5б) Port number. По-умолчанию 3306. Лучше оставить по-умолчанию, иначе придется у всего ПО и сайтов исправлять настройки и указывать новый порт. Какой-то софт может банально не уметь ломиться не по стандартному порту.
5в) Add firewall exception for this port. Лучше включить, даже если брендмауер выключен - на будущее, если вдруг его включите. Эта опция добавляет автоматически исключение в файервол Windows для того, чтобы этот порт был открыт.
5г) Enable strict mode. Рекомендуют этот параметр оставить включенным. Оставляем.
6) Далее - выбор кодировки по-умолчанию.
6а) Standard character set. Установит Latin1 в качестве кодировки по-умолчанию.
6б) Best support for Multilingualism. Поставить UTF-8 в качетсве кодировки по-умолчанию. В данный момент большинство софта и сайтов пишутся под UTF-8, потому это рекомендованное значение для России.
6в) Manual selected character set. Если Вы хотите указать кодировку самостоятельно (например, KOI8-R или CP1251).
7) Сервис.
7а) Install as Windows service. Установить как сервис (службу) в Windows. Рекомендую так и делать - сервис запускает сразу после старта ОС, еще до логина любого пользователя. Для Windows Server - галочку обязательно установить!
7б) Launch MySQL Server automatically. Запускать автоматически. Ну а зачем нам, интересно, иначе его как службу ставить? Оставляем галочку установленной.
7в) Include BIN directory in Windows PATH. Поставив эту галочку, Вы проиструктируете инсталлер автоматически добавить путь до бинарников MySQL в переменную окружения PATH. Рекомендую галочку установить.
8) Безопасность.
8а) Пароль root. Здесь введите рутовый пароль (аналог sa в MS SQL).
8б) Enable root access from remote machines. Если поставить галочку - то можно будет зайти на сервер под root по сети - не только с этой машины локально. Например, если Вы устанавливаете к себе на другую машину (не на сервер) утилиту по управлению MySQL серверами, то эту галочку придется поставить. Если же Вы управляете MySQL этого сервера только с самого сервера - то снимаем галочку (так безопаснее).
8в) Create an anonymous account. Создать ли анонимного пользователя. По соображениям безопасности эту опцию очень рекомендовано выключить (по многим причинам - сейчас здесь описывать не буду).
9) Все, видим окно с кнопкой "Execute". Нажимаем на нее.
ПроверкаВ меню "Пуск" у нас появился пункт "MySQL Command Line Client". Нажимаем на него и вводим root-пароль (надеюсь, Вы не забыли его).
Перед нам возникает знакомая текстовая консоль управления MySQL сервером (знакомая для тех, кто MySQL админит в Unix, конечно).
Проверям:
> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
3 rows in set (0.00 sec)
MySQL работает :)
Графический интерфейсПользователям Windows близок и роден графический интерфейс (GUI). Не чужд, правда, он и пользователям *nix-систем, но сервера мы привыкли все-же видеть в виде тексовых консолей (core-установка Windows Server 2008, кстати, аналогом текстовой консоли Unix не является - это всего-лишь GUI с натянутым CMD, по большому счету).
Несмотря на то, что многие администраторы MySQL прекрасно рулят этим сервером из командной строки, а если даже нет - то через phpmyadmin, в Windows Вам, вероятно, захочется увидеть некое подобие SQL Server Management Studio или Enterprise Manager.
MySQL разработали такую утилиту и предоставляют ее для пользователей Windows (и не только). Конечно, бесплатно.
Итак, открываем сайт www.mysql.com, идем в раздел "Downloads" и тыкам на ссылку "Download" под надписью "MySQL Workbench (GUI Tool)". На открывшейся странице выбираем необходимый нам вариант (я рекомендую MSI) и загружаем.
Да, оно доступно только в виде x86-32 (32-бит), однако работоспособность этой утилиты проверена на Windows Server 2008 R2 (как известно - нативно 64-битной) - все работает.
УстановкаДля установки этой утилиты требуется .NET Framework 4 Client Profile. Не пугайтесь - это не весь .Net Framework 4 - полностью это чудо ставить не придется. Обходится утилита Framework 3.5
Скачать и установить Client Profile можно отсюда:
http://www.microsoft.com/downloads/ru-ru/details.aspx?FamilyID=e5ad0459-cbcc-4b4f-97b6-fb17111cf544
После устнаовки Client Profile - запускаем установку Workbench. Установка максимально проста - пара вопросов, один из которых - куда, собственно, ставиться, и мы имеем рабочую утилиты для управления MySQL.
Первые шагиЕсли Вы работали с Enterprise Manager в SQL Server 2000 или SQL Management Studio в SQL Server 2005/2008+, то суть работы для Вас будет более-менее ясной.
После запуска у Вас будет виден сразу подсоединенный локальный MySQL сервер. Вход осуществляется под пользователем root. Естественно, Вам необходимо знать пароль этого пользователя (аналог sa в MS SQL).
Вы видите три больших области - слева направо:
а) Управление базами данных сервера
б) EER-моделирование
в) Администрирование (запуск/останов/состояние, пользователи и т.д.)
Для подсоединения к необходимой консоли - кликните на названии сервера в этой консоле и введите пароль пользоватя, под которым Вы заходите.
Сноска. В консоли управления базами данных Вы не увидите системных баз. Они скрыты. Будут видны только пользовательские базы данных.
В верхней части Вы можете видеть панель с табами. На них будут отображаться открытые окна (т.е. можно открыть несколько окон за раз, например, работать с несколькими консолями баз данных с разных серверов).
Для подключения к другим (не локальным, например) серверам баз данных Вам необходимо создавать "подключения" через "New connection" для консоли управления БД или "New server instance" для консоли администрирования.
Управлять существующими подключениями (например, поменять адрес, порт, пользователя и т.д.) можно через "Manage Connections" или "Manage server instances" соответственно.
АдминистрированиеПокликав на нужный сервер (начнем, конечно, с "localhost") в 3й панели на "домашней" вкладке и введя пароль для root мы попадаем в панель администрирования сервера.
На странице "Server Status" мы видим текущий статус сервера: потребляемые ресурсы, статус (хотел сказать "демона"...) службы, текущие подключения к серверу и т.д.
Startup/Shutdown: Соответственно, на этой старнице мы можем остановить сервер или снова его запустить.
Status and system variables: Тут мы можем посмотреть во внутренности состояния сервера в реал-тайме.
Server logs: Если логи сконфигурированы для отображения в таблице (table), то они будут видны здесь. Если же логи ведутся в файл - фигу, консоль отображать их не будет.
Options file: Не залазя в дебри файла my.cnf или его заменяющего на этой установке MySQL, мы можем легко и просто рулить опциями прямо отсюда - из графического интерфейса. Для записи изменения служит кнопка "Apply" внизу справа. Не забывайте, что сервер требует перезагрузки (MySQL-сервер, а не Windows Server) для применения изменений.
Users and privileges: Отсюда мы рулим пользователями данного сервера. Отсюда мы их создаем, разрешаем работать с той или иной базой данных, создавать других пользователей, удаляем и назначаем пароли.
Data export and restore: По сути - это инструмент резервного копирования или переноса баз данных. Отсюда мы можем выгрузить или загрузить выбранные базы данных в файл.
Управление базами данных (SQL Editor)Выбрав нужным нам сервер в самой левой панели мы попадаем в консоль управления базами данных.
Отсюда мы можем создавать, изменять и удалять базы данных, таблицы, записи в таблицах, хранимые процедуры и представления.
Чем-то напоминает SQL Management Studio от Microsoft, не так ли?
Базы данных в Workbench называются Schema. Изначально список схем пуст - системые базы данных не показываются администраторам графической утилиты (в отличие от текстовой консоли управления, где системными базами можно рулить так-же, как и обычными... что бывает чревато неприятностями, конечно).
Для создания базы данных служит пункт "Add schema". Нажав на него, Вы попадете в окно создания базы, где будут заданы стандартные вопросы - имя базы, collation (сравнение), кодировка.
После создания, схема появится в списке схем. Для ее выбора - дважды кликните на ней. Треугольник слева от названия позволяет "раскрыть" схему, увидев ее содержание.
Пункт "Add table" служит для добавления таблицы. При этом схема уже должна быть выбрана. Кликнув на него перед Вами откроется окно создания таблицы. Оно значительно более наполнено опциями, чем окно создания базы. Здесь Вам предлагается задать имя таблицы, ее структуру, ключевые поля, индексы и т.д.
Через "Add view" мы, соответственно, можем создать представление таблицы.
"Add routine" предоставлят нам возможность создать хранимую процедуру для данной базы данных.
Все элементы базы видны после того, как нажать на треугольник слева от ее названия с списке. Отсюда мы можем видеть таблицы, представления и хранимые процедуры (Tables, View и Routines соответственно). По правому клику на элементе можно получить список действий, которые можно осуществлять с этим элементом. Например, у таблицы можно выбрать для просмотра первые 1000 записей (Select rows - Limit 1000), Вызвать редактор таблицы для изменения данных в ней (Edit table rows), Скопировать в буфер обмена те или иные данные таблицы (Copy to clipboard), Открыть те или иные данные во внутреннем SQL-редакторе (Send to SQL Editor), ну или создать новую таблицу, изменить эту или удалить.
Изучаем, пользуемсяЭтот топик не предназначен быть мануалом по Workbench - здесь всего-лишь написан ответ на вопрос "А есть ли GUI для MySQL и что это за утилита". Работа с Workbench довольно проста и интуитивно понятна (для того, кто знаком с техническим английским и MySQL в целом, конечно). Поэтому - эстафету я Вам передаю. Утилита, как я уже сказал, проста в освоении.
Ответы на вопросы для самопроверки пишите в комментариях,
мы проверим, или же задавайте свой вопрос по данной теме.
Комментарии
Оставить комментарий
Базы данных - MySql (Maria DB)
Термины: Базы данных - MySql (Maria DB)