Как установить MySQL 5.7 на Amazon ec2

Как я могу установить MySQL 5.7 в облаке на Amazon EC2?

Большинство экземпляров машины Amazon (AMI), которые я вижу либо не имеют никакого сервера MySQL, либо имеют более старую версию, такую ​​как MySQL Server 5.5

Я хочу использовать последние и самые большие.

Ответ 1

Это относительно быстрая настройка MySQL 5.7.14 на Red Hat Enterprise Linux версии 7 (RHEL7).

Я не аффилирован с AWS; Мне просто нравится пользоваться их услугами.

Убедитесь, что у вас есть учетная запись AWS EC2. Обратите внимание, что хотя Amazon требует наличия кредитной карты в файле, в течение первого года не будет никаких обвинений, если вы придерживаетесь условий Free-level > . Как правило, это означает, что один микро-экземпляр (1 ГБ RAM) сервер работает 24/7.

Запуск экземпляра EC2 RHEL

Шаг 1: На AWS EC2 нажмите "Запустить экземпляр" и выберите "Red Hat Enterprise Linux 7.2 (HVM), тип тома SSD - ami-775e4f16", как показано на рисунке ниже. Обратите внимание, что версии доступных или продвинутых AMI (Amazon Machine Instance) со временем будут вращаться, и это на момент написания этой статьи. Но номер AMI показан в тексте выше.

введите описание изображения здесь

Обычно я выбрал Amazon Linux AMI в качестве своего дистрибутива. Я не делаю этого больше, поскольку это их собственный hodge-podge, и, естественно, существует неопределенность в выборе менеджера пакетов и, следовательно, файлов. Итак, я придерживаюсь RHEL.

На экране "Выбрать тип экземпляра" выберите тип экземпляра подходящего типа, как показано ниже:

введите описание изображения здесь

Нажмите "Далее". На следующем экране "Сведения" нажмите "Далее", чтобы принять значения по умолчанию. На экране хранилища измените размер до 16 ГБ и нажмите "Далее". Затем "Далее" снова в теге. Далее идет экран "Настроить группу безопасности", изображенный ниже:

введите описание изображения здесь

Принять переключатель "🔘 создать новую группу безопасности" на данный момент. Примечание. Порт SSH 22 открыт для всех (Anywhere) IP-адресов с 0.0.0.0/0 CIDR. Другие варианты включают обнаружение "Мой IP" (как в вашем) или "Пользовательский". Будьте уверены, что при следующем доступе к экрану будет заблокирован на основе ключей безопасности, которые мы установим. Существует кнопка для добавления правила в открытых портах для добавления таких портов, как MySQL 3306 или HTTP 80. Но пока мы это пропустим. Обратите внимание на имя группы безопасности. Заполните его или примите значение по умолчанию. Не так важно, чтобы это было правильно, так как группа безопасности может быть изменена позже для исполняемого экземпляра. Нажмите "Обзор" и "Запуск".

Затем нажмите "Запустить" (не бойтесь, он еще не запускается). Как показано на следующем экране:

введите описание изображения здесь

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

Когда вы наконец-то нажмете "Запуск экземпляров" на этом же экране, запуск происходит по отношению к этой паре ключей (либо только что созданной, либо уже существующей). Обратите внимание: генерация пары ключей может быть задачей, которую вы выполняете только один раз в год. Повторное использование пары ключей снова и снова, вплоть до вас.

После запуска экземпляра у вас есть примерно пять минут, прежде чем он появится вживую. В элементе меню "Экземпляры" вы знаете, что экземпляр находится в режиме реального времени, когда состояние экземпляра читает "running", а "Status Checks" читает "2/2 прошло":

введите описание изображения здесь

Помните загруженный файл .pem? Ну, всего один раз вам нужно создать файл .ppk из этого для PuTTY, клиентской программы SSH, которая будет связываться с криптозащитой вашего исполняемого экземпляра. Для этого мы используем инструмент puttygen, который работает в согласии с PuTTY. Итак, мы запускаем puttygen, загружаем .pem загруженные минуты до этого и генерируем файл .ppk с ключевой фразой ключа, такой как "I и love% ancHovies2_fjdi8Ha". Ниже приведена картина puttygen:

введите описание изображения здесь

И страница AWS EC2 под названием Подключение к вашему Linux-экземпляру из Windows с помощью PuTTY, Шагами являются Закрытый ключ File/Load. Измените фильтр на все файлы (.). Найдите файл .pem. Нажмите "Открыть", затем "Хорошо". Введите парольную фразу. Нажмите "сохранить закрытый ключ" и сохраните его в той же папке, что и файл .ppk, рядом со своим файлом .pem. Как уже упоминалось, это не то, что вы можете делать, но каждый год.

Теперь запустите PuTTY, клиент SSH. Используйте имя сеанса/хоста как-то вроде

[email protected]

Таким образом, в основном [email protected] объединяется с общедоступным DNS-именем, которое отображается в разделе "Экземпляры на панели управления EC2". Что касается указания файла PuTTY .ppk, он будет выглядеть следующим образом: файл .ppk, выбранный рядом с кнопкой "Обзор":

введите описание изображения здесь

Вернитесь к предыдущей иерархической иерархии сеанса, показанной ниже, укажите это имя профиля в разделе "Сохраненные сеансы" и нажмите "Сохранить". В дальнейшем, когда вы загружаете PuTTY, вы просто загружаете сеанс по имени:

введите здесь описание изображения

Не забывайте, что почти все, что вы здесь делаете, сохраняет ссылку .ppk в дружественный именованный профиль. И вам может потребоваться изменить имя хоста (конечно, когда вы сохраняете изображение экземпляра на EC2 и возвращаетесь с новым IP-адресом экземпляра при последующем запуске).

Хорошо, это непросто. Но это то, что есть.

Когда вы нажмете "Открыть", он попытается подключиться к вашему экземпляру RHEL. Нажмите "Да" в предупреждении подписи. Введите предварительно сохраненную .ppk ключевую фразу, и вы должны сидеть в командной строке Linux.

Установка MySQL (поставлю эти заметки на GitHub)

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

URL01: Загрузить репозиторий MySQL Yum

URL02: Глава 1 Установка MySQL в Linux с использованием репозитория MySQL Yum

Теперь вы загружаете и запускаете MySQL 5.7.14 на EC2 с базой данных и настройкой пользователя. Ваши серверы должны быть отображены. Вот этот ответ здесь для создания изображений (AMI). Резервное копирование данных. См. Документацию EC2, например Рекомендации для Amazon EC2.

Назад к безопасности: лучшие практики, безусловно, предлагают не открывать ваш db для прямого подключения через группы безопасности для порта 3306. Как вы решите придерживаться этого - ваш выбор, например, с PHP, Java или другим API-интерфейсом программирования. Обратите внимание, что различные клиентские программы db могут соединяться через туннели SSH, такие как MySQL Workbench. Кроме того, существуют различные библиотеки разработки с туннелями SSH, но их не так просто разрабатывать (в основном из-за сложных цепочек ключей и отсутствия обширных опытов разработчиков). Например, есть один для С# здесь.

Кроме того, у AWS есть RDS и другая база данных для менее практичной работы и для вашего собственного, как и выше. Причина, по которой многие разработчики нацелены на EC2, связана с тем, что у вас есть полный сервер для других программных инициатив.

Если вы модифицируете группы безопасности, как упоминалось ранее, рассмотрите возможность использования диапазонов IP на основе записей CIDR и будьте осторожны перед чрезмерной экспозицией ваших хранилищ данных. Или за предоставление. Практически те же самые лучшие методы, что и для работы на месте.

Относительно этого раздела MySQL мои заметки GitHub для приведенных выше изображений расположены здесь.

Ответ 2

У меня была такая же проблема, но я не хотел использовать Red Hat или любую другую ОС, чем Amazon Linux AMI. Итак, вот процесс установки MySQL 5.7 и обновления старой версии.

Короткий путь (без скриншотов)

wget https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm
yum localinstall mysql57-community-release-el6-11.noarch.rpm
yum remove mysql55 mysql55-common mysql55-libs mysql55-server
yum install mysql-community-server
service mysqld restart
mysql_upgrade -p

Длинный путь (со снимками экрана)

Прежде всего, для проверки можно проверить текущую версию. введите описание изображения здесь

Затем вы должны загрузить репо для EL6 11

wget https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm

введите описание изображения здесь

Затем сделайте локальную установку:

yum localinstall mysql57-community-release-el6-11.noarch.rpm

введите описание изображения здесь

Это, вероятно, ключ к успешной установке. Вы должны удалить предыдущие пакеты, относящиеся к MySQL 5.5

yum remove mysql55 mysql55-common mysql55-libs mysql55-server

введите описание изображения здесь

Наконец, вы можете установить MySQL 5.7

yum install mysql-community-server

введите описание изображения здесь

Перезагрузите сервер MySQL и обновите свою базу данных

service mysqld restart
mysql_upgrade -p

введите описание изображения здесь

Вы можете проверить свою установку путем аутентификации в MySQL

введите описание изображения здесь

Ответ 3

sudo yum install mysql57-server