انجمن های گفتگوی جامعه کاربران لینوکس استان یزد
18 شهريور 1389,ساعت 12:48:15 *
خوش آمدید، مهمان - لطفا برای ثبت نام اینجا و یا برای ورود اینجا را کلیک کنید.
آیا هنوز ایمیل فعال سازی حساب کاربری برای ما ارسال نشده است؟

لطفا برای ورود نام کاربری و رمز عبورتان را وارد نمایید
اخبار: كدام موضوع لينوكس شما را بيشتر جذب ميكند؟
 
   فهرست   راهنمايي جستجو تقویم ورود عضويت  
صفحه: [1]
  چاپ صفحه  
نويسنده موضوع: روش Backup and restore در postgersql که به صورت خلاصه اورده ام  (دفعات بازدید: 1217 بار)
SMS
کاربر دائمی
*****
آنلاین آنلاین

جنسيت : پسر
تعداد ارسال: 810

تشكر
-اهدا شده: 289
-دريافت شده: 262



WWW
« : 08 آبان 1388,ساعت 20:58:50 »

چند وقت پیشتر ها یه مشکلی پیدا کرده بودم با IBSng که مجبور شدم از دیتابیس ان بک آپ بگیرم مطالبی که در ان موقع یادگرفتم را در اینجا برای دوستان می اورم (در صورتی که به دردمی خوره مقاله اونو برای قرار دادن روی سایت بفرستم)

 توضیح اینکه در صورتی که از روش اسکریپت نسخه پشتیبان را گرفتید باید با اسکریپت باز خوانی کنید. به صورتی که ابتدا نام اسکریپ restore  را در خط فرمان می نویسید سپس با یک فاصله نام فایل خروجی از اسکریپت بک آپ
و در صورتی که باروش دستی این کار را کردید به روش دستی آن را برگردانید

Backup

   1. Backup with ""pg_dump"" command (Best method)

      $pg_dump -U {user-name} {source_db} -f {dumpfilename.sql}

For example :

     pg_dump –U ibs ibs –f /home/backup/pgbackup.sql

   2. Backup with script and out format (c,t,p)

#!/bin/sh

DATABASE=ibs

PGUSER=ibs

BACKUPDIR=/root

echo "Backup database $DATABASE."

bufilename=$BACKUPDIR/backup_`date '+%Y%m%d'`.gz

pg_dump --file=$bufilename --format=t --username=$PGUSER --password $DATABASE

echo "Done."


Restore
1-   Restore with ""psql"" command (best method)
Step 1: Stop ibs Service
   service ibs stop
Step 2: Set Password for postgres user
   passwd postgres
Step 3: Remove old DB
   dropdb -U postgres -W -i ibs
   ""-U or --username=USERNAME""
    "" -W or --password""
   ""-i or --interactive""
Step 4: login to postgres
   su - postgres
Step 5: Create DB ibs
     createdb ibs
Step 6: Restore DB with psql
   
   psql -U {user-name} -d {desintation_db}-f {dumpfilename.sql}

   Method 1:
   psql –U ibs –d ibs –f /home/backup/pgbackup.sql

   Method 2: (Best method)
$exit
   Psql –U ibs ibs
   $\i /home/backup/pgbackup.sql

2-   Restore with script
#!/bin/sh

DATABASE=ibs
PGUSER=ibs
PGPASSWORD=??????

if [ $# -ne 1 ] || [ ! -f $1 ]
  then
    echo "Usage: $0 <backupfile>"
    exit 1
fi

bufilename=$1
echo "Dropping database $DATABASE"
dropdb -U $PGUSER $DATABASE
echo "Creating database $DATABASE"
createdb -U $PGUSER $DATABASE
echo "Restoring database $DATABASE from $bufilename"
pg_restore --verbose  --username=$PGUSER --dbname=$DATABASE --format=t $bufilename
echo "Done!"

مشاهده كاربراني كه از این پست تشكر كرده اند:

lord.t

براي اين پست, 1 كاربر تشكر كرده اند
خارج شده است

یا مهدی ادرکنی

پایگاه تخصصی شبکه و وایرلس
www.iranwireless.ir
دوستان برای تقویت این پایگاه هم همکاری نمایند.
lord.t
مدیر انجمن ها
کاربر حرفه ای
*****
آفلاین آفلاین

جنسيت : پسر
تعداد ارسال: 407

تشكر
-اهدا شده: 249
-دريافت شده: 245



« پاسخ #1 : 08 آبان 1388,ساعت 22:10:28 »

با سلام

حتما بفرستید...

موفق باشید
خارج شده است
صفحه: [1]
  چاپ صفحه  
 
پرش به :  

Powered by SMF 1.1.11 | SMF © 2006, Simple Machines LLC | Developed by Aftab Javid Pars | Hosted by Dibagroup