Saminnet-Search Article Wiki Forum Blog SNS Cloud
Postgres Backup 2

Postgres Backup 2

バックアップ

同じサーバーを使っている悪い人がいた場合には良くない方法です。

  • PostgreSQLのスーパーユーザーが postgres
  • Railsを動かしているユーザーが hoge
  • プロジェクトの設置場所が ~hoge/rails_root/ とする。
  • プロジェクトのデータベース名は hoge_production_db とする。

backup先を作成する。

% cd ~hoge/rails_root
% mkdir backup
% chmod 777

cronで動かすバックアップ用シェルスクリプトを用意する。postgresql_backup.sh とする。

#!/bin/sh

DATE=`/bin/date '+%Y%m%d-%H%M'`
LOGDIR='/home/hoge/rails_root/backup/'
PREFIX='production_db-'
POSTFIX='.sql'
DATABASENAME='hoge_publication_db'
/usr/bin/pg_dump $DATABASENAME > $LOGDIR$PREFIX$DATE$POSTFIX

シェルスクリプトを設置。

% mv postgresql_backup.sh ~hoge/rails_root/backup
% chmod 755 ~hoge/rails_root/backup/postgresql_backup.sh

cronで動かす。

% sudo su
# su postgres
% crontab -e

たとえば、毎日4時にバックアップするならば以下のように設定する。

0 4 * * * /home/hoge/rails_root/backup/postgresql_backup.sh > /dev/null 2>&1

もし、別サーバーにバックアップ内容をミラーリングしておくならば下記参照。

リストア

データベースごと作り直す。

データベースの作成&読み込み

% sudo su
# su postgres
% createdb --encoding="utf-8" -T template0 hoge_production_db
% psql hoge_production_db
# \i /home/hoge/rails_root/backup/production_db-20XXMMDD-HHMM.sql

Comments   

 
0 #1 Guest 2017-11-06 06:25
I know this if ooff topic but I'm looking into starting my own blog and was curious what all is
needed to get set up? I'm assuming having a blog like yours would cost a pretty penny?
I'm not very web smart so I'm not 100% sure.
Any tips or advice would be greatly appreciated.

Appreciate it

Feel free to surf to my weblog :: click now (Bridgette)
Quote
 

Articles by Date

Category Database

TweetTweet Share on LinkedInShare on LinkedIn Share on Google+Google+ Submit to RedditReddit Publish on WordPress WordPress Send emailSend email