Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak zainstalować MySQL 5.7 na Amazon ec2?

To jest stosunkowo szybka konfiguracja MySQL 5.7.14 w systemie Red Hat Enterprise Linux w wersji 7 (RHEL7).

Nie jestem powiązany z AWS; Po prostu lubię korzystać z ich usług.

Upewnij się, że masz konto AWS EC2. Pamiętaj, że chociaż Amazon wymaga zapisania karty kredytowej, nie poniesiesz żadnych opłat za pierwszy rok, jeśli zastosujesz się do ich Warstwa bezpłatna warunki. Zazwyczaj oznacza to pojedynczy mikroinstancyjny serwer (1 Gb RAM) działający 24/7.

Uruchomienie instancji EC2 RHEL

Krok 1: W AWS EC2 kliknij „Uruchom instancję” i wybierz „Red Hat Enterprise Linux 7.2 (HVM), Typ woluminu SSD — ami-775e4f16”, jak pokazano na poniższym obrazku. Zwróć uwagę, że wersje dostępnych lub promowanych AMI (Amazon Machine Instance) będą się zmieniać w czasie i to jest w chwili pisania tego tekstu. Ale numer AMI jest pokazany powyżej w tekście.

Zwykle wybrałem Amazon Linux AMI jako moją wybraną dystrybucję. Już tego nie robię, ponieważ jest to ich własna mieszanina i naturalnie nie ma pewności, który menedżer pakietów wybrać, a zatem i pliki. Więc trzymam się teraz RHEL.

Na ekranie „Wybierz typ instancji” wybierz odpowiedni typ instancji na poziomie bezpłatnym, jak pokazano poniżej:

Kliknij Następny. Na następnym ekranie Szczegóły kliknij „Dalej”, aby zaakceptować ustawienia domyślne. Na ekranie przechowywania zmień rozmiar na 16 GB i kliknij „Dalej”. Następnie ponownie „Dalej” w informacjach o tagu. Następnie pojawia się ekran „Konfiguruj grupę zabezpieczeń” przedstawiony poniżej:

Na razie zaakceptuj przycisk opcji „🔘 utwórz nową grupę bezpieczeństwa”. Uwaga:port SSH 22 jest otwarty dla wszystkich (Wszędzie) adresy IP z 0.0.0.0/0 CIDR . Inne opcje obejmują wykrywanie „Mój adres IP” (tak jak w twoim) lub „Niestandardowy”. Zapewniamy, że przy następnym ekranie dostęp do ekranu zostanie zablokowany na podstawie skonfigurowanych przez nas kluczy bezpieczeństwa. Pod otwartymi portami znajduje się przycisk Add Rule, aby dodać takie porty jak MySQL 3306 lub HTTP 80. Ale na razie to pominiemy. Zanotuj nazwę grupy zabezpieczeń. Wypełnij lub zaakceptuj na razie domyślne. Nie jest to krytyczne, ponieważ grupę bezpieczeństwa można później zmienić dla działającej instancji . Kliknij Sprawdź i uruchom.

Następnie kliknij „Uruchom” (nie bój się, jeszcze się nie uruchomi). Jak przedstawia następny ekran:

Zauważ, że ponieważ mam już wygenerowane kilka par kluczy, domyślnie jest to „Wybierz istniejącą parę kluczy” w pierwszym menu rozwijanym. W przeciwnym razie „Utwórz nową parę kluczy” z podaną nazwą przypomnienia i przejdź do „Pobierz parę kluczy”. W tym momencie masz parę kluczy jako .pem plik. Potraktuj to z najwyższym bezpieczeństwem, przechowując go w miejscu, w którym go nie zgubisz. Najlepiej w obszarze chronionym hasłem, takim jak katalog użytkownika systemu operacyjnego.

Kiedy w końcu klikniesz „Uruchom instancje” na tym samym ekranie, uruchomienie nastąpi w odniesieniu do tej pary kluczy (właśnie utworzonej lub istniejącej). Pamiętaj, że generowanie pary kluczy może być zadaniem, które wykonujesz tylko raz w roku. Wielokrotne używanie pary kluczy, zależy od Ciebie.

Po uruchomieniu instancji masz około pięciu minut, zanim zostanie uruchomiona. Pod pozycją menu Instancje po lewej stronie wiesz, że instancja jest aktywna, gdy stan instancji wskazuje „uruchomiony”, a sprawdzanie stanu wskazuje „2/2 przeszły”:

Zapamiętaj .pem plik, który pobrałeś? Cóż, tylko raz musisz utworzyć plik .ppk plik z tego dla PuTTY, programu klienta SSH, który będzie komunikował się z systemem Crito-Secured z uruchomioną instancją. W tym celu używamy puttygen narzędzie, które działa w harmonii z PuTTY. Więc uruchamiamy puttygen, ładujemy .pem pobrane kilka minut wcześniej i wygenerować plik .ppk plik z „hasłem klucza”, takim jak „I &love%ancHovies2_fjdi8Ha”. Poniżej znajduje się zdjęcie kitu:

Oraz strona AWS EC2 zatytułowana Łączenie z instancją Linux z systemu Windows za pomocą PuTTY . Kroki to Plik / Załaduj klucz prywatny. Zmień filtr na Wszystkie pliki (. ). Znajdź .pem plik. Kliknij „Otwórz”, a następnie „Ok”. Wpisz hasło. Kliknij "zapisz klucz prywatny" i zapisz go w tym samym folderze co .ppk plik obok twojego .pem plik. Jak wspomniano, nie jest to coś, co możesz robić, ale co roku.

Teraz uruchom PuTTY, klienta SSH. Użyj nazwy sesji / hosta jako czegoś podobnego

[email protected]

Tak więc zasadniczo jest to [email protected] połączona z nazwą publicznego DNS, która jest widoczna w obszarze Instancje w panelu sterowania EC2. Jeśli chodzi o określenie PuTTY .ppk plik będzie wyglądał jak poniżej, z .ppk plik wybrany obok przycisku Przeglądaj:

Wróć do górnej lewej hierarchii sesji pokazanej poniżej, nadaj temu profilowi ​​nazwę w sekcji Zapisane sesje i naciśnij „Zapisz”. Odtąd po załadowaniu PuTTY wystarczy załadować sesję według nazwy:

Nie zapominaj, że prawie wszystko, co tutaj robisz, to zapisywanie pliku .ppk odwołanie do przyjaznego nazwanego profilu. Czasami może zajść potrzeba zmiany nazwy hosta (oczywiście, gdy zapiszesz obraz instancji w EC2 i wrócisz z nowym adresem IP instancji przy kolejnym uruchomieniu).

Ok, to nie jest łatwe. Ale tak właśnie jest.

Kiedy klikniesz Otwórz, spróbuje połączyć się z Twoją instancją RHEL. Naciśnij Tak w ostrzeżeniu o podpisie. Wpisz wcześniej zapisany plik .ppk Kluczowe hasło i powinieneś siedzieć przy znaku zachęty Linuksa.

Instalacja MySQL (umieszczę te notatki na GitHub)

URL01:Pobierz repozytorium MySQL Yum

URL02:Rozdział 1 Instalacja MySQL w systemie Linux przy użyciu repozytorium MySQL Yum

Masz teraz załadowany i uruchomiony MySQL 5.7.14 na EC2 z bazą danych i konfiguracją użytkownika. Twoje serwery muszą być zobrazowane. Zobacz tę odpowiedź tutaj mojego do tworzenia obrazów (AMI). Utwórz kopię zapasową swoich danych. Zobacz dokumentację EC2, taką jak Najlepsze praktyki dla Amazon EC2 .

Wracając do bezpieczeństwa:najlepsze praktyki z pewnością sugerują, aby nie otwierać bazy danych w celu bezpośrednich połączeń przez grupy bezpieczeństwa dla portu 3306. To, jak zdecydujesz się tego przestrzegać, należy do ciebie, na przykład w przypadku PHP, Java lub innego programowania API. Zauważ, że różne programy klienckie db mogą łączyć się przez tunele SSH, takie jak MySQL Workbench. Ponadto istnieją różne biblioteki programistyczne z tunelami SSH, ale nie jest łatwo je rozwijać (głównie ze względu na trudne łańcuchy kluczy i brak dużego doświadczenia programistów). Na przykład jest jeden dla C# tutaj .

Ponadto AWS oferuje RDS i inne bazy danych, które zapewniają mniej praktycznego i samodzielnego rozwijania, jak powyżej. Powodem, dla którego wielu programistów wybiera EC2 jest fakt, że masz pełnowartościowy serwer do innych inicjatyw programistycznych.

Jeśli zmodyfikujesz grupy zabezpieczeń, jak wspomniano wcześniej, rozważ użycie zakresów adresów IP opartych na wpisach CIDR i zachowaj ostrożność przed nadmiernym ujawnieniem swoich magazynów danych. Albo nadużycie. Prawie takie same najlepsze praktyki, jak w przypadku pracy w siedzibie.

Jeśli chodzi o tę sekcję MySQL, moje notatki GitHub dla kilku powyższych zdjęć znajdują się tutaj .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ostrzeżenie:mysql_num_rows() oczekuje, że parametr 1 będzie zasobem, podana wartość logiczna

  2. Błąd MySQL:mysql_fetch_assoc() oczekuje, że parametr 1 będzie zasobem

  3. trzeba zwrócić dwa zestawy danych z dwoma różnymi klauzulami where

  4. jak zapisać zawartość ckeditor w bazie mysql

  5. Wiele klauzul OR w MySQL