laravel

Laravel Kā dublēt datu bāzi

Laravel Kā dublēt datu bāzi

Problēma

Diemžēl daudzi jaunie Laravel izstrādātāji to neapzinās, kamēr nav ievietojuši kodu ražošanā, un kaut kas notiek, tāpēc viņi zaudē savus datus.

Laravel nepiedāvā datu bāzes dublēšanu kā daļu no savas pamatfunkcijas, tāpēc jaunie Laravel izstrādātāji ar to nedarbojas, lasot Laravel rakstus vai veidojot Laravel lietojumprogrammu.

Šodien kļūst arvien svarīgāka lieta saglabāt un saglabāt dublējuma datus, ja jums kādreiz ir nepieciešams tos izmantot.

Biežas kļūdas, ko pieļauj jaunie Laravel izstrādātāji, ir doties uz vietni phpmyadmin un mēģināt manuāli izpildīt šo eksportu. Lai gan tas joprojām darbosies, tā nav labākā prakse, jo dažreiz jūs nebūsiet tur, lai izveidotu dublējumu, un jūsu lietotāji jau ir ģenerējuši jaunus datus.

Tas, ko vēlaties darīt, ir to automatizēt.

Risinājums

Ir daudz veidu, kā jūs varat darīt, lai dublētu datu bāzi, bet cik daudz cilvēku izmanto, izmantojot šo pakotni https: // github.com / spatie / laravel-backup . Uzņēmums aiz tā ir ļoti uzticams un pazīstams nozarē.

Pirmkārt, pakete ir BEZMAKSAS, tāpēc jums nekas nav jāmaksā.

Pozitīvi ir tas, ka instalēšana ir diezgan vienkārša, un man īpaši patīk tas, ka tā ne tikai veic datu bāzes dublēšanu, bet arī ir iespēja dublēt failus un pēc tam visu to saglabāt zip failā. Sakot faili, es domāju glabāšanas failus, piemēram, dokumentu augšupielādes vai failus, kurus ģenerējat kopā ar savu lietojumprogrammu.

Turklāt jūs varat arī to pārvietot uz AWS S3, kas ir gudra lieta. Viss, kas jums jādara, ir (pieņemot, ka jums jau ir AWS konts, ir jāiet un jāizveido jauns S3 spainis ar jaunām atļaujām. Tad jūs varat vienkārši sekot dokumentācijai viņu Github lapā.

Šeit ir īss konfigurācijas faila priekšskatījums, kuru varat pielāgot, lai saņemtu paziņojumus, izmantojot citus nesējus, piemēram, Slack un Email.

'paziņojumi' => [
'paziņojumi' => [
\ Spatie \ Backup \ Notifications \ Notifications \ BackupHasFailed :: class => ['pasts', 'vaļība'],
\ Spatie \ Backup \ Notifications \ Notifications \ UnhealthyBackupWasFound :: class => ['mail', 'slack'],
\ Spatie \ Backup \ Notifications \ Notifications \ CleanupHasFailed :: class => ['mail', 'slack'],
\ Spatie \ Backup \ Notifications \ Notifications \ BackupWasSuccessful :: class => ['pasts', 'vaļība'],
\ Spatie \ Backup \ Notifications \ Notifications \ HealthyBackupWasFound :: class => ['pasts', 'slaidums'],
\ Spatie \ Backup \ Notifications \ Notifications \ CleanupWasSuccessful :: class => ['pasts', 'vaļība'],
],
/ *
* Šeit jūs varat norādīt paziņojamo, uz kuru jānosūta paziņojumi. Noklusējums
* Notifiable izmantos mainīgos, kas norādīti šajā konfigurācijas failā.
* /
'notifiable' => \ Spatie \ Backup \ Notifications \ Notifiable :: klase,
'pasts' => [
'to' => ['redaktors @ linuxhint.com '],
],
'atslābums' => [
'webhook_url' => 'https: // āķi.atslābums.com / services / ABMGGK7AB / B9PBCDSM8 / kam02gzLrycaUBctgAdRv52M ',
/ *
* Ja tas ir iestatīts uz nulli, tiks izmantots tīmekļa āķa noklusējuma kanāls.
* /
'kanāls' => null,
],
],

Iestatiet automatizāciju

Visbeidzot, tam visam nebūtu lielas jēgas, ja jūs nolemtu izlaist automatizācijas daļu. Šim nolūkam vēlaties paļauties uz cron darbiem, kas jau būtu jāaktivizē jūsu resursdatorā, un jānorāda uz komandu Laravel grafiks šādi:

* * * * * cd / ceļš uz jūsu projektu un& php amatnieku grafiks: palaist >> / dev / null 2> & 1

No šejienes savā lietotnē / konsolē / kodolā.php failam jums jādara šādi, ja vēlaties to automatizēt noteiktā laikā (es to parasti daru, kad lielākā daļa mūsu lietotāju ir aizmiguši):

if (lietotne ('env') == 'produkcija')
$ schedule-> komanda ('backup: clean') -> katru dienu () -> plkst. ('01: 00 ');
$ schedule-> komanda ('backup: palaist') -> katru dienu () -> plkst. ('02: 00 ');
Labākās komandrindas spēles Linux
Komandrinda nav tikai lielākais sabiedrotais, lietojot Linux, bet tā var būt arī izklaides avots, jo to var izmantot, lai spēlētu daudzas jautras spēl...
Labākās Linux spēļu gamepad kartēšanas lietotnes
Ja jums patīk spēlēt spēles Linux ar parastu tastatūru, nevis parasto tastatūru un peles ievades sistēmu, jums ir dažas noderīgas lietotnes. Daudzas d...
Noderīgi rīki Linux spēlētājiem
Ja jums patīk spēlēt spēles Linux, iespējams, ka spēļu pieredzes uzlabošanai, iespējams, esat izmantojis tādas lietotnes un utilītprogrammas kā Wine, ...