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

Migracja MySQL do PostgreSQL na AWS RDS, część 1

Baza danych MySQL i baza danych PostgreSQL są systemami zarządzania relacyjnymi bazami danych typu open source (RDBMS) na odpowiednio 2 i 4 miejscu, według DBEngines.com. Oba są zaimplementowane w C (C++ jest również używany w bazie danych MySQL) i oba zapewniają podobne funkcje, takie jak obsługa XML, indeksy pomocnicze, współbieżność, trwałość i funkcje zdefiniowane przez użytkownika. Baza danych PostgreSQL ma kilka zalet, z których niektóre są następujące:

  • Obsługuje zaawansowane typy danych, takie jak tablice wielowymiarowe i typy zdefiniowane przez użytkownika
  • Wspólne wyrażenia tabelowe (CTE) i funkcje okien są dostępne od wersji PostgreSQL 8.4, ale zostały dodane do MySQL tylko w wersji 8.0
  • Obsługuje pełne połączenia zewnętrzne
  • Obsługuje listy WARTOŚCI w celu wygenerowania „stałej tabeli”, która może być użyta w zapytaniu
  • Obsługuje zestaw funkcji zwracających generate_series
  • Obsługuje zapytania równoległe wykorzystujące wiele procesorów do szybszego odpowiadania na zapytania od wersji 9.6
  • Obsługuje zmaterializowane widoki

W przypadku migracji z MySQL do bazy danych PostgreSQL AWS, DMS (Database Migration Service) zapewnia niezawodną usługę zarządzaną bez przestojów w celu ciągłej replikacji danych. W czterech samouczkach omówimy migrację instancji bazy danych MySQL do bazy danych PostgreSQL, obydwa działające na AWS Relational Database Service (RDS). Ten samouczek zawiera następujące sekcje:

  • Ustawianie środowiska
  • Tworzenie użytkownika uprawnień do DMS

Ustawianie środowiska

Jedynym warunkiem wstępnym jest konto AWS, które można utworzyć pod tym linkiem. Utwórz główny klucz szyfrowania KMS, który będzie używany z DMS, jeśli klucz główny nie jest jeszcze dostępny. Klucz główny KMS jest tworzony z IAM>kluczy szyfrowania deska rozdzielcza. W tym samouczku użyliśmy głównego klucza szyfrowania KMS o nazwie „dbms”.

Zainstaluj bazę danych MySQL i bazę danych PostgreSQL na komputerze lokalnym, aby używać aplikacji interfejsu klienta do łączenia się z instancjami baz danych MySQL i PostgreSQL na RDS.

Tworzenie użytkownika uprawnień do DMS

DMS jest w pełni zintegrowany z kilkoma innymi usługami AWS, takimi jak RDS dla baz danych, IAM do zarządzania tożsamością i dostępem, KMS do szyfrowania danych i CloudWatch do logowania. DMS obsługuje również S3 (Simple Storage Service) jako cel migracji. W tej sekcji utworzymy użytkownika IAM, który jest używany z DMS do migracji instancji bazy danych MySQL do bazy danych PostgreSQL. Użytkownik uprawnień jest tworzony w następujący sposób:

  1. Utwórz zasady uprawnień ze wszystkimi wymaganymi uprawnieniami i oświadczeniami dotyczącymi zasad.
  2. Utwórz użytkownika uprawnień na podstawie zasad uprawnień.

Aby utworzyć zasadę uprawnień, kliknij Utwórz zasadę w panelu uprawnień, jak pokazano na rysunku 1.


Rysunek 1: Utwórz zasadę

W Zasadach tworzenia kreatora, wybierz Utwórz własną politykę , jak pokazano na rysunku 2.


Rysunek 2: Wybór opcji tworzenia własnych zasad

W Zasadach recenzowania , określ Nazwę zasady (DMS). Następnie skopiuj następujący dokument dotyczący zasad do Dokumentu dotyczącego zasad pole lub region.

{
   "Version": "2012-10-17",
   "Statement": [
      {
         "Effect": "Allow",
         "Action": "dms:*",
         "Resource": "*"
      },
      {
         "Effect": "Allow",
         "Action": "s3:*",
         "Resource": "*"
      },
      {
         "Effect": "Allow",
         "Action": "ds:*",
         "Resource": "*"
      },
      {
         "Effect": "Allow",
         "Action": "rds:*",
         "Resource": "*"
      },
      {
         "Effect": "Allow",
         "Action": "kms:*",
         "Resource": "*"
      },
      {
         "Effect": "Allow",
         "Action": "iam:*",
         "Resource": "*"
      },
      {
         "Effect": "Allow",
         "Action": "ec2:*",
         "Resource": "*"
      },
      {
         "Effect": "Allow",
         "Action": "cloudwatch:*",
         "Resource": "*"
      },
      {
         "Effect": "Allow",
         "Action": "aws-marketplace:*",
         "Resource": "*"
      },
      {
         "Effect": "Allow",
         "Action": "logs:*",
         "Resource": "*"
      }
   ]
}

Dokument zasad dodaje uprawnienia dostępu do CloudWatch w celu rejestrowania i RDS w przypadku baz danych. Kliknij Zweryfikuj zasady a jeśli komunikat brzmi „Zasady są prawidłowe”, kliknij Utwórz zasadę , jak pokazano na rysunku 3.


Rysunek 3: Utwórz zasadę

Jeśli polityka zostanie utworzona, powinien zostać wyświetlony komunikat pokazany na rysunku 4.


Rysunek 4: DMS został utworzony

Następnie dodaj użytkownika uprawnień. Wybierz Użytkownicy w panelu uprawnień i kliknij Dodaj użytkownika , jak pokazano na rysunku 5.


Rysunek 5: Dodaj użytkownika

Określ Nazwę użytkownika (dvohra). Następnie wybierz obie wymienione opcje dla Typu dostępu (patrz Rysunek 6).


Rysunek 6: Dodawanie szczegółów użytkownika

Wybierz Hasło niestandardowe opcja hasła konsoli , podaj hasło i kliknij Dalej:Uprawnienia , jak pokazano na rysunku 7.


Rysunek 7: Konfiguracja typu dostępu

Następnie ustaw uprawnienia dla użytkownika. Kliknij Załącz istniejące zasady bezpośrednio , jak pokazano na rysunku 8.


Rysunek 8: Dołącz istniejące zasady bezpośrednio

W Typie zasad filtr, wyszukaj „DMS”, czyli politykę utworzoną wcześniej. Wybierz politykę DMS, jak pokazano na rysunku 9, i kliknij Dalej.


Rysunek 9: Wybór zasad DMS

W Przeglądzie , zasady DMS powinny być wymienione jako Zasady zarządzane w Uprawnieniach streszczenie. Kliknij Utwórz użytkownika , jak pokazano na rysunku 10.


Rysunek 10: Utwórz użytkownika

Użytkownik IAM zostaje utworzony (patrz Rysunek 11).


Rysunek 11: Utworzono użytkownika uprawnień

Użytkownik uprawnień zostanie wymieniony w sekcji IAM>Użytkownicy pulpit nawigacyjny, jak pokazano na rysunku 12.


Rysunek 12: Użytkownik uprawnień

Aby zalogować się jako utworzony użytkownik uprawnień, kliknij link użytkownika, wybierz Poświadczenia bezpieczeństwa i skopiuj link do logowania do konsoli , jak pokazano na rysunku 13.


Rysunek 13: Link do logowania do konsoli

Zaloguj się jako użytkownik uprawnień utworzony za pomocą linku logowania do konsoli w kolejnych sekcjach.

Wniosek

W tym pierwszym z czterech samouczków dotyczących migracji instancji bazy danych MySQL w RDS do instancji bazy danych Postgres w RDS utworzyliśmy użytkownika uprawnień do przeprowadzenia migracji.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. GROUP_CONCAT z limitem

  2. Błąd krytyczny Wordpress:Nieprzechwycony błąd:Wywołanie niezdefiniowanej funkcji mysql_connect() w /wp-includes/wp-db.php:1570

  3. Jak ponownie zsynchronizować bazę danych Mysql, jeśli Master i Slave mają inną bazę danych w przypadku replikacji Mysql?

  4. Podział ciągu MySQL

  5. Odniesienie:Czym jest doskonały przykładowy kod przy użyciu rozszerzenia MySQL?