Как сделать резервную копию базы данных MySQL laravel 4.2 с помощью cronjob - PullRequest
0 голосов
/ 07 ноября 2019

У меня есть проект laravel 4.2, и теперь я автоматически делаю еженедельное резервное копирование базы данных.
Я нахожу скрипт, но он не работает

    public function fire()
    {
        try {
            $this->process = new Process(sprintf(
                'mysqldump -u%s -p%s %s > %s',
                config('database.connections.mysql.username'),
                config('database.connections.mysql.password'),
                config('database.connections.mysql.database'),
                storage_path('backups/backup.sql')
            ));

            $this->info('The backup has been proceed successfully.');
        } catch (ProcessFailedException $exception) {
            $this->error('The backup process has been failed.');
        }
    }

    protected function getArguments()
    {
        return array();
    } 

Отображение ошибки

Неустранимая ошибка PHP: вызов неопределенной функции config () в /var/www/html/guitarni_portal/app/commands/BackupDatabase.php в строке 25 Ошибка в обработчике исключений: поток или файл "/ var / www / html / guitarni_portal/app/storage/logs/laravel.log "не удалось открыть: не удалось открыть поток: отказано в разрешении в /var/www/html/guitarni_portal/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:107

1 Ответ

1 голос
/ 07 ноября 2019

Вы используете слишком старый laravel. Но тем не менее, вы можете использовать

Config::get вместо config.

Должно работать.

...