Jak zálohovat nebo obnovit vaše stávající Redmine data.

8/31/2020
10 minutes
Lukáš Beňa.

Úspěch každého řešení projektového řízení spočívá v jednoduché věci - v datech. Už víte, jak zálohovat nebo obnovit vaše stávající data z Redmine? Pokud ne, zde je, jak to můžete udělat pro každou databázi.

Zálohování Redmine musí zahrnovat:

  • Databázi
  • Přílohy (uložené v adresáři souborů pod instalačním adresářem výchozím způsobem)


Zálohování databáze


MySQL

MySQL, nejpopulárnější open source SQL databázový systém, je unikátní, distribuovaný a podporovaný společností Oracle Corporation. Webové stránky MySQL nabízejí nejnovější informace o softwaru MySQL. MySQL je správcovský nástroj.

Databáze je strukturovaná řada statistik. Může to být cokoli od jednoduchého seznamu nákupů po galerii obrázků nebo velké množství dat v síti společnosti. Chcete-li přidávat, získávat přístup a zpracovávat data uložená v počítačové databázi, potřebujete správce databáze spolu s MySQL Serverem. Protože počítače jsou skvělé v manipulaci s velkým množstvím dat, správcovské systémy hrají významnou roli v počítačových technologiích, jako samostatné nástroje nebo jako součásti jiných aplikací. MySQL databáze jsou relační.

Elektronická databáze ukládá data do samostatných tabulek místo toho, aby všechna data ukládala do jednoho velkého skladu. Struktury databáze jsou organizovány do fyzických souborů optimalizovaných pro rychlost. Logický model s prvky, jako jsou databáze, tabulky, pohledy, řádky a sloupce, poskytuje flexibilní programové prostředí. Nastavujete pravidla, která řídí vztahy mezi různými datovými poli, jako jsou jedna k jedné, jedna k mnoha, unikátní, povinná nebo volitelná a "ukazatele" mezi různými tabulkami.

Databáze podporuje tato pravidla a s velmi dobře navrženou databází se vaše aplikace nikdy nesetká s nekonzistentními, duplicitními, osiřelými, zastaralými nebo chybějícími daty. SQL část "MySQL" znamená "Structured Query Language". SQL je nejčastěji standardizovaný jazyk, který slouží k přístupu k databázím. V závislosti na vašem programovém prostředí můžete SQL zadávat přímo (například pro získání zpráv), vkládat SQL příkazy do kódu napsaného v jiném jazyce nebo používat jazykem specifické API, které skrývá syntaxi SQL. SQL je popsán pomocí standardu ANSI/ISO SQL.

Software MySQL je open source. Open Source znamená, že ho může používat a upravovat kdokoli. Každý si může stáhnout software MySQL z internetu a používat ho bezplatně. Pokud chcete, můžete se podívat na zdrojový kód a upravit ho podle svých potřeb.

Software MySQL používá GPL (GNU General Public License), aby definoval, co můžete a nemůžete dělat se softwarem v konkrétních situacích. Pokud máte problémy s GPL nebo chcete vložit kód MySQL do obchodní aplikace, můžete si od nás koupit komerčně licencovanou verzi.

Podívejte se na Přehled licencování MySQL pro více informací. MySQL Database Server je velmi rychlý, spolehlivý, škálovatelný a snadno použitelný. Pokud to hledáte, musíte mu dát šanci. MySQL Server může snadno běžet na počítači spolu s vašimi dalšími aplikacemi, webovými servery atd. a vyžaduje velmi málo pozornosti.

Pokud věnujete celý systém MySQL, můžete upravit nastavení tak, aby využíval veškerou paměť, výkon CPU a I/O kapacitu, které jsou k dispozici. MySQL může také škálovat až na clustery strojů propojených v síti. MySQL Server byl původně vyvinut pro zpracování velkých databází mnohem rychleji než existující řešení a byl úspěšně používán v náročných produkčních prostředích po mnoho let. I když je stále vyvíjen, MySQL Server nyní nabízí bohatou a cennou sbírku funkcí.

Jeho konektivita, rychlost a bezpečnost dělají z MySQL Serveru vynikající volbu pro přístup k databázím na webu. MySQL Server běží v klient/server nebo vložených operacích. Software MySQL Database je klient/serverový systém, který obsahuje vícevláknový SQL server, který podporuje různé základny, různé aplikace a knihovny, správcovské nástroje a širokou škálu aplikačních programových rozhraní (API).

Je velmi pravděpodobné, že váš oblíbený software nebo jazyk podporuje MySQL Database Server. Výslovnost "MySQL" je "My Ess Que Ell" (ne "my sequel"), ale je to v pořádku, pokud ho vyslovíte jako "my sequel" nebo jiným způsobem lokalizovaně.

Zde je, jak můžete zálohovat data pro MySQL:

Příkaz mysqldump lze použít k zálohování obsahu vaší MySQL databáze do textového souboru. Například:

mysqldump -u <username> -p <password> <database_name> > /path/to/backup/db/redmine.sql

Najděte tyto <username>, <password>, <hostname> a <redmine_database> v souboru config/database.yml. <host_name> nemusí být nutný v závislosti na vaší instalaci databáze.


PostgreSQL

PostgreSQL je open-source správce databáze, který patří mezi enterprise-třídu. Podporuje SQL pro relační a JSON pro nestandardní dotazy. Je podporován zkušenou komunitou vývojářů, kteří přispěli k jeho spolehlivosti a výkonnosti. PostgreSQL podporuje pokročilé datové typy a optimalizaci výkonu, což jsou funkce, které jsou dostupné pouze v dražších komerčních databázích, jako jsou Oracle a SQL Server.

MySQL nebo PostgreSQL?

MySQL je k dispozici pod licencí GNU a dalšími proprietárními smlouvami. PostgreSQL je vydáván pod licencí PostgreSQL. Nyní je vlastněn společností Oracle Corporation a nabízí několik placených edic. Je to bezplatný a open-source software. To znamená, že za tuto službu nikdy nebudete muset platit.

MySQL je ACID-kompatibilní pouze při použití úložišť NDB a InnoDB Cluster. PostgreSQL je plně ACID-kompatibilní. MySQL se osvědčuje v OLAP a OLTP systémech, kde je důležitá pouze rychlost čtení. Výkon PostgreSQL funguje nejlépe v systémech, které se rozhodnou pro provádění složitých dotazů.

MySQL je spolehlivý a dobře funguje s aplikacemi BI (Business Intelligence), které jsou obtížně čitelné. PostgreSQL funguje dobře s aplikacemi BI. Nicméně je více vhodný pro aplikace pro data warehousing a analýzu dat, které potřebují rychlé rychlosti čtení a zápisu.

Zde je, jak zálohovat data pro PostgreSQL:

  1. Přihlaste se jako uživatel postgres:

    su - postgres

  2. Použijte příkaz pg_dump k zálohování všech obsahů databáze PostgreSQL do textového souboru:

    pg_dump -U <username> -Fc < database_name> > /path/to/backup/db/redmine.sql

Najděte tyto <username> a <redmine_database> v souboru config/database.yml. Příkaz pg_dump vám pomůže přistupovat k heslu, když je potřeba.


SQLite

SQLite je softwarová knihovna, která poskytuje elektronický správce databáze. Lite v názvu SQLite znamená lehkost v instalaci, správě databáze a potřebných zdrojích. SQLite má následující významné funkce: samostatný, bez serveru, nulová konfigurace, transakční. Bez serveru Obvykle potřebuje RDBMS jako MySQL, PostgreSQL atd. samostatný serverový proces k práci.

Aplikace, které potřebují přístup k databázovému serveru, používají protokol TCP/IP k odesílání a přijímání požadavků. To se nazývá klient/serverová architektura. RDBMS klient-serverová architektura SQLite nepracuje tímto způsobem. SQLite nepotřebuje server k běhu. Databáze SQLite je integrována s aplikací, která přistupuje k databázi.

Aplikace komunikují s databází SQLite přímo pro čtení a zápis do souborů databáze uložených na disku. Co je SQLite samostatný SQLite je samostatný způsob, který vyžaduje minimální pomoc operačního systému nebo externí knihovny. To SQLite činí užitečným v jakékoli situaci, zejména v vestavěných zařízeních, jako jsou iPhones, Android telefony, herní konzole, přenosné přehrávače médií atd. SQLite byl vyvinut pomocí ANSI-C.

Zdrojový kód je k dispozici jako velký sqlite3.C a jeho hlavičkový soubor sqlite3.H. Pokud chcete vyvinout aplikaci, která používá SQLite, stačí tyto soubory přidat do svého projektu a sestavit je spolu se svým kódem. Nulová konfigurace díky serverless architektuře, nemusíte před použitím SQLite „instalovat“. Neexistuje žádný serverový proces, který by musel být konfigurován, spuštěn a zastaven. SQLite nepoužívá žádné konfigurační soubory. Všechny transakce v SQLite jsou plně ACID-kompatibilní.

Jeho chování a změny jsou atomické, konzistentní, izolované a odolné. Jinými slovy, všechny změny v rámci transakce se stávají úplně nebo vůbec, i když dojde k neočekávané situaci, jako je pád aplikace, výpadek napájení nebo pád operačního systému. SQLite využívá dynamické typy pro tabulky. To znamená, že můžete ukládat jakoukoli hodnotu v jakémkoli sloupci, bez ohledu na typ dat. SQLite umožňuje jednomu připojení k databázi získat přístup k jednomu souboru databáze současně.

To přináší mnoho příjemných funkcí, jako jsou spojování tabulek v různých databázích nebo kopírování dat mezi databázemi v jediném příkazu. SQLite je schopen vytvářet databáze v paměti, které jsou velmi rychlé pro práci. Databáze SQLite jsou obsaženy v jednom souboru, takže je můžete zálohovat kopírováním souboru na jiné místo. Název souboru s databází SQLite můžete zjistit v souboru config/database.yml.


Zálohování příloh

Každé nahrání souboru je uloženo v attachments_storage_path (výchozí nastavení je adresář files/). Obsah v tomto adresáři můžete zkopírovat na jiné místo, abyste ho rychle zálohovali.

UPOZORNĚNÍ: attachments_storage_path může ukazovat na jiný adresář než files/. Ujistěte se, že jste zkontrolovali nastavení v souboru config/configuration.yml, abyste zabránili zbytečnému zálohování.


Vzorový zálohovací skript

Zde je jednoduchý shell skript, který může být použit pro každodenní zálohy (pokud používáte MySQL databázi):

# Databáze

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

# Přílohy

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


Obnovení databáze


MySQL

Například, pokud máte gzipovaný soubor s dumpem s názvem 2018-07-30.gz, pak databáze může být obnovena následujícím příkazem:

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

Zadejte heslo.


PostgreSQL

Pokud je volba -Fc příkazu pg_dump použita, jak je uvedeno výše, pak musíte použít příkaz pg_restore:

pg_restore -U <username> -d <redmine_database> redmine.sql

Textový soubor může být obnoven také pomocí psql:

psql <redmine_database> < <infile>


SQLite

Zkopírujte soubor s databází z umístění zálohy.

Nejlepší upgrade Redmine? Snadný.

Získejte všechny výkonné nástroje pro dokonalé plánování, řízení a kontrolu projektů v jednom softwaru.

Vyzkoušejte Easy Redmine na 30 dní zdarma

Kompletní funkce, chráněno protokolem SSL, denní zálohování, ve vaší lokalitě.