Baza danych MySQL i baza danych PostgreSQL to dwa najlepsze systemy zarządzania relacyjnymi bazami danych typu open source (RDBMS), z których każdy zapewnia wyjątkowe korzyści. W poprzednim artykule, „Migracja MySQL do PostgreSQL na AWS RDS, część 1”, omówiliśmy niektóre zalety PostgreSQL nad MySQL i wprowadziliśmy usługę migracji bazy danych AWS (DMS), aby przeprowadzić migrację z MySQL do PostgreSQL. Zaczęliśmy od stworzenia użytkownika AWS IAM dla DMS. W tym samouczku kontynuacyjnym stworzymy instancje baz danych MySQL i PostgreSQL na RDS i połączymy się z nimi. Ten samouczek zawiera następujące sekcje:
- Tworzenie instancji AWS RDS dla bazy danych MySQL i bazy danych PostgreSQL
- Konfigurowanie łączności między bazami danych a DMS
- Łączenie z bazą danych MySQL
- Łączenie z bazą danych PostgreSQL
- Wniosek
Tworzenie instancji AWS RDS dla bazy danych MySQL i bazy danych PostgreSQL
Utwórz źródłową i docelową bazę danych, odpowiednio bazę danych MySQL i bazę danych PostgreSQL, na AWS RDS. Korzystanie z RDS zostało omówione we wcześniejszym samouczku. Jako źródłową bazę danych MySQL wybierz MySQL, jak pokazano na rysunku 1.
Rysunek 1: Wybór MySQL w RDS
Wybierz produkcję lub Programowanie/testowanie opcję wdrożenia, jak pokazano na rysunku 2. Kliknij Następny krok.
Rysunek 2: Wybór typu wdrożenia
Określ szczegóły bazy danych , z których większość ma odpowiednie ustawienia domyślne. Wybierz klasę instancji bazy danych (db.t2.micro lub db.t1.micro). Podaj identyfikator instancji DB (MYSQLDB), który nie może być słowem zastrzeżonym bazy danych MySQL, takim jak „MYSQL”. Podaj nazwę użytkownika głównego, hasło główne (musi składać się z co najmniej 8 znaków) i kliknij Następny krok. Następnie skonfiguruj Ustawienia zaawansowane . W przypadku VPC wybierz Utwórz nowe VPC . W przypadku grupy podsieci wybierz Utwórz nową grupę podsieci DB . Dla Publicznie dostępnych , wybierz Tak . Dla Strefy dostępności , wybierz Brak preferencji . Dla grupy bezpieczeństwa VPC wybierz opcję Utwórz nową grupę zabezpieczeń. Określ opcje bazy danych, w tym nazwę bazy danych (MYSQLDB), która nie może być słowem zastrzeżonym, takim jak „MYSQL”, oraz port bazy danych (3306). Zachowaj domyślne ustawienia kopii zapasowej; automatyczne kopie zapasowe są wymagane, aby używać MySQL na RDS jako źródła DMS. Zachowaj domyślne ustawienia monitorowania i konserwacji i kliknij Uruchom instancję bazy danych . Baza danych MySQL na RDS zostaje utworzona.
W przypadku bazy danych PostgreSQL wybierz silnik bazy danych RDS jako PostgreSQL , jak pokazano na rysunku 3.
Rysunek 3: Wybór silnika bazy danych PostgreSQL
Wybierz typ wdrożenia Dev/Test i kliknij Next Step. Określ szczegóły bazy danych; większość ustawień domyślnych jest odpowiednia. Określ identyfikator instancji DB (postgresdb), nazwę użytkownika głównego, hasło główne i kliknij przycisk Następny krok. Następnie skonfiguruj ustawienia zaawansowane, w tym opcje bazy danych dla nazwy bazy danych (postgresdb), portu bazy danych (5432) i kliknij opcję Uruchom instancję bazy danych. Baza danych PostgreSQL zostaje uruchomiona na RDS. Bazę danych MySQL i bazę danych PostgreSQL w RDS pokazano na rysunku 4.
Rysunek 4: Baza danych MySQL i PostgreSQL na RDS
Konfigurowanie łączności między bazami danych a DMS
Domyślnie usługa migracji bazy danych (DMS) nie może łączyć się z wystąpieniami bazy danych RDS. Musimy dodać łączność do grup zabezpieczeń dla wystąpienia RDS DB. Kliknij Grupę bezpieczeństwa link w Szczegółach konfiguracji dla instancji MySQL RDS DB, jak pokazano na rysunku 5.
Rysunek 5: Grupa bezpieczeństwa dla MySQL na RDS
W konsoli grupy zabezpieczeń wybierz kartę Przychodzące i kliknij Edytuj (patrz Rysunek 6).
Rysunek 6: Grupa bezpieczeństwa>Edytuj
W Edytuj reguły ruchu przychodzącego , wybierz Typ jako Cały ruch , Protokół jako Wszyscy , Zakres portów jako 0-65535, Źródło jako Wszędzie i kliknij Zapisz , jak pokazano na rysunku 7.
Rysunek 7: Konfigurowanie reguł ruchu przychodzącego, aby zezwolić na cały ruch
Reguły ruchu przychodzącego są konfigurowane tak, aby zezwalały na cały ruch, jak pokazano na rysunku 8.
Rysunek 8: Przychodzący>Cały ruch
Wychodzące Po skonfigurowaniu reguł ruchu przychodzącego reguły powinny również zostać ustawione na Cały ruch, jak pokazano na Rysunku 9.
Rysunek 9: Wychodzące>Cały ruch
Podobnie, kliknij link Security Group dla instancji PostgreSQL RDS DB, jak pokazano na rysunku 10, i skonfiguruj reguły Inbound/Outbound, aby zezwolić na cały ruch.
Rysunek 10: Konfigurowanie grupy bezpieczeństwa dla PostgreSQL, aby zezwolić na cały ruch
Łączenie z bazą danych MySQL
Podczas migracji instancji bazy danych MySQL na RDS można migrować całą bazę danych, która obejmuje wszystkie schematy i tabele, w tym schematy i tabele systemowe. W tej sekcji połączymy się z bazą danych MySQL na RDS i przyznamy pewne uprawnienia użytkownika do dvohra użytkownik. Aby połączyć się z bazą danych MySQL, uzyskaj bazę danych Punkt końcowy z pulpitu nawigacyjnego RDS (patrz Rysunek 11).
Rysunek 11: Uzyskiwanie punktu końcowego
W powłoce poleceń uruchom następujące polecenie MySQL z katalogu bin bazy danych MySQL (C:Program FilesMySQLMySQL Server 5.7bin). Rozpocznie to sesję MySQL CLI.
mysql -h mysqldb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com -u dvohra -p
Podaj hasło w Wprowadź hasło: podpowiedź. SQL> zostanie wyświetlony wiersz poleceń, jak pokazano na rysunku 12.
Rysunek 12: Łączenie się z bazą danych MySQL za pomocą CLI
Następnie przyznaj uprawnienia do instancji bazy danych MySQL w RDS użytkownikowi DMS (dvohra).
GRANT ALTER, CREATE, DROP, INDEX, INSERT, UPDATE, DELETE, SELECT ON *.* TO 'dvohra'@'%'; GRANT ALL PRIVILEGES ON awsdms_control.* TO 'dvohra'@'%';
Uprawnienia użytkownika zostaną ustawione, jak pokazano na rysunku 13.
Rysunek 13: Dodawanie uprawnień użytkownika
Łączenie z bazą danych PostgreSQL
Aby połączyć się z bazą danych PostgreSQL na RDS z powłoki poleceń, uzyskaj bazę danych Punkt końcowy z pulpitu nawigacyjnego RDS, jak pokazano na rysunku 14.
Rysunek 14: Uzyskiwanie punktu końcowego bazy danych PostgreSQL na RDS
Uruchom następujące polecenie, aby połączyć się z bazą danych PostgreSQL i uruchomić interfejs wiersza poleceń (CLI).
psql --host=postgresdb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com --port=5432 --username dvohra --password --dbname=postgresdb
Zostanie uruchomiony interfejs wiersza poleceń bazy danych PostgreSQL (CLI), jak pokazano na rysunku 15.
Rysunek 15: Łączenie się z bazą danych PostgreSQL na RDS za pomocą CLI
Wymień schematy z dn Komenda. Publiczny schemat zostanie wyświetlony (patrz Rysunek 16).
Rysunek 16: Schematy aukcji
Wniosek
W tym drugim z czterech samouczków dotyczących migracji instancji bazy danych MySQL na RDS do instancji bazy danych Postgres na RDS z AWS DMS, stworzyliśmy instancje dwóch baz danych na RDS i połączyliśmy się z instancjami bazy danych. W następnym samouczku stworzymy migrację DMS.