Rails 3 백업 백업 데이터 사용

이 편 은 내 가 쓴 것 보다 좋 고, 게다가 더욱 상세 하 다.  http://blog.eddie.com.tw/2011/05/24/backup-your-website/
 
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

좋은 웹페이지 즐겨찾기