Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Backup Database Bundle Laravel Package

andreas-a/backup-database-bundle

View on GitHub
Deep Wiki
Context7

Backup database bundle

This bundle is not maintained anymore!

General

A Symfony bundle that provides a command to easily backup databases.

Note: For now only MySQL is supported. It should also support MariaDB, but that has not been verified.

Requirements

  • See composer.json for most dependencies.
  • A Unix-like OS.
  • The following commands:
    • mkfifo
    • mysqldump
    • bzip2
  • For now the above commands have to be available globally in the current path configuration in the corresponding shell used by the symfony/process component, so they can be called without requiring the absolute path.

Setup

  • Add AndreasA\BackupDatabaseBundle\AndreasABackupDatabaseBundle::class => ['all' => true], to config/bundles.php, if it has not been added by symfony/flex already.
  • Add the file config/packages/andreas_a_backup_database.yaml with a content like (example configuration):
    andreas_a_backup_database:
        database_url: '%env(resolve:DATABASE_URL)%'
        target_directory: '%kernel.project_dir%/var/backup'
        mysql:
            ignored_tables:
                - 'cache_items'
            options:
                - 'default-character-set=utf8mb4'
                - 'hex-blob'
                - 'no-tablespaces'
                - 'opt'
                - 'routines'
                - 'triggers'
            platform_specific_options:
                - 'column-statistics=0'
                - 'skip-column-statistics'
    

Configuration

  • database_url: The URL to the database.
  • target_directory: The directory where the backups are placed. Those files include the current date and time in their filenames.
  • mysql: Specific options for MySQL backups.
    • ignored_tables: Tables to be ignored during backup. Can also be set to [], if no tables should be ignored.
    • options: These options are used during backup and provided using the MySQL configuration file syntax. The mysqldump command has to support these options. Can also be set to [], if no additional options are necessary.
    • platform_specific_options: Basically the same as options but here the bundle first checks if the mysqldump command supports these options. This is relevant, if you do not know the used mysqldump version. Can also be set to [], if no platform specific options are necessary.

Command

The bundle provides the Symfony command andreas-a:backup:database. It uses the configuration above to create a database backup and can e.g. be used during deployments.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
make-dev/orca
dmstr/symfony-system-resources-bundle
dmstr/symfony-job-queue-bundle
dmstr/openapi-json-schema-bundle
dmstr/keycloak-security-bundle
dmstr/doctrine-audit-log-bundle
dmstr/api-platform-utils-bundle
dmstr/api-configuration-bundle
chrisdev/ux-components
baks-dev/finances
emuniq/filament-browser-notifications
syriable/filament-translator
hungnm28/livewire-form
wenprise/eloquent
crudly/encrypted
fadion/bouncy
cuci/prototurk-sdk
gos/pubsub-router-bundle
cuci/prototurk-sdk-symfony
clementtalleu/easyadmin-markdown-bundle