Rails 3 백업 백업 데이터 사용
backup 매우 강력 한 백업 도구 로 데이터베이스 와 파일 을 백업 하 는 데 매우 편리 하 다. 먼저 지원 상황 을 살 펴 보 자.
백업 지원: 데이터베이스, 단일 파일, 전체 디 렉 터 리
운영 체제:
UNIX - like (현재 윈도 우즈 는 지원 되 지 않 음)
데이터베이스: MySQL, PostgreSQL, MongoDB, Redis
파일 저장 서비스: Amazon S3, Rackspace Cloud Files, Dropbox
기타 백업 방식: FTP, SFTP, SCP, RSync
백업 성공 여부 알림: Email, Twitter, Campfire
조건 이 제한 되 어 있 기 때문에 저 는 FTP 방식 의 백업 만 보 여 드 리 겠 습 니 다. 설정 은 매우 간단 합 니 다.
# , backup:
$ gem install backup
# :
$ backup generate --databases='mysql' --archives --storages='ftp' --compressors='gzip' --path='config'
config 디 렉 터 리 에서 생 성 된 config. rb 를 backup. rb 로 바 꿉 니 다. 제 설정 은 다음 과 같 습 니 다.
database_yml = File.expand_path("../config/database.yml", __FILE__)
RAILS_ENV = ENV['RAILS_ENV'] || 'development'
require 'yaml'
config = YAML.load_file(database_yml)
Backup::Model.new(:my_backup, 'my backup') do
archive :my_archive do |archive|
archive.add File.expand_path("./public/system/")
end
database MySQL do |db|
db.name = config[RAILS_ENV]["database"]
db.username = config[RAILS_ENV]["username"]
db.password = config[RAILS_ENV]["password"]
db.host = config[RAILS_ENV]["host"]
db.port = config[RAILS_ENV]["port"]
db.socket = config[RAILS_ENV]["socket"]
db.skip_tables = ['sessions']
db.additional_options = ['--quick', '--single-transaction']
end
store_with FTP do |server|
server.username = 'test'
server.password = 'test'
server.ip = '192.168.1.101'
server.port = 21
server.path = '~/backups/'
server.keep = 5
end
compress_with Gzip do |compression|
compression.best = true
compression.fast = false
end
end
설명: 1. public / system / 아래 는 paperclip 이 올 린 그림 입 니 다. 2. FTP 설정 정 보 는 데이터베이스 설정 처럼 다른 yml 파일 에 설정 하 는 것 이 좋 습 니 다. 또한 이 파일 은 버 전 관리 시스템 에 넣 지 마 십시오. 저 는 테스트 일 뿐 이 므 로 괜 찮 습 니 다.
lib / tasks 디 렉 터 리 에 새로 만 든 bakcup. rake 는 다음 과 같 습 니 다.
namespace :db do
desc "My Backup"
task :backup do
sh "backup perform --trigger my_backup --config_file 'config/backup.rb'"
end
end
프로젝트 루트 디 렉 터 리 에서 이 명령 을 실행 하여 백업 합 니 다:
$ rake db:backup
배합 whenever 자동 백업 효과 가 더 좋 습 니 다!
이 gem 은 실제로 rails 를 대상 으로 개발 한 것 이 아니 라 명령 행 방식 으로 시스템 의 데이터 베이스 와 파일 을 백업 할 수 있 기 때문에 백업 하고 싶 은 모든 것 을 백업 할 수 있 습 니 다.
주요 참고:
https://github.com/meskyanichi/backup/wiki
http://erik.debill.org/2011/03/26/csing-backup-with-rails
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Redis 해시에 대한 완벽한 가이드변경 가능하므로 필요에 따라 쉽게 변경하고 업데이트할 수 있습니다. Redis 해시는 구조가 평평하므로 JSON에서와 같이 여러 수준을 가질 수 없습니다. redis 해시의 명명 규칙은 hash:key 로 입력되므로...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.