Korleis sikre eller gjenopprette dine eksisterende Redmine-data

8/31/2020
10 minutter
Lukáš Beňa

En lukkast med kvar projektleiingsløysing er baseret på enkelt ting - dataene. Veit du allereie korleis du kan sikkerhedskopiere eller gjenopprette eksisterende data fra Redmine? Hvis ikkje, her er korleis du kan gjere det for kvar database.

Redmine sikkerhedskopier må inkludere:

  • Database
  • Vedlegg (lagret i filkatalogen under installationskatalogen som standard)


Sikkerhedskopiering af database


MySQL

MySQL, det mest populære åbne SQL-databasesystem, er unikt, distribueret og støttet af Oracle Corporation. MySQL-nettstedet tilbyder de nyeste fakta om MySQL-programvare. MySQL er og administrationsværktøj.

En database er en struktureret serie med data. Det kan være alt fra en enkel handleliste til et billedgalleri eller store mængder data i et bedriftsnetværk. For at få adgang til og behandle data, som er lagret i en computerdatabase, skal du bruge et databaseadministrationsværktøj sammen med MySQL Server. Siden computerer er flinke til at håndtere store mengder data, spiller Administrationssystemer en central rolle inden for databehandling, enten som frittstående værktøj eller som komponenter i andre applikationer. MySQL-databaser er relateret.

En elektronisk database lagrer data i separate tabeller i stedet for at placere alle data i et stort lager. Databasestrukturen er organiseret i fysiske filer optimaliseret for hastighed. De logiske modeller, med elementer som databaser, tabeller, visninger, rader og kolonner, gir et fleksibelt programmeringsmiljø. Du opretter regler som styrer forholdene mellem forskjellige datafelt, for eksempel en-til-en, en-til-mange, unikke, påkrævede eller valgfrie, og "peker" mellem forskjellige tabeller.

Databasen støtter disse regler, og med en godt udformet database vil applikationen din aldri indeholde inkonsistente, dupliserte, forældreløse, uddaterte eller manglende data. SQL-delen af ​​"MySQL" står for "Structured Query Language". SQL er det almindeligste standardiserede sprog som bruges til at få adgang til databaser. Avhengig af programmeringsmiljøet kan du skrive SQL direkte (f.eks. at generere rapporter), lægge SQL-sætninger i kode skrevet i et andet sprog, eller bruge et sprogbestemt API som skjuler SQL-syntaksen. SQL er defineret af ANSI/ISO SQL-standarden.

MySQL-programvaren er åben kildekode. Åpen kildekode betyder at alle kan bruge og ændre softwaren. Alle kan laste ned MySQL-programvaren fra nettet og bruge den uden at betale noget. Hvis du vil, kan du se på kildekoden og ændre den for at tilpasse den til dine behov.

MySQL-programvaren bruger GPL (GNU General Public License) for at definere, hvad du kan og ikke kan gøre med softwaren i specifikke situationer. Hvis du har problemer med GPL eller ønsker at bygge en MySQL-kode i en kommerciel applikation, kan du købe en kommercielt licenseret version fra os.

Se MySQL Licensoversigt for mere information. MySQL Database Server er rask, sikker, skalerbar og enkel at bruge. Hvis det er det du leter efter, bør du prøve det. MySQL Server kan køre problemfrit på en computer sammen med andre applikationer, netservere osv., og kræve lidt opmærksomhed.

Hvis du dedikerer et helt system til MySQL, kan du ændre indstillingerne for at bruge alle tilgængelige hukommelser, CPU-kraft og I/O-kapacitet. MySQL kan også skaleres til klynger af maskiner, som er koblet sammen i et netværk. MySQL Server blev udviklet til at håndtere butiksdatabaser mange hurtige eksisterende løsninger, og er blevet brugt med succes i krævede produktionsmiljøer i flere år. Selv om det er under løbende udvikling, tilbyder MySQL Server nå en rik og værdifuld samling af funktioner.

Tilkoblingsmulighetene, hastigheden og sikkerheden gør MySQL Server meget egnet til at få adgang til databaser på nettet. MySQL Server kører i klient/server- eller interne modus. MySQL Database Software er et klient/server-system som har en flertrådet SQL-server som forskellige bakre ender, mange forskjellige klientapplikationer og biblioteker, administrativt værktøj og et bredt udvalg af programmeringsgrensesnitt (API-er).

Det er svært sandsynligt - at favorittprogrammer eller sproget støtter MySQL Database Server. Udtalen af ​​"MySQL" er "My Ess Que Ell" (ikke "my sequel"), men det er greit hvis du udtaler det som "my sequel" eller på en anden lokal måde.

Sådan sikkerhedskopierer data til MySQL:

Kommandoen mysqldump kan bruges til at sikkerhedskopiere indholdet i MySQL-databasen til en tekstfil. For eksempel:

mysqldump -u -s > /sti/til/sikkerhetskopi/db/redmine.sql

Finn disse , , og i filen config/database.yml. kan være unødvendig afhængig af hvordan databasen er installeret.


PostgreSQL

PostgreSQL er et virksomhedsklasse open source administrationssystem. Det støtter både SQL for relasjonelle og JSON for ikke-relasjonelle spørringer. Det støttes af et erfarent udviklermiljø som har gjort et stående bidrag til at gøre det til et stærkt sikkert DBMS-system. PostgreSQL støtter avancerede datatyper og optimalisering af ydeevne, funktioner som er bedst tilgængelige i dyre kommercielle databaser som Oracle og SQL Server.

MySQL eller PostgreSQL?

MySQL-projektet har gjort kildekoden tilgængelig under GNU-lisensen og andre proprietære aftaler. PostgreSQL er udgitt under PostgreSQL-lisensen. Det egner sig nu af Oracle Corporation og tilbyder flere betalte udgaver. Det er gratis og åben kildekode-programvare. Det betyder at du aldrig behøver at betale noget for denne tjenesten.

MySQL er ACID-kompatibel, når du bruger NDB og InnoDB Cluster Storage-motorer. PostgreSQL er helt ACID-kompatibel. MySQL fungerer bra i OLAP- og OLTP-systemer, der bare læsehastigheder er vigtige. PostgreSQL-ytelsen fungerer tilfredsstillende i systemer som vælger at udføre komplekse spørgeringer.

MySQL er pålidelig og fungerer godt med BI (Business Intelligence)-programmer, som er vanskelige at læse. PostgreSQL fungerer godt med BI-applikationer. Det er imidlertid mere egnet til datavarehus og dataanalyseprogrammer, som kræver hurtig læse-skrivehastighed.

Sådan kan du sikkerhedskopiere data til PostgreSQL:

  1. Log ind som brugerens postgres:

    su - postgres

  2. Brug pg_dump-kommandoen til at sikkerhedskopiere alt indhold i en PostgreSQL-database til en tekstfil:

    pg_dump -U -Fc > /sti/til/sikkerhetskopi/db/redmine.sql

Finn disse og i filen config/database.yml. pg_dump-kommandoen vil hjælpe dig med at få adgang til adgangskode, når det er nødvendigt.


SQLite

SQLite er et softwarebibliotek som gir et elektronisk databaseadministrationssystem. "lite" i SQLite betyder letvektig når det gælder opsætning, databaseadministration og nødvendige ressourcer. SQLite har følgende bemærkelsesverdige funktioner: selvstendig, serverløs, nullkonfiguration, transaktionell. Serverløs. Normalt kræves og RDBMS som MySQL, PostgreSQL osv. en separat serverprocess for at fungere.

Applikationen som har brug for tilgang til databaseserveren bruger TCP/IP-protokollen til at sende og modtage forespørsler. Dette kaldes klient/server-arkitektur. RDBMS klient/server-arkitektur fungerer ikke på denne måde i SQLite. SQLite kræver ikke en server til at køre. SQLite-databasen er integreret med applikationen som får adgang til databasen.

Programmer samhandler med SQLite-databasen til at læse og skrive direkte fra databasefilene som er lagret på disk. Hvor er SQLite selvstendig? SQLite er en selvstendig måde som kræver minimal hjælp fra operativsystemet eller eksterne biblioteker. Dette gør SQLite nyttig i alle situationer, specielt i indebygde enheder som iPhones, Android-telefoner, spilkonsoller, håndholdte mediespillere, osv. SQLite er udviklet ved hjælp af ANSI-C.

Kildekoden er tilgængelig som en stor sqlite3.C-fil og dens headerfil sqlite3.H. Hvis du vil udvikle et program som bruger SQLite, behøver du bare at legge disse filer til projektet og kompilere det sammen med koden din. Nullkonfiguration på grund af serverløs arkitektur, du behøver ikke at "installere" SQLite før du bruger det. Det er ingen serverprocess som må konfigureres, starter og stopper. SQLite bruger ikke konfigurationsfiler. Alle transaktioner i SQLite er fuldstændig ACID-kompatibel.

Endringer i SQLite er atomiske, konsistente, isolerede og forskellige. Med andre ord, alle ændringer inden for en transaktion sker enten fuldstændig eller ikke i det hele taget, selv når uventede situationer som en programkrasj, strømbrud eller operativsystemkrasj opstår. SQLite bruger dynamiske typer til tabeller. Det betyder, at du kan lagre hvilken som helst værdi i hvilken som helst kolonne, uafhængig af datatypen. SQLite tillater at én databaseforbindelse får adgang til mere én én databasefil samtidig.

Dette giver mange gode funktioner som å koble sammen tabeller i forskjellige databaser eller kopiere data mellem databaser med én enkelt kommando. SQLite er i stand til at oprette hurtigminnedatabaser som er hurtige til at arbejde med. SQLite-databaser er alle indeholdt i en fil, så du kan sikkerhedskopiere dem ved at kopiere filen til en anden placering. Du kan finde filnavnet til SQLite-databasen ved at se på config/database.yml.


Sikkerhedskopiering af vedlegg

Hver filopplasting lagres i vedleggslagringsbanen (standard er filer/-mappen). Du kan kopiere indholdet i denne kortlægning til en anden placering for hurtig sikkerhedskopiering.

ADVARSEL: vedleggslagringsbanen kan peke til en anden map enn files/. Sørg for at tjekke indstillingen i config/configuration.yml for at undgå at lave en udvendig sikkerhedskopi.


Eksempel på sikkerhedskopi-skript

Hun kan være et enkelt skalskript, som kan bruges til daglig sikkerhedskopiering (forudsat at du bruger en MySQL-database):

# Database

/usr/bin/mysqldump -u -s | gzip > /sti/til/sikkerhetskopi/db/redmine_`date +%Y-%m-%d`.gz

# Vedlegg

rsync -a /sti/til/redmine/filer /sti/til/sikkerhedskopi/filer


Gjenoprett en database


MySQL

For eksempel, hvis du har en gzipet dumpfil med titlen 2018-07-30.gz, kan databasen gjenopprettes med følgende kommando:

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

Skriv ind password.


PostgreSQL

Når alternativet -Fc til kommandoen pg_dump bruges som eksempel over, må du bruge kommandoen pg_restore:

pg_restore -U -d redmine.sql

En tekstfil kan også genopprettes med psql:

psql <


SQLite

Kopier databasefilen fra forskellige til sikkerhedskopien.

Den ultimative Redmine-opgraderingen? Enkel.

Få alt kraftigt værktøj til perfekt projektplanlægning, -styring og -kontrol i én software.

Prøv Easy Redmine i en 30-dagers gratis prøveperiode

Fuld funktionalitet, SSL-beskyttet, daglig sikkerhedskopiering, i din geografiske placering