Paket ini menyediakan manajer cadangan basis data tanpa kerangka kerja untuk membuang dan memulihkan basis data dari S3, Dropbox, FTP, SFTP, dan Rackspace Cloud.
gunakan versi 2+ untuk >=PHP 7.3
gunakan versi 1 untuk <PHP 7.2
Tonton tur video yang menunjukkan tindakan driver Laravel untuk memberi Anda gambaran tentang apa yang mungkin dilakukan.
mendukung MySQL
dan PostgreSQL
kompres dengan Gzip
kerangka-agnostik
konfigurasi sederhana yang mati
Pengemudi Laravel
Pengemudi Symfony
Manajer Pencadangan Basis Data
Daftar isi
Cepat dan Kotor
Persyaratan
Instalasi
Penggunaan
Pedoman Kontribusi
Pemelihara
Istirahat Kompatibilitas Mundur
Lisensi
Konfigurasikan database Anda.
// config/database.php'development' => ['type' => 'mysql','host' => 'localhost','port' => '3306','user' => 'root',' pass' => 'password','database' => 'test',// Jika singleTransaction disetel ke true, flag --single-transcation akan disetel.// Ini berguna pada database transaksional seperti InnoDB.// http://dev.mysql.com/doc/refman/5.7/en/mysqldump.html#option_mysqldump_single-transaction'singleTransaction' => false, // Jangan membuang tabel yang diberikan // Tetapkan hanya nama tabel, tanpa nama database // Contoh: ['tabel1', 'tabel2']// http://dev.mysql.com/doc/refman/5.7/en/mysqldump.html#option_mysqldump_ignore-table'ignoreTables' => [],// menggunakan ssl untuk terhubung ke database Anda - dukungan ssl aktif (hanya mysql ):'ssl'=>false,// tambahkan opsi tambahan ke perintah dump (seperti '--max-allowed-packet')'extraParams'=>batal, ], 'produksi' => ['type' => 'postgresql','host' => 'localhost','port' => '5432','user' => 'postgres','pass' => 'kata sandi' ,'database' => 'uji', ],
Konfigurasikan sistem file Anda.
// config/storage.php'local' => ['type' => 'Lokal','root' => '/path/ke/working/directory', ],'s3' => ['type' => 'AwsS3','key' => '','secret' => '','region' => 'us-east-1','version' = > 'terbaru','bucket' => '','root' => '','use_path_style_endpoint' => salah, ],'b2' => ['type' => 'B2','key' => '','accountId' => '','bucket' => '', ],'gcs' => ['type' => 'Gcs','key' => '','secret' => '','version' => 'terbaru','bucket' => '', 'akar' => '', ],'rackspace' => ['type' => 'Rackspace','username' => '','key' => '','container' => '','zone' => '',' akar' => '', ],'dropbox' => ['type' => 'DropboxV2','token' => '','key' => '','secret' => '','app' => '',' akar' => '', ],'ftp' => ['ketik' => 'Ftp','host' => '','nama pengguna' => '','kata sandi' => '','root' => '',' port' => 21,'pasif' => benar,'ssl' => benar,'timeout' => 30, ],'sftp' => ['ketik' => 'Sftp','host' => '','nama pengguna' => '','kata sandi' => '','root' => '',' port' => 21,'timeout' => 10,'privateKey' => '', ],'flysystem' => ['type' => 'Flysystem','name' => 's3_backup',//'prefix' => 'upload',],'doSpaces' => ['type' => 'AwsS3','key' => '','secret' => '','region' => '','bucket' => '','root' => '','endpoint' => '','use_path_style_endpoint' => salah, ],'webdav' => ['type' => 'Webdav','baseUri' => 'http://myserver.com','userName' => '','password' => '','prefix ' => '', ],
Cadangkan ke/pulihkan dari database apa pun yang dikonfigurasi.
Cadangkan database pengembangan ke Amazon S3
. Jalur pencadangan S3 pada akhirnya akan menjadi test/backup.sql.gz
, ketika gzip
selesai menggunakannya.
gunakan BackupManagerFilesystemsDestination;$manager = memerlukan 'bootstrap.php';$manager->makeBackup()->run('development', [Tujuan baru('s3', 'test/backup.sql')], 'gzip') ;
Cadangkan ke/pulihkan dari sistem file apa pun yang dikonfigurasi.
Pulihkan file database test/backup.sql.gz
dari Amazon S3
ke database development
.
$manager = memerlukan 'bootstrap.php';$manager->makeRestore()->run('s3', 'test/backup.sql.gz', 'development', 'gzip');
Paket ini tidak memungkinkan Anda membuat cadangan dari satu jenis basis data dan memulihkan ke jenis basis data lainnya. Dump MySQL tidak kompatibel dengan PostgreSQL.
PHP 5.5
Dukungan MySQL memerlukan binari baris perintah mysqldump
dan mysql
Dukungan PostgreSQL memerlukan binari baris perintah pg_dump
dan psql
Dukungan Gzip memerlukan biner baris perintah gzip
dan gunzip
Komposer
Jalankan perintah berikut untuk memasukkan ini melalui Komposer
komposer memerlukan manajer cadangan/manajer cadangan
Kemudian, Anda harus memilih paket yang sesuai untuk adaptor yang ingin Anda gunakan.
# untuk mendukung s3composer memerlukan league/flysystem-aws-s3-v3# untuk mendukung b2composer memerlukan mhetreramesh/flysystem-backblaze# untuk mendukung google cscomposer memerlukan league/flysystem-aws-s3-v2# untuk menginstal driver dropbox v2 yang diinginkan diperlukan spatie/ flysystem-dropbox# untuk menginstal drivercomposer dropbox v2 lama memerlukan srmklive/flysystem-dropbox-v2# untuk mendukung rackspacecomposer memerlukan league/flysystem-rackspace# untuk mendukung sftpcomposer memerlukan league/flysystem-sftp# untuk mendukung webdav (didukung oleh owncloud dan banyak lainnya)composer memerlukan league/flysystem-webdav
Setelah terinstal, paket harus di-bootstrap (konfigurasi awal) sebelum dapat digunakan.
Kami telah memberikan contoh PHP asli di sini.
Bootstrapping yang diperlukan dapat ditemukan pada contoh di sini.
Kami merekomendasikan penggunaan konfigurasi gelandangan yang disertakan dengan paket ini untuk pengembangan dan kontribusi. Cukup instal VirtualBox, Vagrant, dan Ansible lalu jalankan vagrant up
di folder root. Mesin virtual yang dirancang khusus untuk pengembangan paket akan dibuat dan diluncurkan untuk Anda.
Saat berkontribusi harap pertimbangkan pedoman berikut:
Gaya kode adalah PSR-2
Antarmuka TIDAK boleh diberi akhiran Interface
, Traits TIDAK boleh diberi akhiran Trait
.
Semua metode dan kelas harus berisi docblock.
Pastikan Anda mengirimkan tes yang memiliki cakupan minimal 100%. Mengingat kesederhanaan proyek ini, hal ini masuk akal.
Saat merencanakan permintaan tarik untuk menambahkan fungsionalitas baru, sebaiknya kirimkan proposal untuk memastikan kompatibilitas dengan tujuan proyek.
Paket ini dikelola oleh Shawn McCool dan Anda!
Hapus dukungan untuk symfony 2. Khususnya versi symfony/proses <3.x
Paket ini dilisensikan di bawah lisensi MIT. Menjadi liar.