laravel

Laravel Ako zálohovať databázu

Laravel Ako zálohovať databázu

Problém

Mnoho nových vývojárov Laravel si to, bohužiaľ, neuvedomuje, kým neuvedú svoj kód do výroby, a niečo sa stane, takže stratia svoje údaje.

Laravel neponúka zálohu databázy ako súčasť svojich základných funkcií, takže noví vývojári Laravelu s tým nemôžu pracovať pri čítaní článkov o Laravelu alebo pri vytváraní aplikácie Laravel.

Dnes sa stáva čoraz dôležitejšou vecou ukladanie a uchovávanie zálohovaných údajov pre prípad, že by ste ich niekedy potrebovali použiť.

Bežné chyby, ktoré noví vývojári Laravelu robia, je prechod na phpmyadmin a pokus o spustenie tohto exportu ručne. Aj keď to stále bude fungovať, nie je to najlepší postup, pretože niekedy nebudete môcť urobiť zálohu, a vaši používatelia už vygenerovali nové údaje.

To, čo chcete urobiť, je automatizovať to.

Riešenie

Existuje mnoho spôsobov, ako môžete zálohovať svoju databázu, ale koľko ľudí to robí, používa tento balík https: // github.com / spatie / laravel-backup . Spoločnosť, ktorá stojí za tým, je veľmi spoľahlivá a v odbore známa.

V prvom rade je balíček ZDARMA, takže nemusíte platiť nič.

Pozitívne je, že inštalácia je celkom jednoduchá a čo sa mi obzvlášť páči, je to, že nielenže zálohujete svoju databázu, máte tiež možnosť zálohovať svoje súbory a potom ich uložiť do zip súboru. Keď hovorím o súboroch, mám na mysli úložné súbory, ako sú napríklad odovzdané dokumenty alebo súbory, ktoré vygenerujete pomocou svojej aplikácie.

Okrem toho to môžete presunúť aj na AWS S3, čo je inteligentná vec. Všetko, čo musíte urobiť, je (za predpokladu, že už máte účet AWS, je ísť a vytvoriť nový segment S3 s novými povoleniami. Potom už len môžete sledovať dokumentáciu na ich stránke Github.

Tu je rýchly náhľad na konfiguračný súbor, ktorý môžete vyladiť, aby ste dostávali oznámenia prostredníctvom iných médií, ako sú Slack a Email.

'oznámenia' => [
'oznámenia' => [
\ 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'],
],
/ *
* Tu môžete určiť oznamovateľ, ktorému sa majú oznámenia odosielať. Predvolená hodnota
* notifikovateľné použije premenné uvedené v tomto konfiguračnom súbore.
* /
'notifiable' => \ Spatie \ Backup \ Notifications \ Notifiable :: class,
'mail' => [
'to' => ['editor @ linuxhint.com '],
],
'slack' => [
'webhook_url' => 'https: // háčiky.ochabnúť.com / services / ABMGGK7AB / B9PBCDSM8 / kam02gzLrycaUBctgAdRv52M ',
/ *
* Ak je nastavená hodnota null, použije sa predvolený kanál webhooku.
* /
'channel' => null,
],
],

Nastaviť automatizáciu

Nakoniec by to všetko nemalo veľký zmysel, ak by ste sa rozhodli preskočiť automatizačnú časť. Z tohto dôvodu sa chcete spoľahnúť na úlohy cron, ktoré by už mali byť na vašom hostiteľovi povolené a ukazovateľ na príkaz Laravel schedule, napríklad tento:

* * * * * cd / path-to-your-project && php artisan schedule: run >> / dev / null 2> & 1

Odtiaľ vo svojej aplikácii / konzole / jadre.php súbor, mali by ste urobiť nasledovné, ak ho chcete automatizovať v konkrétnom čase (zvyčajne to robím, keď väčšina našich používateľov spí):

if (app ('env') == 'production')
$ schedule-> command ('backup: clean') -> daily () -> at ('01: 00 ');
$ schedule-> command ('backup: run') -> daily () -> at ('02: 00 ');
Hry Ako zobraziť počítadlo FPS v hrách Linux
Ako zobraziť počítadlo FPS v hrách Linux
Hranie na systéme Linux získalo veľký tlak, keď spoločnosť Valve v roku 2012 oznámila podporu systému Linux pre klienta Steam a ich hry. Od tej doby s...
Hry Ako sťahovať a prehrávať Sid Meier's Civilization VI v systéme Linux
Ako sťahovať a prehrávať Sid Meier's Civilization VI v systéme Linux
Úvod do hry Civilization 6 predstavuje moderné poňatie klasického konceptu predstaveného v sérii hier Age of Empires. Myšlienka bola dosť jednoduchá; ...
Hry Ako inštalovať a hrať Doom na Linuxe
Ako inštalovať a hrať Doom na Linuxe
Úvod do Doom Séria Doom vznikla v 90. rokoch po vydaní pôvodného Doomu. Bol to okamžitý hit a od tej doby herná séria získala množstvo ocenení a origi...