簡體   English   中英

一般錯誤:'“mysqldump”' 未被識別為內部或外部命令

[英]General error : '“mysqldump”' is not recognized as an internal or external command

我用的是Laravel Spatie Backup,安裝完成,先運行這個$ composer require spatie/laravel-backup

$ composer require spatie/laravel-backup

Using version ^5.6 for spatie/laravel-backup
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 3 installs, 0 updates, 0 removals
  - Installing spatie/temporary-directory (1.1.3): Downloading (100%)
  - Installing spatie/db-dumper (2.9.0): Downloading (100%)
  - Installing spatie/laravel-backup (5.6.0): Downloading (100%)
spatie/laravel-backup suggests installing guzzlehttp/guzzle (Allows notifications to be sent via Slack)
Writing lock file
Generating optimized autoload files

然后 $ php artisan vendor:publish --provider="Spatie\\Backup\\BackupServiceProvider"

 $ php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"

Copied File [\vendor\spatie\laravel-backup\config\backup.php] To [\config\backup.php]
Copied Directory [\vendor\spatie\laravel-backup\resources\lang] To [\resources\lang\vendor\backup]
Publishing complete.

但是當我跑

php artisan backup:run

出現這個錯誤

備份失敗,因為:轉儲過程失敗,退出代碼為 1:一般錯誤:'"mysqldump"' 不是內部或外部命令、可運行的程序或批處理文件。

注意:我使用 Laravel 5.6 版和 Spatie v.5

在您的config/database.php文件中,編輯 mysql 數據庫配置並添加:

'dump' => [
   'dump_binary_path' => 'C:/xampp/mysql/bin/', // only the path, so without `mysqldump` or `pg_dump`
   'use_single_transaction',
   'timeout' => 60 * 5, // 5 minute timeout
],

在您的config/database.php文件中,編輯 mysql 數據庫配置並添加:

'dump_command_path' =>' '

哪個是 mysqldump 在你的系統上的絕對路徑那個路徑可能是這個,或者非常相似的東西: C:\\xampp\\mysql\\bin

我面臨這個問題

請按照此https://spatie.be/docs/laravel-backup/v4/installation-and-setup#dumping-the-database

//config/database.php
'connections' => [
    'mysql' => [
        'driver'    => 'mysql'
        ...,
        'dump' => [
                'dump_binary_path' => 'D:/xampp/mysql/bin/', // only the path, so without `mysqldump` or `pg_dump`
                'use_single_transaction',
                'timeout' => 60 * 5, // 5 minute timeout
            ], 
    ],

它將通過將此行添加到您的配置/數據庫文件以備份文件和數據庫來解決您的問題。 它將 100% 工作。

這是顯示您進行更改的位置的圖像。 在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM