Jak wykonać kopię zapasową lub przywrócić istniejące dane Redmine.

8/31/2020
10 perc
Lukáš Beňa -> Łukasz Beňa

Sukces każdego rozwiązania zarządzania projektem opiera się na jednej prostej rzeczy - danych. Czy już wiesz, jak zrobić kopię zapasową lub przywrócić istniejące dane z Redmine? Jeśli nie, oto jak możesz to zrobić dla każdej bazy danych.

Kopie zapasowe Redmine muszą zawierać:

  • Bazę danych
  • Załączniki (umieszczone w katalogu plików poniżej katalogu instalacyjnego domyślnie)


Kopie zapasowe bazy danych


MySQL

MySQL, najpopularniejszy rendszer baz danych SQL typu Open Source, jest egyedi, rozproszony i wspierany przez firmę Oracle Corporation. Strona Internetwa MySQL najnowsze ajánlatok a MySQL programozási témában. MySQL a narzędzie do zarządzania.

Baza danych to uporządkowany zbiór danych. Może to być cokolwiek, od prostego listy zakupów po galerię zdjęć lub ogromne ilości danych w sieci firmowej. Aby dodać, uzyskać dostęp i przetwarzać dane przechowywane w bazie danych komputera, potrzebujesz narzędzia do zarządzania bazą danych wraz z serwerem MySQL. Ponieważ komputery są świetne w obsłudze dużych ilości danych, systemy zarządzania odgrywają centralną rolę w informatyce, jako samodzielne narzędzia lub jako składniki innych aplikacji. Bazy danych MySQL są relacyjne.

Elektroniczna baza danych przechowuje dane w oddzielnych tabelach zamiast umieszczać wszystkie dane w jednym dużym magazynie. Struktury bazy danych są zorganizowane w fizyczne pliki zoptymalizowane pod kątem szybkości. Model logiczny, z elementami takimi jak bazy danych, tabele, widoki, wiersze i kolumny, zapewnia elastyczne środowisko programistyczne. Ustanawiasz zasady dotyczące relacji między różnymi polami danych, takimi jak jeden do jednego, jeden do wielu, unikalne, wymagane lub opcjonalne oraz "wskazówki" między różnymi tabelami.

Baza danych wspiera te zasady, aw przypadku bardzo dobrze zaprojektowanej bazy danych Twoja aplikacja nigdy nie będzie zawierać niezgodnych, zduplikowanych, osierokonych, przestarzałych lubdanychjąch. Składnik SQL w "MySQL" oznacza "Strukturált lekérdezési nyelv". SQL najczęściej stosowany standaryzowany język służący do uzyskiwania dostępu do baz danych. W zależności od środowiska programistycznego, możesz wprowadzać SQL bezpośrednio (na przykład do uzyskiwania raportów), osadzać instrukcje SQL w kodzie napisanym w innym k języku lub używać. API sktóni specyficznegoukdry Az SQL tréfa az ANSI/ISO SQL szabványt jelenti.

Oprogramowanie MySQL tréfa oprogramowaniem típusú nyílt forráskódú. Nyílt forráskódú oznacza, że ​​każdy może używać i modyfikować oprogramowanie. Każdy może pobrać oprogramowanie MySQL z Internetu i używać go bezpłatnie. Jeśli chcesz, możesz przejrzeć kod źródłowy i zmienić go, aby dostosować go do swoich potrzeb.

Oprogramowanie MySQL wykorzystuje licencję GPL (GNU általános nyilvános licenc), aby określić, co możesz i czego nie możesz robić z oprogramowaniem w określonych sytuacjach. Jeśli odczuwasz dyskomfort związany z GPL lub chcesz osadzić kod MySQL w aplikacji komercyjnej, możesz kupić od nas wersję z licencją komercyjną.

kilátás Przegląd licencjogosultság MySQL, aby uzyskać więcej informacji. Szerver bazy danych MySQL jest bardzo szybki, niezawodny, skalowalny i łatwy w użyciu. Jeśli tego szukasz, warto go wypróbować. Szerver MySQL może działać bezproblemowo na komputerze, obok innych aplikacji, serverów internetowych itp., wymagając niewielkiej uwagi.

Jeśli przeznaczysz cały rendszer na MySQL, możesz zmienić ustawienia, aby wykorzystać całą dostępną pamięć, moc obliczeniową i możliwości wejścia/wyjścia. A MySQL może również skalować się do klastrów maszyn połączonych w sieć. MySQL szerver został początkowo opracowany do obsługi dużych baz danych znacznie szybciej niż istniejące rozwiązania i od wielu lat skutecznie wykorzystywany jest w wymagających środowiskach produkcyjnych. Mimo ciągłego rozwoju szerver MySQL oferuje teraz bogatą i wartościową kolekcję funkcji.

Jego łączność, szybkość i bezpieczeństwo sprawiają, że szerver MySQL jest wyjątkowo odpowiedni do uzyskiwania dostępu do baz danych w Internecie. MySQL działa w trybie klient/server lub osadzonym. Oprogramowanie bazy danych MySQL to maszyna klient/server, która ma wielowątkowy szerver SQL, który obsługuje różne backendy, wiele różnych aplikacji i bibliotek klienta, narzędzia administracyjne oraz wiele różnych interfejsów programowania aplikacji (API).

Bardzo prawdopodobne jest, że Twoje ulubione oprogramowanie lub język obsługuje szerver bazy danych MySQL. Wymowa "MySQL" to "My Ess Que Ell" (nem "az én folytatásom"), ale nie ma nic złego w tym, jeśli wymawiasz to jako "my folytatás" lub w inny sposób zlokalizowany.

Oto jak można wykonać kopię zapasową danych dla MySQL:

Polecenie mysqldump może być użyte do zrobienia kopii zapasowej zawartości bazy danych MySQL do pliku textowego. Na przykład:

mysqldump -u -p > /path/to/backup/db/redmine.sql

Znajdź te , , én w pliku config/database.yml. może nie być potrzebny w zależności od instalacji bazy danych.


PostgreSQL

PostgreSQL a rendszerhez zarządzania o otwartym kodzie źródłowym klasy przedsiębiorczej. Obsługuje zarówno SQL dla zapytań relacyjnych, jak i JSON dla zapytań nierelacyjnych. Jest wspierany przez doświadczoną społeczność programistów, ktorzy wnieśli znaczący wkład w jego rozwój, tworząc niezwykle niezawodny system DBMS. PostgreSQL obsługuje zaawansowane typy danych i optymalizację wydajności, oferując najlepsze funkcje dostępne w drogich bazach danych biznesowych, takich jak Oracle i SQL Server.

MySQL vagy PostgreSQL?

Projekt MySQL udostępnił swój kod źródłowy na warunkach licence GNU oraz innych umów własnościowych. PostgreSQL tréfa PostgreSQL licenccel. Obecnie jest własnością firmy Oracle Corporation i oferuje kilka płatnych edycji. Jest to darmowe i otwarte oprogramowanie, co oznacza, że ​​nigdy nie trzeba płacić za tę usługę.

MySQL jest zgodny z ACID tylko w przypadku korzystania z silników magazynowania NDB i InnoDB Cluster. PostgreSQL jest w pełni zgodny z ACID. A MySQL działa dobrze w strukturach OLAP és OLTP, gdzie ważna jest tylko prędkość odczytu. Wydajność PostgreSQL działa najlepiej w systemach, które wymagają wykonania skomplikowanych zapytań.

MySQL jest niezawodny i dobrze działa z aplikacjami BI (üzleti intelligencia), które są trudne do odczytania. PostgreSQL działa dobrze z aplikacjami BI. Jednak jest bardziej odpowiedni do hurtowni danych i aplikacji analizy danych, które wymagają szybkich prędkości odczytu i zapisu.

Oto jak można wykonać kopię zapasową danych dla PostgreSQL:

  1. Zaloguj się jako użytkownik postgres:

    su - postgres

  2. Użyj polecenia pg_dump, aby wykonać kopię zapasową wszystkich zawartości bazy danych PostgreSQL do pliku textowego:

    pg_dump -U -Fc <adatbázis_neve>> /path/to/backup/db/redmine.sql

Znajdź te én w pliku config/database.yml. Polecenie pg_dump pomoże Ci uzyskać dostęp do hasła, gdy będzie wymagane.


SQLite

SQLite to biblioteka programistyczna, która zapewnia elektroniczny rendszer zarządzania bazami danych. Lite w SQLite oznacza lekki w kontekście instalacji, zarządzania bazą danych i wymaganych zasobów. SQLite ma następujące cechy: samodzielność, bezserwerowość, brak konfiguracji, transakcyjność. Bezserwerowość W normalnych warunkach RDBMS, takich jak MySQL, PostgreSQL itp., wymagają oddzielnego process server do pracy.

Aplikacje, które muszą uzyskać dostęp do serwera bazy danych, korzystają z protokołu TCP/IP do wysyłania i odbierania żądań. Nazywa się to architekturą klient-server. RDBMS Architektura klient-server SQLite nie działa w ten sposób. SQLite nie wymaga serwera do działania. Baza danych SQLite jest zintegrowana z aplikacją, która uzyskuje do niej dostęp.

Aplikacje komunikują się z bazą danych SQLite, aby odczytywać i zapisywać bezpośrednio z plików bazy danych przechowywanych na dysku. Co to jest SQLite Samodzielny SQLite to samodzielny sposób działania, który wymaga minimalnej pomocy ze strony systemu operacyjnego lub zewnętrznej biblioteki. To sprawia, że ​​SQLite jest przydatny w każdej sytuacji, zwłaszcza w urządzeniach wbudowanych, takich jak iPhone, telefon z rendszer Android, konsole do gier, przenośne odtwarzacze multimedialne itp. SQLite został opracowany z wykorzystaniem ANSI-C.

Kod źródłowy jest dostępny jako duży plik sqlite3.C i plik nagłówkowy sqlite3.H. Jeśli chcesz opracować aplikację korzystającą z SQLite, wystarczy umieścić te pliki w projekcie i skompilować je razem z kodem. Brak konfiguracji dzięki architekturze bezserwerowej, nie trzeba „instalować” SQLite przed jego użyciem. Nie ma procesu serwera, który musiałby być skonfigurowany, uruchomiony i zatrzymany. SQLite nie korzysta z żadnych plików konfiguracyjnych. Wszystkie transakcje w SQLite są w pełni zgodne z ACID.

Jego operacje i zmiany są atomowe, spójne, izolowane i trwałe. Innymi słowy, wszystkie zmiany w ramach transakcji następują w całości lub wcale, nawet gdy wystąpi nieoczekiwana sytuacja, takie jak awaria aplikacji, awaria zasilania lub awaria systemu operacyjnego. Unikalne cechy SQLite SQLite używa dynamicznych typów dla tabel. Oznacza to, że można przechowywać dowolną wartość w dowolnej kolumnie, niezależnie od typu danych. SQLite pozwala na jednoczesny dostęp jednego połączenia z bazą danych do jednego pliku bazy danych.

Przynosi to wiele korzystnych funkcji, takich jak łączenie tabel w różnych bazach danych lub kopiowanie danych między bazami danych w jednym poleceniu. SQLite jest w stanie tworzyć bazy danych w pamięci, które działają bardzo szybko. Bazy danych SQLite są zawarte w pliku, więc można je zabezpieczyć, kopiując plik do innego miejsca. Nazwę pliku bazy danych SQLite można znaleźć, przeglądając plik config/database.yml.


Kopia zapasowa załączników

Każde przesłane pliki są przechowywane w attachments_storage_path (domyślnie w katalogu files/). Możesz skopiować zawartość tego katalogu do innego miejsca, aby szybko wykonać kopię zapasową.

OSTRZEŻENIE: attachments_storage_path może wskazywać na inny katalógus niż files/. Upewnij się, że przeglądasz ustawienia w pliku config/configuration.yml, aby uniknąć niepotrzebnego tworzenia kopii zapasowej.


Przykładowy skrypt kopii zapasowej

Tutaj może być prosty skrypt powłoki, który może być używany do codziennych kopii zapasowych (przy założeniu, że używasz bazy danych MySQL):

# Baza danych

/ usr / bin / mysqldump -u -p | gzip> / path / to / backup / db / redmine_`date +% Y-% m-% d`.gz

# Załączniki

rsync -a / path / to / redmine / files / path / to / backup / files


Przywróć bazę danych


MySQL

Na przykład, jeśli masz skompresowany plik zrzutu o nazwie 2018-07-30.gz, to bazę danych można przywrócić za pomocą następującej komendy:

gunzip <2018-07-30.gz | mysql -u -p

Podaj haslo.


PostgreSQL

Jeśli opcja -Fc polecenia pg_dump jest używana tak, jak w powyższym przykładzie, to należy użyć polecenia pg_restore:

pg_restore -U -d redmine.sql

Plik textowy można również przywrócić za pomocą polecenia psql:

psql <


SQLite

Skopiuj plik bazy danych z lokalizacji kopii zapasowej.

Najlepsza aktualizacja Redmine? Łatwa.

Zdobądź wszystkie potężne narzędzia do doskonałego planowania, zarządzania i kontroli projektów w jednym oprogramowaniu.

Wypróbuj Easy Redmine przez 30 dni za darmo

Pełne funkcje, zabezpieczenie SSL, codzienne kopie zapasowe, dostępne w Twojej lokalizacji