PHP Classes

How Can PHP Sync a Database Between the Development and a Production Server Using the Package DB Sync: Synchronize databases between environments

Recommend this page to a friend!
  Info   Documentation   View files Files   Install with Composer Install with Composer   Download Download   Reputation   Support forum   Blog    
Last Updated Ratings Unique User Downloads Download Rankings
2025-01-15 (10 days ago) RSS 2.0 feedNot yet rated by the usersTotal: 14 This week: 14All time: 11,441 This week: 3Up
Version License PHP version Categories
database-synchronize 1.0Custom (specified...7Databases, Tools, Systems administration, P...
Description 

Author

This package can synchronize databases between environments.

The package can be installed from the command line using PHP Composer which will generate and output a URL of the Web application.

Users can open the page with the generated URL to run the database synchronization Web application using the database service class.

In Portuguese:

Repositório do projeto para Sincronização de Databases de produção para desenvolvimento

Picture of Celso
Name: Celso <contact>
Classes: 5 packages by
Country: Brazil Brazil
Innovation award
Innovation award
Nominee: 2x

Documentation

Database Sync - by Celso Nery

Maintainer Latest Version Software License Build Quality Score

Multilanguage README

en pt-br

About DB Sync

The DB Sync application was born because the development team needed to transfer data from prod to dev databases. This application drops, creates and transfers data from database-name to database-name_dev, if _dev does not exist, the application will create it.

Requirements

PHP 8.2+

  • Packages
    zip unzip libzip libzip-dev libpq-dev libpng-dev oniguruma-dev git lynx nodejs npm postgresql-client
    
  • PHP Extensions
    php82-bcmath php82-bz2 php82-calendar php82-exif php82-gettext php82-opcache php82-pcntl php82-zip php82-pgsql
    

Installation

This application is available in Github/Gitlab:

git clone [email protected]/celsonery/db-sync.git

or

git clone https://github.com/celsonery/db-sync.git

  • First you must create environment variables
    export PGHOST=<ip-of-postgresql-server>
    export PGUSER=<username-of-postgresql-user>
    export PGPASSWORD=<password-of-postgresql-user>
    
  • Run these commands in the application folder in terminal or command prompt
    composer update
    php artisan key:generate
    php artisan optimize
    php artisan serve
    

> Now you must open your browser in the url shared by above command

How to run in Docker

  • Build a docker image
    docker build -t <image-name>:<image-version> -f docker/dockerfile
    
  • Run the docker container
    docker run -itd --rm \
    --name <container-name> \
    -p <local-port>:8000 \
    -e PGHOST=<ip-of-postgresql-server> \
    -e PGUSER=<user-of-postgresql-user> \
    -e PGPASSWORD=<password-of-postgresql-user-password> \
    <image-name-created-before>
    
    > Now you must open your browser in the http://localhost:8000

To run tests

php artisan test

Generate coverage test reports

XDEBUG_MODE=coverage php artisan test --coverage-html reports/

You can see coverage tests in reports folder

/reports

All changes

Please see CHANGELOG for more details.

Contributing

Thank you for considering contributing to the db sync! The contribution guide can be found in the Contribute documentation.

Security Vulnerabilities

If you discover a security vulnerability within DB Sync, please send an e-mail to Celso Nery via [email protected]. All security vulnerabilities will be promptly addressed.

License

The DB Sync is open-sourced software licensed under the MIT license.


  Files folder image Files (179)  
File Role Description
Files folder image.github (4 files, 1 directory)
Files folder imageapp (4 directories)
Files folder imagebootstrap (2 files)
Files folder imageconfig (10 files)
Files folder imagedatabase (3 directories)
Files folder imagedocker (6 files, 3 directories)
Files folder imagek8s (1 file)
Files folder imagelang (2 directories)
Files folder imagepublic (3 files, 1 directory)
Files folder imagereports (2 files, 7 directories)
Files folder imageresources (3 directories)
Files folder imageroutes (3 files)
Files folder imagetests (1 file, 2 directories)
Accessible without login Plain text file .changelog Data Auxiliary data
Accessible without login Plain text file .dockerignore Data Auxiliary data
Accessible without login Plain text file .env.example Data Auxiliary data
Accessible without login Plain text file .scrutinizer.yaml Data Auxiliary data
Accessible without login Plain text file .styleci.yml Data Auxiliary data
Accessible without login Plain text file artisan Example Example script
Accessible without login Plain text file CHANGELOG.md Data Auxiliary data
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file composer.lock Data Auxiliary data
Accessible without login Plain text file jsconfig.json Data Auxiliary data
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file package-lock.json Data Auxiliary data
Accessible without login Plain text file package.json Data Auxiliary data
Accessible without login Plain text file phpunit.xml Data Auxiliary data
Accessible without login Plain text file pint.json Data Auxiliary data
Accessible without login Plain text file postcss.config.js Data Auxiliary data
Accessible without login Plain text file README.md Doc. Documentation
Accessible without login Plain text file README.pt-br.md Doc. Documentation
Accessible without login Plain text file sonar-project.properties Data Auxiliary data
Accessible without login Plain text file tailwind.config.js Data Auxiliary data
Accessible without login Plain text file vite.config.js Data Auxiliary data

  Files folder image Files (179)  /  .github  
File Role Description
Files folder imageworkflows (1 file)
  Accessible without login Plain text file CONTRIBUTING.md Data Auxiliary data
  Accessible without login Plain text file CONTRIBUTING.pt-br.md Data Auxiliary data
  Accessible without login Plain text file SECURITY.md Data Auxiliary data
  Accessible without login Plain text file SECURITY.pt-br.md Data Auxiliary data

  Files folder image Files (179)  /  .github  /  workflows  
File Role Description
  Accessible without login Plain text file workflow.yml Data Auxiliary data

  Files folder image Files (179)  /  app  
File Role Description
Files folder imageHttp (3 directories)
Files folder imageModels (1 file)
Files folder imageProviders (1 file)
Files folder imageServices (1 file)

  Files folder image Files (179)  /  app  /  Http  
File Role Description
Files folder imageControllers (3 files, 1 directory)
Files folder imageMiddleware (1 file)
Files folder imageRequests (2 files, 1 directory)

  Files folder image Files (179)  /  app  /  Http  /  Controllers  
File Role Description
Files folder imageAuth (9 files)
  Plain text file Controller.php Class Class source
  Plain text file DashboardController.php Class Class source
  Plain text file ProfileController.php Class Class source

  Files folder image Files (179)  /  app  /  Http  /  Controllers  /  Auth  
File Role Description
  Plain text file AuthenticatedSessionController.php Class Class source
  Plain text file ConfirmablePasswordController.php Class Class source
  Plain text file EmailVerificationN...ationController.php Class Class source
  Plain text file EmailVerificationPromptController.php Class Class source
  Plain text file NewPasswordController.php Class Class source
  Plain text file PasswordController.php Class Class source
  Plain text file PasswordResetLinkController.php Class Class source
  Plain text file RegisteredUserController.php Class Class source
  Plain text file VerifyEmailController.php Class Class source

  Files folder image Files (179)  /  app  /  Http  /  Middleware  
File Role Description
  Plain text file HandleInertiaRequests.php Class Class source

  Files folder image Files (179)  /  app  /  Http  /  Requests  
File Role Description
Files folder imageAuth (1 file)
  Plain text file DatabaseRequest.php Class Class source
  Plain text file ProfileUpdateRequest.php Class Class source

  Files folder image Files (179)  /  app  /  Http  /  Requests  /  Auth  
File Role Description
  Plain text file LoginRequest.php Class Class source

  Files folder image Files (179)  /  app  /  Models  
File Role Description
  Plain text file User.php Class Class source

  Files folder image Files (179)  /  app  /  Providers  
File Role Description
  Plain text file AppServiceProvider.php Class Class source

  Files folder image Files (179)  /  app  /  Services  
File Role Description
  Plain text file DatabaseService.php Class Class source

  Files folder image Files (179)  /  bootstrap  
File Role Description
  Plain text file app.php Class Class source
  Plain text file providers.php Class Class source

  Files folder image Files (179)  /  config  
File Role Description
  Accessible without login Plain text file app.php Aux. Configuration script
  Plain text file auth.php Class Class source
  Accessible without login Plain text file cache.php Aux. Configuration script
  Accessible without login Plain text file database.php Aux. Configuration script
  Accessible without login Plain text file filesystems.php Aux. Configuration script
  Plain text file logging.php Class Class source
  Accessible without login Plain text file mail.php Aux. Configuration script
  Accessible without login Plain text file queue.php Aux. Configuration script
  Accessible without login Plain text file services.php Aux. Configuration script
  Accessible without login Plain text file session.php Aux. Configuration script

  Files folder image Files (179)  /  database  
File Role Description
Files folder imagefactories (1 file)
Files folder imagemigrations (3 files)
Files folder imageseeders (1 file)

  Files folder image Files (179)  /  database  /  factories  
File Role Description
  Plain text file UserFactory.php Class Class source

  Files folder image Files (179)  /  database  /  migrations  
File Role Description
  Plain text file 0001_01_01_000000_create_users_table.php Class Class source
  Plain text file 0001_01_01_000001_create_cache_table.php Class Class source
  Plain text file 0001_01_01_000002_create_jobs_table.php Class Class source

  Files folder image Files (179)  /  database  /  seeders  
File Role Description
  Plain text file DatabaseSeeder.php Class Class source

  Files folder image Files (179)  /  docker  
File Role Description
Files folder imagenginx (1 file)
Files folder imagephp (1 file)
Files folder imagesupervisor (1 file)
  Accessible without login Plain text file dockerfile Data Auxiliary data
  Accessible without login Plain text file dockerfile-deploy Data Auxiliary data
  Accessible without login Plain text file dockerfile-php-fpm-nginx-mysql Data Auxiliary data
  Accessible without login Plain text file dockerfile-php-fpm-nginx-pgsql Data Auxiliary data
  Accessible without login Plain text file dockerfile-php-laravel Data Auxiliary data
  Accessible without login Plain text file entrypoint.sh Data Auxiliary data

  Files folder image Files (179)  /  docker  /  nginx  
File Role Description
  Accessible without login Plain text file default.conf Data Auxiliary data

  Files folder image Files (179)  /  docker  /  php  
File Role Description
  Accessible without login Plain text file extra.ini Data Auxiliary data

  Files folder image Files (179)  /  docker  /  supervisor  
File Role Description
  Accessible without login Plain text file supervisord.conf Data Auxiliary data

  Files folder image Files (179)  /  k8s  
File Role Description
  Accessible without login Plain text file deployments.yml Data Auxiliary data

  Files folder image Files (179)  /  lang  
File Role Description
Files folder imageen (4 files)
Files folder imagept_BR (4 files)

  Files folder image Files (179)  /  lang  /  en  
File Role Description
  Accessible without login Plain text file auth.php Aux. Configuration script
  Accessible without login Plain text file pagination.php Aux. Configuration script
  Accessible without login Plain text file passwords.php Aux. Configuration script
  Accessible without login Plain text file validation.php Aux. Configuration script

  Files folder image Files (179)  /  lang  /  pt_BR  
File Role Description
  Accessible without login Plain text file auth.php Aux. Configuration script
  Accessible without login Plain text file pagination.php Aux. Configuration script
  Accessible without login Plain text file passwords.php Aux. Configuration script
  Accessible without login Plain text file validation.php Aux. Configuration script

  Files folder image Files (179)  /  public  
File Role Description
Files folder imagebuild (1 file)
  Accessible without login Plain text file .htaccess Data Auxiliary data
  Accessible without login Plain text file index.php Example Example script
  Accessible without login Plain text file robots.txt Doc. Documentation

  Files folder image Files (179)  /  public  /  build  
File Role Description
  Accessible without login Plain text file manifest.json Data Auxiliary data

  Files folder image Files (179)  /  reports  
File Role Description
Files folder imageHttp (2 files, 3 directories)
Files folder imageModels (3 files)
Files folder imageProviders (3 files)
Files folder imageServices (3 files)
Files folder image_css (4 files)
Files folder image_icons (2 files)
Files folder image_js (6 files)
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  Http  
File Role Description
Files folder imageControllers (5 files, 1 directory)
Files folder imageMiddleware (3 files)
Files folder imageRequests (4 files, 1 directory)
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  Http  /  Controllers  
File Role Description
Files folder imageAuth (11 files)
  Accessible without login HTML file Controller.php.html Doc. Documentation
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file DashboardController.php.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation
  Accessible without login HTML file ProfileController.php.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  Http  /  Controllers  /  Auth  
File Role Description
  Accessible without login HTML file AuthenticatedSessionController.php.html Doc. Documentation
  Accessible without login HTML file ConfirmablePasswordController.php.html Doc. Documentation
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file EmailVerificationN...Controller.php.html Doc. Documentation
  Accessible without login HTML file EmailVerificationP...Controller.php.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation
  Accessible without login HTML file NewPasswordController.php.html Doc. Documentation
  Accessible without login HTML file PasswordController.php.html Doc. Documentation
  Accessible without login HTML file PasswordResetLinkController.php.html Doc. Documentation
  Accessible without login HTML file RegisteredUserController.php.html Doc. Documentation
  Accessible without login HTML file VerifyEmailController.php.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  Http  /  Middleware  
File Role Description
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file HandleInertiaRequests.php.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  Http  /  Requests  
File Role Description
Files folder imageAuth (3 files)
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file DatabaseRequest.php.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation
  Accessible without login HTML file ProfileUpdateRequest.php.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  Http  /  Requests  /  Auth  
File Role Description
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation
  Accessible without login HTML file LoginRequest.php.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  Models  
File Role Description
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation
  Accessible without login HTML file User.php.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  Providers  
File Role Description
  Accessible without login HTML file AppServiceProvider.php.html Doc. Documentation
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  Services  
File Role Description
  Accessible without login HTML file dashboard.html Doc. Documentation
  Accessible without login HTML file DatabaseService.php.html Doc. Documentation
  Accessible without login HTML file index.html Doc. Documentation

  Files folder image Files (179)  /  reports  /  _css  
File Role Description
  Accessible without login Plain text file bootstrap.min.css Data Auxiliary data
  Accessible without login Plain text file nv.d3.min.css Data Auxiliary data
  Accessible without login Plain text file octicons.css Data Auxiliary data
  Accessible without login Plain text file style.css Data Auxiliary data

  Files folder image Files (179)  /  reports  /  _icons  
File Role Description
  Accessible without login Plain text file file-code.svg Data Auxiliary data
  Accessible without login Plain text file file-directory.svg Data Auxiliary data

  Files folder image Files (179)  /  reports  /  _js  
File Role Description
  Accessible without login Plain text file bootstrap.min.js Data Auxiliary data
  Accessible without login Plain text file d3.min.js Data Auxiliary data
  Accessible without login Plain text file file.js Data Auxiliary data
  Accessible without login Plain text file jquery.min.js Data Auxiliary data
  Accessible without login Plain text file nv.d3.min.js Data Auxiliary data
  Accessible without login Plain text file popper.min.js Data Auxiliary data

  Files folder image Files (179)  /  resources  
File Role Description
Files folder imagecss (1 file)
Files folder imagejs (2 files, 3 directories)
Files folder imageviews (1 file)

  Files folder image Files (179)  /  resources  /  css  
File Role Description
  Accessible without login Plain text file app.css Data Auxiliary data

  Files folder image Files (179)  /  resources  /  js  
File Role Description
Files folder imageComponents (13 files)
Files folder imageLayouts (2 files)
Files folder imagePages (2 files, 2 directories)
  Accessible without login Plain text file app.js Data Auxiliary data
  Accessible without login Plain text file bootstrap.js Data Auxiliary data

  Files folder image Files (179)  /  resources  /  js  /  Components  
File Role Description
  Accessible without login Plain text file ApplicationLogo.vue Data Auxiliary data
  Accessible without login Plain text file Checkbox.vue Data Auxiliary data
  Accessible without login Plain text file DangerButton.vue Data Auxiliary data
  Accessible without login Plain text file Dropdown.vue Data Auxiliary data
  Accessible without login Plain text file DropdownLink.vue Data Auxiliary data
  Accessible without login Plain text file InputError.vue Data Auxiliary data
  Accessible without login Plain text file InputLabel.vue Data Auxiliary data
  Accessible without login Plain text file Modal.vue Data Auxiliary data
  Accessible without login Plain text file NavLink.vue Data Auxiliary data
  Accessible without login Plain text file PrimaryButton.vue Data Auxiliary data
  Accessible without login Plain text file ResponsiveNavLink.vue Data Auxiliary data
  Accessible without login Plain text file SecondaryButton.vue Data Auxiliary data
  Accessible without login Plain text file TextInput.vue Data Auxiliary data

  Files folder image Files (179)  /  resources  /  js  /  Layouts  
File Role Description
  Accessible without login Plain text file AuthenticatedLayout.vue Data Auxiliary data
  Accessible without login Plain text file GuestLayout.vue Data Auxiliary data

  Files folder image Files (179)  /  resources  /  js  /  Pages  
File Role Description
Files folder imageAuth (6 files)
Files folder imageProfile (1 file, 1 directory)
  Accessible without login Plain text file Dashboard.vue Data Auxiliary data
  Accessible without login Plain text file Welcome.vue Data Auxiliary data

  Files folder image Files (179)  /  resources  /  js  /  Pages  /  Auth  
File Role Description
  Accessible without login Plain text file ConfirmPassword.vue Data Auxiliary data
  Accessible without login Plain text file ForgotPassword.vue Data Auxiliary data
  Accessible without login Plain text file Login.vue Data Auxiliary data
  Accessible without login Plain text file Register.vue Data Auxiliary data
  Accessible without login Plain text file ResetPassword.vue Data Auxiliary data
  Accessible without login Plain text file VerifyEmail.vue Data Auxiliary data

  Files folder image Files (179)  /  resources  /  js  /  Pages  /  Profile  
File Role Description
Files folder imagePartials (3 files)
  Accessible without login Plain text file Edit.vue Data Auxiliary data

  Files folder image Files (179)  /  resources  /  js  /  Pages  /  Profile  /  Partials  
File Role Description
  Accessible without login Plain text file DeleteUserForm.vue Data Auxiliary data
  Accessible without login Plain text file UpdatePasswordForm.vue Data Auxiliary data
  Accessible without login Plain text file UpdateProfileInformationForm.vue Data Auxiliary data

  Files folder image Files (179)  /  resources  /  views  
File Role Description
  Accessible without login Plain text file app.blade.php Aux. Configuration script

  Files folder image Files (179)  /  routes  
File Role Description
  Plain text file auth.php Class Class source
  Accessible without login Plain text file console.php Example Example script
  Plain text file web.php Class Class source

  Files folder image Files (179)  /  tests  
File Role Description
Files folder imageFeature (2 files, 1 directory)
Files folder imageUnit (1 file)
  Plain text file TestCase.php Class Class source

  Files folder image Files (179)  /  tests  /  Feature  
File Role Description
Files folder imageAuth (6 files)
  Plain text file ApplicationTest.php Class Class source
  Plain text file ProfileTest.php Class Class source

  Files folder image Files (179)  /  tests  /  Feature  /  Auth  
File Role Description
  Plain text file AuthenticationTest.php Class Class source
  Plain text file EmailVerificationTest.php Class Class source
  Plain text file PasswordConfirmationTest.php Class Class source
  Plain text file PasswordResetTest.php Class Class source
  Plain text file PasswordUpdateTest.php Class Class source
  Plain text file RegistrationTest.php Class Class source

  Files folder image Files (179)  /  tests  /  Unit  
File Role Description
  Plain text file ExampleTest.php Class Class source

The PHP Classes site has supported package installation using the Composer tool since 2013, as you may verify by reading this instructions page.
Install with Composer Install with Composer
 Version Control Unique User Downloads Download Rankings  
 100%
Total:14
This week:14
All time:11,441
This week:3Up