Wprowadzenie DevOps w organizacjach zmieniło proces rozwoju, a także wprowadziło nowe wyzwania. Ponadto programiści i zespoły DevOps, wraz z własnymi wybranymi językami programowania, mają również swoje ulubione systemy baz danych.
Cykl życia produktu jest z roku na rok coraz krótszy, więc programiści chcą mieć możliwość szybkiego rozwoju przy użyciu technologii, które znają najlepiej.
Posiadanie wielu zapleczy baz danych RDBMS oznacza, że Twoja organizacja stanie się bardziej elastyczna po stronie programistycznej, ale także narzuci dodatkową wiedzę zespołom operacyjnym.
Rozszerzenie infrastruktury z jednej do wielu baz danych oznacza, że musisz je także monitorować, zarządzać i skalować.
Ponieważ każdy backend pamięci masowej wyróżnia się w różnych przypadkach użycia, oznacza to również, że musisz wymyślić na nowo koło dla każdego z nich.
Znajomość podobieństw i kluczowych różnic pomoże Ci zanurzyć się w różnych smakach RDBMS.
W tym artykule omówimy następujące punkty:
- Krótkie wprowadzenie do platformy
- Oracle, MSSQL, MySQL, PostgreSQL
- Obsługa platform
- Proces instalacji
- Dostęp do bazy danych
- Proces tworzenia kopii zapasowej
- Kontrolowanie wykonywania zapytań
- Bezpieczeństwo
- Opcje replikacji
- Wsparcie społeczności
Krótkie wprowadzenie do platformy
PostgreSQL jest przez wielu uznawany za najbardziej zaawansowaną na świecie bazę danych typu open source. Jest to system bazodanowy w pełni open source wydany na własnej licencji PostgreSQL, porównywalnej z licencjami MIT lub BSD. Społeczność PostgreSQL jest aktywna i stale ulepsza istniejące i nowe funkcje. Zgodnie z rankingiem popularności silników DB, PostgreSQL był DBMS roku 2017 i 2018. Popularność DB-Engine pokazuje, że trend nie zmienił się na przestrzeni lat.
Ciekawostką jest to, że PostgreSQL nie obsługiwał SQL aż do 1994 roku. Do odpytywania z niego danych użyto języka QUEL. Obsługa SQL została dodana później.
PostgreSQL ma wiele zaawansowanych funkcji, które oferują inne systemy zarządzania bazami danych w przedsiębiorstwie, takie jak widoki, procedury składowane, indeksy i wyzwalacze, oprócz funkcji klucza podstawowego, klucza obcego i niepodzielności.
PostgreSQL może być rozszerzany przez użytkowników poprzez modyfikację istniejących funkcji, dodawanie nowych funkcji i dystrybucję za darmo, ponieważ jest open-source. Działa na głównych platformach, takich jak UNIX, MacOS, Windows i Linux itp. Obsługuje wideo, tekst, dźwięk, obrazy, interfejsy programistyczne dla różnych języków. Lista obsługiwanych języków obejmuje C/C++, Java, Python, Perl itp.
Wyrocznia jest jednym z największych dostawców RDBMS (system zarządzania relacyjnymi bazami danych) w świecie IT. Jest znany jako baza danych Oracle, Oracle DB lub Oracle sprzedawana przez Oracle.
Baza danych Oracle jest używana przez wiele firm z branży IT do przetwarzania transakcji, analityki biznesowej, aplikacji do analizy biznesowej itp.
Oracle ma długą i bardzo ciekawą historię:
16 czerwca 1977 r. Larry Ellison, Bob Miner i Ed Oates utworzyli Software Development Laboratories (SDL) w Santa Clara w Kalifornii. W 1977 r. Oracle wzięło swoją nazwę od kryptonimu projektu CIA, a pierwszy skomercjalizowany Oracle RDBMS został pokazany światu w 1979 r.
Baza danych Oracle jest dostępna w różnych edycjach, takich jak Enterprise Edition Standard, Express Edition i Oracle Lite. Największym konkurentem dla bazy danych Oracle jest serwer Microsoft SQL.
Microsoft SQL Server to bardzo popularny RDBMS z restrykcyjnymi licencjami i skromnym kosztem posiadania, jeśli baza danych ma znaczny rozmiar lub jest używana przez znaczną liczbę klientów.
Jest to jedna z trzech wiodących na rynku technologii baz danych, obok Oracle Database i IBM DB2.
Zapewnia bardzo przyjazny dla użytkownika interfejs i łatwy do nauczenia, co zaowocowało dużą zainstalowaną bazą użytkowników.
Podobnie jak inne oprogramowanie RDBMS, Microsoft SQL Server jest oparty na SQL, standardowym języku programowania, którego administratorzy baz danych (DBA) i inni specjaliści IT używają do zarządzania bazami danych i wyszukiwania zawartych w nich danych. SQL Server jest powiązany z Transact-SQL (T-SQL), implementacją SQL firmy Microsoft, która dodaje zestaw zastrzeżonych rozszerzeń programistycznych do standardowego języka.
MySQL
MySQL to oparty na Oracle system zarządzania relacyjnymi bazami danych typu open source, oparty na SQL.
Pierwotnie stworzony przez szwedzką firmę MySQL AB, MySQL został przejęty przez Sun Microsystems w 2008 roku, a następnie przez Oracle, kiedy kupił firmę Sun w 2010 roku.
Programiści mogą używać MySQL na licencji GNU General Public License (GPL). Wersja Enterprise zawiera wsparcie i dodatkowe funkcje zapewniające bezpieczeństwo i wysoką dostępność.
Jest to druga najpopularniejsza baza danych na świecie według rankingu db-engines i prawdopodobnie najbardziej obecny backend bazy danych na świecie, ponieważ obsługuje większość usług internetowych na całym świecie. MySQL działa na praktycznie wszystkich platformach, w tym Linux, UNIX i Windows.
MySQL jest ważnym elementem korporacyjnego stosu open source o nazwie LAMP.
LAMP to platforma do tworzenia stron internetowych, która wykorzystuje Linux jako system operacyjny, Apache jako serwer sieciowy, MySQL jako system zarządzania relacyjnymi bazami danych i PHP jako obiektowy język skryptowy.
Obsługa platform
Wyrocznia
Najpopularniejsza wersja Oracle DB, Oracle 12c, to prawdziwie korporacyjny system RDBMS, który jest obsługiwany na różnych systemach operacyjnych i platformach. Oracle dominuje w świecie baz danych po części dlatego, że działa na dziesiątkach platform, od komputerów Mainframe, Sparc, Mac po Intel. Lista zawiera następujące kombinacje systemów operacyjnych i architektur:Linux na x86-64 (obsługiwane są tylko dystrybucje Red Hat Enterprise Linux, Oracle Linux i SUSE) Microsoft Windows na x86-64. Oracle Solaris na SPARC i x86-64. IBM AIX na systemach POWER. Linux na IBM zEnterprise Systems HP-UX na Itanium.
MSSQL
Będąc produktem firmy Microsoft, SQL został zaprojektowany tak, aby był w dużym stopniu kompatybilny z systemem operacyjnym Windows. 16 listopada 2016 r. firma Microsoft ogłosiła początek nowej historii:SQL Server jest teraz obsługiwany w systemach Linux i Docker. Piekło zamarza!
MySQL
MYSQL zapewnia płynniejsze działanie na wszystkich platformach, takich jak Microsoft, UNIX, Linux, Mac itp.
PostgreSQL
Ogólnie rzecz biorąc, PostgreSQL może działać na różnych (nawet egzotycznych) architekturach procesorów i systemach operacyjnych.
Obejmuje architektury procesorów, takie jak x86, x86_64, IA64, PowerPC, PowerPC 64, S/390, S/390x, Sparc, Sparc 64, Alpha, ARM, MIPS, MIPSEL, M68K i PA-RISC. Często można budować na nieobsługiwanym typie procesora, konfigurując za pomocą --disable-spinlocks, ale wydajność będzie słaba.
PostgreSQL może działać na następujących systemach operacyjnych:Linux (wszystkie najnowsze dystrybucje), Windows (Win2000 SP4 i nowsze), FreeBSD, OpenBSD, NetBSD, Mac OS X, AIX, HP/UX, IRIX, Solaris, Tru64 Unix, i UnixWare.
Proces instalacji
Wyrocznia
Ze wszystkich czterech prezentowanych systemów bazodanowych Oracle ma najbardziej złożone wymagania systemowe, co wiąże się ze złożonym procesem instalacji. Zarówno na platformach Windows, jak i Linux, Oracle używa dedykowanego narzędzia Oracle Universal Installer (OUI) jako głównego procesu instalacji. OUI służy do instalacji oprogramowania Oracle Database. OUI to narzędzie graficznego interfejsu użytkownika, które umożliwia:
- Wyświetl oprogramowanie Oracle zainstalowane na Twoim komputerze
- Zainstaluj nowe oprogramowanie Oracle Database
- Usuń oprogramowanie Oracle, które nie jest już potrzebne.
Podczas procesu instalacji OUI uruchomi Asystenta Konfiguracji Bazy Danych Oracle (DBCA), który może zainstalować wstępnie utworzoną domyślną bazę danych zawierającą przykładowe schematy lub może przeprowadzić Cię przez proces tworzenia i konfigurowania dostosowanej bazy danych.
Jeśli nie utworzysz bazy danych podczas instalacji, możesz wywołać DBCA po zainstalowaniu oprogramowania, aby utworzyć jedną lub więcej baz danych.
MSSQL
Począwszy od SQL Server 2016 (13.x), SQL Server jest dostępny tylko jako aplikacja 64-bitowa.
Instalacja odbywa się za pomocą kreatora instalacji, wiersza poleceń lub narzędzia sysprep.
Kreator instalacji uruchamia Centrum instalacji programu SQL Server. Aby utworzyć nową instalację SQL Server, wybierz opcję Instalacja po lewej stronie, a następnie kliknij Samodzielna instalacja nowego SQL Server lub dodaj funkcje do istniejącej instalacji.
Instalacja oparta na systemie Linux jest bardzo podobna do metody instalacji bazy danych typu open source. Obsługuje pakiety dla systemów opartych na Debianie i RedHat. Kroki składają się z konfiguracji repozytorium, instalacji pakietów i konfiguracji poinstalacyjnej, dość podobnej do MySQL. Cały proces jest dokładnie opisany w następnym artykule.
Kreator instalacji MSSQL
MySQL
Oracle dostarcza zestaw binarnych dystrybucji MySQL. Obejmują one ogólne dystrybucje binarne w postaci skompresowanych plików tar (pliki z rozszerzeniem .tar.gz) dla wielu platform oraz pliki binarne w pakietach specyficznych dla platformy. Na platformie Windows proces instalacji jest uruchamiany przez standardowego kreatora instalacji za pośrednictwem GUI.
PostgreSQL
PostgreSQL jest dostępny w większości dystrybucji Linuksa, więc jest bardzo prawdopodobne, że możesz go zainstalować za pomocą prostego polecenia yum lub apt-get. Do konfiguracji HA można użyć narzędzia ClusterControl s9s lub GUI. Narzędzia S9S mogą pomóc w stworzeniu klastra PostgreSQL za pomocą tylko jednego polecenia wiersza:
$ s9s cluster \
--create \
--cluster-type=postgresql \
--nodes="192.168.0.91?master;192.168.0.92?slave;192.168.0.93?slave" \
--provider-version='11' \
--db-admin='postgres' \
--db-admin-passwd='s3cr3tP455' \
--os-user=root \
--os-key-file=/root/.ssh/id_rsa \
--cluster-name='PostgreSQL 11 Streaming Replication' \
--wait
Creating PostgreSQL Cluster
\ Job 259 RUNNING [█▋ ] 15% Installing helper packages
Więcej informacji znajdziesz na tym blogu.
Dostęp do bazy danych i tworzenie bazy danych
Wyrocznia
Oracle oddziela proces tworzenia binarnych i bazodanowych. W przeciwieństwie do innych popularnych systemów baz danych, tworzenie bazy danych obejmuje znacznie więcej kroków.
Asystent konfiguracji bazy danych (DBCA) jest preferowanym sposobem tworzenia bazy danych, ponieważ może to zrobić w znacznie bardziej zautomatyzowany sposób. DBCA można uruchomić za pomocą uniwersalnego instalatora Oracle (OUI), w zależności od wybranego typu instalacji. Możesz także uruchomić DBCA jako samodzielne narzędzie w dowolnym momencie po instalacji bazy danych Oracle.
DBCA można uruchomić w trybie interaktywnym lub nieinteraktywnym/cichym. Tryb interaktywny zapewnia interfejs graficzny i kierowany przepływ pracy do tworzenia i konfigurowania bazy danych. Tryb nieinteraktywny/cichy umożliwia skryptowanie tworzenia bazy danych. Możesz uruchomić DBCA w trybie nieinteraktywnym/cichym, określając argumenty wiersza poleceń, plik odpowiedzi lub jedno i drugie.
Oracle DBCA — tworzenie bazy danychPo utworzeniu bazy danych możesz uzyskać do niej dostęp za pomocą dedykowanego klienta o nazwie sqlplus. SQL*Plus to program klienta terminala, za pomocą którego można uzyskać dostęp do bazy danych Oracle.
MSSQL
SQL Server Management Studio (SSMS) to główne narzędzie do administrowania aparatem bazy danych i pisania kodu Transact-SQL. Program SSMS jest dostępny do bezpłatnego pobrania w witrynie Microsoft Download Center. Najnowsza wersja może być używana ze starszymi wersjami silnika bazy danych.
Management Studio to preferowana metoda tworzenia nowej bazy danych. Aby utworzyć bazę danych w Microsoft SQL Server, połącz się z komputerem, na którym jest zainstalowany Microsoft SQL Server, używając konta administratora.
Uruchom Microsoft SQL Server Management Studio i wybierz opcję tworzenia bazy danych. Proces kreatora przeprowadzi Cię przez cały proces. Jeśli wolisz wiersz poleceń, można to zrobić za pomocą składni CREATE DATABASE.
MySQL
Aby uzyskać dostęp do bazy danych MySQL, użyj klienta mysql. Tworzenie bazy danych jest tak proste, jak CREATE DATABASE
PostgreSQL
Baza danych PostgreSQL ma opcję wielu „schematów”, które działają podobnie do baz danych w MySQL.
Schematy zawierają tabele, indeksy itp. i mogą być dostępne jednocześnie przez to samo połączenie z bazą danych, która je przechowuje. Metody dostępu do PostgreSQL są zdefiniowane w pliku:pg_hba.conf. Może znajdować się w różnych miejscach. W Ubuntu 14.04 znajduje się w /etc/postgresql/9.3/main/pg_hba.conf, z drugiej strony w Centos 7 znajduje się domyślnie w /var/lib/pgsql/data/pg_hba.conf.
Proces tworzenia kopii zapasowej
Wyrocznia
Oracle ma najbardziej złożone, dedykowane wbudowane narzędzie do tworzenia kopii zapasowych ze wszystkich czterech opisanych tutaj serwerów; nazywa się Recovery Manager (RMAN).
RMAN umożliwia uruchamianie zaawansowanych zasad tworzenia kopii zapasowych i przywracania selektywnego. Te same operacje zwykle wymagają wielu ręcznych czynności w innych RDBMS.
Kopie zapasowe możemy wykonywać na dwa sposoby:
- wyłączanie bazy danych i kopiowanie fizycznych plików (tzw. cold backup)
- za pomocą RMAN i wykonaj kopię zapasową bez wyłączania bazy danych (kopia na gorąco)
Aby wykonać kopię zapasową na gorąco, ustaw bazę w trybie ARCHIVELOG. To powie Oracle, aby nie przechowywać kopii plików dziennika ponownego przetwarzania jako dzienników archiwum.
MSSQL
W świecie MS SQL możesz używać wbudowanych poleceń T-SQL do tworzenia kopii zapasowych i przywracania baz danych. Nie ma potrzeby używania narzędzi takich jak mysqlhotcopy i mysqldump.
MS SQL Server oferuje trzy różne strategie tworzenia kopii zapasowych online:
- Prosty model odzyskiwania (nazwa bazy danych ALTER DATABASE SET RECOVERY SIMPLE)
- Model pełnego odzyskiwania (nazwa bazy danych ALTER DATABASE SET RECOVERY FULL)
- Model odzyskiwania z logowaniem zbiorczym (nazwa bazy danych ALTER DATABASE SET RECOVERY BULK_LOGGED)
Zalecanym modelem jest pełne odzyskiwanie, jeśli nie jest akceptowalna utrata danych. Ten tryb jest podobny do funkcji MySQL, gdy włączony jest dziennik binarny. Możesz odzyskać bazę danych do dowolnego momentu, ale powinieneś regularnie tworzyć kopie zapasowe dziennika transakcji oraz bazy danych.
Model z logowaniem zbiorczym może służyć do dużych operacji zbiorczych, takich jak importowanie danych lub tworzenie indeksów w dużych tabelach. Jest to raczej mniej powszechna metoda uruchamiania bazy danych, zwłaszcza produkcyjnej. Nie obsługuje odzyskiwania do określonego momentu, więc jest zwykle używany jako rozwiązanie tymczasowe.
Model prosty jest przydatny, gdy baza danych jest rzadko aktualizowana lub do celów testowych i programistycznych. W trybie SIMPLE dziennik transakcji bazy danych jest wycinany za każdym razem po zakończeniu transakcji. W pozostałych trybach dziennik jest obcinany za pomocą instrukcji CHECKPOINT lub po pliku kopii zapasowej transakcji. W przypadku uszkodzenia bazy danych, tylko najnowsza kopia zapasowa może zostać odzyskana, a wszystkie zmiany od tej kopii zapasowej zostaną utracone.
MySQL
Dwa najpopularniejsze narzędzia do tworzenia kopii zapasowych są dostępne dla MySQL i MariaDB, a mianowicie mysqldump do tworzenia kopii logicznych i kopii binarnych Percona XtraBackup i MariaBackup (odgałęzienie Percona XtraBackup). Wersja MySQL Enterprise oferuje również mysqlbackup, który jest podobny do narzędzi do tworzenia kopii zapasowych na gorąco XtraBackup i MariaBackup.
PostgreSQL
Większość DBMS ma wbudowane narzędzia do tworzenia kopii zapasowych. PostgreSQL ma pg_dump i pg_dumpall po wyjęciu z pudełka. Możesz jednak chcieć użyć innych narzędzi do swoich produkcyjnych baz danych. Więcej informacji można znaleźć w artykule o najlepszych narzędziach do tworzenia kopii zapasowych dla PostgreSQL.
Kontrolowanie wykonywania zapytań i obsługa współbieżności
Wyrocznia
W Oracle wszystkie obiekty bazy danych są pogrupowane według schematów. Schematy to kolekcje obiektów bazy danych, a wszystkie obiekty bazy danych są współużytkowane przez wszystkie schematy i użytkowników. Można go przetłumaczyć na bazy danych MySQL. Mimo że wszystkie są współdzielone, każdy użytkownik może być ograniczony do określonych schematów i tabel za pomocą ról i uprawnień. Ta koncepcja jest dość podobna do baz danych MySQL.Cześć
MSSQL
MS SQL Server organizuje wszystkie obiekty, takie jak tabele, widoki i procedury, według nazw baz danych. Użytkownikom przypisywany jest login, który daje dostęp do określonej bazy danych i jej obiektów. Ponadto w SQL Server każda baza danych ma prywatny, nieudostępniony plik dyskowy na serwerze.
MySQL
MySQL obsługuje tylko MVCC w InnoDB. Jest to silnik pamięci masowej i domyślnie jest dostępny w MySQL. Zapewnia również funkcje reklamacji ACID, takie jak obsługa kluczy obcych i obsługa transakcji. Domyślnie każde zapytanie jest traktowane jako osobna transakcja, co jest innym podejściem niż w Oracle DB.
PostgreSQL
Silnik Postgres wykonuje kontrolę współbieżności za pomocą metody zwanej MVCC (Multiversion Concurrency Control). Dla każdego użytkownika połączonego z bazą danych baza Postgres daje migawkę bazy danych w konkretnej instancji. Gdy baza danych musi zaktualizować element, doda nowszą wersję i wskaże starą wersję jako przestarzałą. Pozwala to na zaoszczędzenie narzutu bazy danych, ale wymaga regulowanego przeszukiwania w celu usunięcia starych, nieaktualnych danych.
Bezpieczeństwo
Wyrocznia
Funkcje bezpieczeństwa są świetne, system zapewnia wielowarstwowe zabezpieczenia, w tym kontrole oceny ryzyka, zapobieganie nieautoryzowanemu ujawnieniu danych, wykrywanie i raportowanie działań w bazie danych oraz egzekwowanie kontroli dostępu do danych.
MSSQL
Funkcje bezpieczeństwa są skromne, RDBMS oferuje mniej funkcji niż Oracle, ale wciąż znacznie więcej niż systemy baz danych Open Source.
MySQL
MySQL implementuje zabezpieczenia oparte na listach kontroli dostępu (ACL) dla wszystkich połączeń, zapytań i innych operacji, które użytkownik może próbować wykonać. Istnieje również wsparcie dla połączeń szyfrowanych SSL między klientami i serwerami MySQL.
PostgreSQL
PostgreSQL ma ROLE i role dziedziczone do ustawiania i utrzymywania uprawnień. PostgreSQL posiada natywną obsługę SSL dla połączeń w celu szyfrowania komunikacji klient/serwer. Posiada również zabezpieczenia na poziomie wiersza.
Oprócz tego, PostgreSQL zawiera wbudowane rozszerzenie o nazwie SE-PostgreSQL, które zapewnia dodatkową kontrolę dostępu w oparciu o politykę bezpieczeństwa SELinux. Więcej szczegółów tutaj.
Wsparcie społeczności
Wyrocznia
Baza danych Oracle, podobnie jak MySQL, ma dużą społeczność, w większości zorganizowaną wokół https://community.oracle.com i grup pasjonatów w dowolnych lokalizacjach na świecie, takich jak na przykład https://poug.org/en/. Płatne wsparcie daje dostęp do grupy wsparcia znanej wcześniej jako metalink, a nie support.oracle.com.
MSSQL
W porównaniu do innych systemów bazodanowych, MSSQL ma prawdopodobnie najmniej zorganizowane grupy społecznościowe, ale nadal bardzo aktywne. Microsoft wykonuje świetną robotę w promowaniu swoich produktów na uniwersytetach. Daje to młodym programistom, deweloperom i administratorom baz danych łatwy dostęp do technologii (bezpłatne licencje) i wszelkich niezbędnych materiałów.
MySQL
MySQL ma dużą społeczność współpracowników, którzy, szczególnie po przejęciu przez Oracle, koncentrują się głównie na utrzymaniu istniejących funkcji, a od czasu do czasu pojawiają się nowe. Przewagą nad innymi bazami danych open source jest bardzo silny ekosystem zewnętrznego dostawcy. Firmy takie jak MariaDB i Percona nie tylko oferują doskonałe wsparcie, ale także przyczyniają się do tego, dodając funkcje korporacyjne do swoich wersji open source.
PostgreSQL
PostgreSQL ma bardzo silną i aktywną społeczność. Jej społeczność ulepsza istniejące funkcje, podczas gdy jej innowacyjni twórcy dążą do tego, aby pozostała najbardziej zaawansowaną bazą danych z nowymi funkcjami i zabezpieczeniami, ograniczając odległość między bazami danych Oracle i MSSQL. PostgreSQL jest znany z tego, że ma więcej funkcji niż inne RDBMS na rynku.
Opcje replikacji
Wyrocznia
Oracle oferuje replikację logiczną i fizyczną poprzez wbudowaną ochronę danych Oracle. Jest to funkcja korporacyjna.
Data Guard to technologia Ship Redo / Apply Redo, „ponowne” to informacje potrzebne do odzyskania transakcji.
Produkcyjna baza danych, określana jako podstawowa baza danych, rozgłasza powtórzenia do jednej lub większej liczby replik, określanych jako rezerwowe bazy danych. Po wprowadzeniu lub zaktualizowaniu tabeli ta zmiana jest przechwytywana przez program zapisujący dziennik do dziennika archiwum i replikowana do systemu rezerwowego.
Bazy danych w stanie gotowości są w ciągłej fazie odtwarzania, weryfikują i stosują ponawianie, aby zachować synchronizację z podstawową bazą danych. Rezerwowa baza danych również automatycznie zsynchronizuje się ponownie, jeśli zostanie tymczasowo odłączona od podstawowej bazy danych z powodu przerw w dostawie prądu, problemów z siecią itp.
Aby uzyskać bardziej elastyczne opcje replikacji, takie jak wieloźródłowa, selektywna replikacja, powinieneś rozważyć dodatkowe płatne narzędzie, Oracle Golden Gate.
MSSQL
Microsoft SQL Server zapewnia następujące typy replikacji do użytku w aplikacjach rozproszonych:
- Replikacja transakcyjna
- Połącz replikację
- Replikacja migawek
Można go znacznie rozszerzyć za pomocą Microsoft Integration Services, co daje możliwość natychmiastowego dostosowania przepływu replikacji.
PostgreSQL
PostgreSQL ma kilka dostępnych opcji, każda z własnymi zaletami i wadami, w zależności od potrzeb replikacji. Opcje kompilacji są oparte na dzienniku zapisu z wyprzedzeniem. Pliki są wysyłane na serwer rezerwowy, gdzie są odczytywane i odtwarzane, lub replikacja strumieniowa, gdzie serwer rezerwowy tylko do odczytu pobiera dzienniki transakcji przez połączenie z bazą danych, aby je odtworzyć. W przypadku bardziej wyrafinowanej architektury replikacji, prawdopodobnie chciałbyś sprawdzić Slony (master do wielu urządzeń podrzędnych) lub Bucardo (multimaster).
MySQL
Replikacja MySQL jest prawdopodobnie najpopularniejszym rozwiązaniem wysokiej dostępności dla MySQL
i szeroko stosowanym przez najlepsze usługi sieciowe.
Konfiguracja jest łatwa, ale bieżąca konserwacja, taka jak aktualizacje oprogramowania, zmiany schematu, zmiany topologii, przełączanie awaryjne i odzyskiwanie, zawsze była trudna.
Replikacja MySQL nie wymaga żadnych narzędzi innych firm, zarówno master-slave, jak i multimaster można wykonać po wyjęciu z pudełka.
Ostatnie wersje MySQL dodały replikację wielu źródeł i globalny identyfikator transakcji, co czyni go jeszcze bardziej niezawodnym i łatwiejszym w utrzymaniu.
Wniosek
Priorytetowe bazy danych, takie jak Oracle i MSSQL, oferują solidne systemy zarządzania i doskonałe wsparcie. Wśród długiej listy obsługiwanych funkcji użytkownicy mogą uzyskać uspokajające poczucie dostępu do wsparcia dla przedsiębiorstw i płatnych systemów wiedzy.
Z drugiej strony koszt licencji, a nie tak duża luka w funkcjach i wtyczki dla przedsiębiorstw, sprawią, że będziesz chciał przejść do decyzji o otwartym kodzie źródłowym łatwiej niż kiedykolwiek.
Korzystanie z predefiniowanych procesów i automatyzacji może nie tylko zaoszczędzić czas, ale także chronić przed typowymi błędami.
Platforma zarządzania, która systematycznie zajmuje się wszystkimi różnymi aspektami cyklu życia bazy danych, będzie bardziej niezawodna niż łatanie razem kilku rozwiązań punktowych.