laravel

Laravel Kako napraviti sigurnosnu kopiju baze podataka

Laravel Kako napraviti sigurnosnu kopiju baze podataka

Problem

Nažalost, mnogi novi programeri Laravela to ne shvaćaju dok svoj kôd ne puste u proizvodnju i nešto se dogodi pa izgube svoje podatke.

Laravel ne nudi sigurnosnu kopiju baze podataka kao dio njihove osnovne funkcije, tako da novi programeri Laravela ne mogu raditi s tim dok čitaju članke Laravela ili grade Laravel aplikaciju.

Danas postaje sve važnija stvar čuvati i čuvati sigurnosne kopije podataka u slučaju da ih ikada budete trebali koristiti.

Uobičajene pogreške koje novi programeri Laravela čine je da odu na phpmyadmin i pokušaju ručno pokrenuti ovaj izvoz. Iako će ovo i dalje raditi, to nije najbolja praksa jer ponekad nećete biti tamo da napravite sigurnosnu kopiju, a vaši su korisnici već generirali nove podatke.

Ono što želite učiniti je da to automatizirate.

Riješenje

Postoji mnogo načina na koje možete napraviti sigurnosnu kopiju baze podataka, ali koliko ljudi koristi je ovaj paket https: // github.com / spatie / laravel-backup . Tvrtka koja stoji iza nje vrlo je pouzdana i poznata u industriji.

Prije svega, paket je BESPLATAN, tako da ne morate ništa platiti.

Dobra je strana što je instalacija prilično jednostavna, a ono što mi se posebno sviđa jest to što ne samo da izrađuje sigurnosnu kopiju vaše baze podataka, već imate mogućnost izrade sigurnosne kopije datoteka, a zatim spremanje svega toga u zip datoteku. Kad kažem datoteke, mislim na datoteke za pohranu, poput prenesenih dokumenata ili datoteka koje generirate pomoću svoje aplikacije.

Osim toga, to također možete premjestiti na AWS S3, što je pametno učiniti. Sve što trebate učiniti je (pod pretpostavkom da već imate AWS račun, jest krenuti i stvoriti novi S3 segment s novim dozvolama. Tada jednostavno možete pratiti dokumentaciju na njihovoj Github stranici.

Ovdje je brzi pregled konfiguracijske datoteke koji možete podesiti tako da primate obavijesti putem drugih medija kao što su Slack i Email.

'obavijesti' => [
'obavijesti' => [
\ Spatie \ Backup \ Notifications \ Notifications \ BackupHasFailed :: class => ['mail', 'slack'],
\ Spatie \ Backup \ Notifications \ Notifications \ UnhealthyBackupWasFound :: class => ['mail', 'slack'],
\ Spatie \ Backup \ Notifications \ Notifications \ CleanupHasFailed :: class => ['mail', 'slack'],
\ Spatie \ Backup \ Notifications \ Notifications \ BackupWasSuccessful :: class => ['mail', 'slack'],
\ Spatie \ Backup \ Notifications \ Notifications \ HealthyBackupWasFound :: class => ['mail', 'slack'],
\ Spatie \ Backup \ Notifications \ Notifications \ CleanupWasSuccessful :: class => ['mail', 'slack'],
],
/ *
* Ovdje možete odrediti obavijest na koju treba slati obavijesti. Zadana vrijednost
* notifiable će koristiti varijable navedene u ovoj konfiguracijskoj datoteci.
* /
'notifiable' => \ Spatie \ Backup \ Notifications \ Notifiable :: class,
'pošta' => [
'to' => ['editor @ linuxhint.com '],
],
'opušteno' => [
'webhook_url' => 'https: // kuke.zatišje.com / services / ABMGGK7AB / B9PBCDSM8 / kam02gzLrycaUBctgAdRv52M ',
/ *
* Ako je ovo postavljeno na nulu, koristit će se zadani kanal web-kuke.
* /
'kanal' => null,
],
],

Postavite automatizaciju

Napokon, sve ovo ne bi imalo previše smisla ako odlučite preskočiti dio automatizacije. Za ovo se želite osloniti na cron poslove koji bi već trebali biti omogućeni na vašem hostu i pokazivač na naredbu rasporeda Laravel poput ove:

* * * * * cd / path-to-your-project && php obrtnički raspored: pokrenite >> / dev / null 2> & 1

Odavde, u vašoj aplikaciji / konzoli / kernelu.php datoteku trebali biste učiniti sljedeće ako je želite automatizirati u određeno vrijeme (obično to radim kad većina naših korisnika spava):

if (app ('env') == 'production')
$ schedule-> command ('backup: clean') -> daily () -> at ('01: 00 ');
$ schedule-> command ('backup: run') -> daily () -> at ('02: 00 ');
Bitka za Wesnoth 1.13.6 Razvoj objavljen
Bitka za Wesnoth 1.13.6 objavljeno prošlog mjeseca, šesto je razvojno izdanje u izdanju 1.13.x series i donosi niz poboljšanja, ponajviše korisničkog ...
Kako instalirati League Of Legends na Ubuntu 14.04
Ako ste ljubitelj League of Legends, ovo je prilika za vas da testirate League of Legends. Imajte na umu da je LOL podržan na PlayOnLinux ako ste kori...
Instalirajte najnoviju strategiju igre OpenRA na Ubuntu Linux
OpenRA je Libre / Free Real Time strateški pokretač igre koji stvara rane Westwoodove igre poput klasične Command & Conquer: Red Alert. Distribuirani ...