laravel

Laravel Kako narediti varnostno kopijo baze podatkov

Laravel Kako narediti varnostno kopijo baze podatkov

Težava

Na žalost se mnogi novi razvijalci Laravela tega ne zavedajo, dokler ne dajo svoje kode v proizvodnjo, in nekaj se zgodi, da izgubijo svoje podatke.

Laravel ne ponuja varnostne kopije baz podatkov kot del njihove osnovne funkcije, zato novi razvijalci Laravela med branjem člankov ali izdelavo aplikacije Laravel s tem ne delajo.

Danes postaja vse bolj pomembno shranjevanje in shranjevanje varnostnih kopij podatkov, če jih boste kdaj potrebovali.

Pogoste napake, ki jih naredijo novi razvijalci Laravel, so, da obiščejo phpmyadmin in poskusijo zagnati ta izvoz ročno. Čeprav bo to še vedno delovalo, to ni najboljša praksa, ker včasih ne boste na voljo za varnostno kopiranje in so vaši uporabniki že ustvarili nove podatke.

Kar želite storiti, je to avtomatizirati.

Rešitev

Obstaja veliko načinov za varnostno kopiranje baze podatkov, koliko ljudi pa uporablja ta paket https: // github.com / spatie / laravel-backup . Podjetje, ki stoji za njim, je zelo zanesljivo in znano v panogi.

Najprej je paket BREZPLAČEN, zato vam ni treba nič plačati.

Dobra stran je, da je namestitev precej preprosta in še posebej mi je všeč to, da ne samo, da varnostno kopira vašo bazo podatkov, ampak imate tudi možnost varnostnega kopiranja datotek in nato vse to shranite v zip datoteko. Ko rečem datoteke, mislim na datoteke za shranjevanje, kot so naloženi dokumenti ali datoteke, ki jih ustvarite s svojo aplikacijo.

Poleg tega lahko to premaknete tudi na AWS S3, kar je pametno narediti. Vse, kar morate storiti, je (če že imate račun AWS, je, da ustvarite novo vedro S3 z novimi dovoljenji. Potem lahko preprosto sledite dokumentaciji na njihovi strani Github.

Tu je hiter predogled konfiguracijske datoteke, ki jo lahko prilagodite, tako da boste prejemali obvestila prek drugih medijev, kot sta Slack in Email.

'obvestila' => [
'obvestila' => [
\ 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 lahko določite, kdo mora biti obveščen, kam naj se pošiljajo obvestila. Privzeto
* notifiable bo uporabil spremenljivke, določene v tej konfiguracijski datoteki.
* /
'notifiable' => \ Spatie \ Backup \ Notifications \ Notifiable :: class,
'pošta' => [
'to' => ['editor @ linuxhint.com '],
],
'ohlapnost' => [
'webhook_url' => 'https: // kljuke.ohlapnost.com / services / ABMGGK7AB / B9PBCDSM8 / kam02gzLrycaUBctgAdRv52M ',
/ *
* Če je to nastavljeno na nič, bo uporabljen privzeti kanal spletnega kavlja.
* /
'channel' => null,
],
],

Nastavite avtomatizacijo

Končno vse to ne bi imelo posebnega smisla, če bi se odločili, da preskočite del avtomatizacije. Za to se želite zanesti na opravila cron, ki bi morala biti že omogočena na vašem gostitelju in kazalec na ukaz Laravel razpored, kot je ta:

* * * * * cd / path-to-your-project && php obrtniški urnik: zaženi >> / dev / null 2> & 1

Od tu v vaši aplikaciji / konzoli / jedru.php, če jo želite avtomatizirati ob določenem času (ponavadi to storim, ko večina naših uporabnikov spi):

if (app ('env') == 'produkcija')
$ schedule-> command ('backup: clean') -> daily () -> at ('01: 00 ');
$ schedule-> command ('backup: run') -> daily () -> at ('02: 00 ');
Najboljše aplikacije za preslikavo gamepadov za Linux
Če želite igre na Linuxu igrati z igralno ploščico namesto s tipičnim sistemom za vnos tipkovnice in miške, je za vas na voljo nekaj uporabnih aplikac...
Uporabna orodja za igralce Linux
Če radi igrate igre na Linuxu, obstaja verjetnost, da ste za izboljšanje igralne izkušnje uporabljali aplikacije in pripomočke, kot so Wine, Lutris in...
HD Remastered Games za Linux, ki prej še niso izdale Linuxa
Mnogi razvijalci iger in založniki pripravijo HD remaster starih iger, da podaljšajo življenjsko dobo franšize, zato oboževalci zahtevajo združljivost...