نمایش نتایج: از شماره 1 تا 8 , از مجموع 8

موضوع: بک آپ گیری از دیتابیس های سرور بصورت Dump و انتقال به FTP

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    عضو دائم
    تاریخ عضویت
    Sep 2012
    محل سکونت
    hetzners rack
    نوشته ها
    2,739
    تشکر تشکر کرده 
    2,675
    تشکر تشکر شده 
    6,577
    تشکر شده در
    3,502 پست

    پیش فرض بک آپ گیری از دیتابیس های سرور بصورت Dump و انتقال به FTP

    با سلام خدمت دوستان.

    چندی پیش جهت انجام تنظیمات بک آپ گیری در یکی از سرورهای اصلی ما یک اسکریپت بصورت دستنویس نوشتیم گفتیم خدمت همکاران انتشار دهیم تا استفاده کنند.

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

    ابتدا دو فایل زیر را ایجاد می کنیم :

    کد:
    touch /root/mysql_dump.sh
    touch /root/ftp_upload.sh
    سپس با یک ویرایشگر فایل اول /root/mysql_dump.sh را باز کرده و محتویات زیر را قرار می دهیم :

    کد:
    #!/bin/bash
    
    
    Time=$(date +"%d-%m");
    
    
    cd /var/lib/mysql/
    mkdir /home/dbbacks/
    mkdir /home/dbbacks/backups
    mkdir /home/dbbacks/backups/$Time
    ls -d */ > /home/dbbacks/backups/$Time/db.txt 
    sed -i "s|/||g" /home/dbbacks/backups/$Time/db.txt
    cd /home/dbbacks/backups/$Time
    for user in `/bin/cat /home/dbbacks/backups/$Time/db.txt` ; do mysqldump $user > $user.sql && sh /root/ftp_upload.sh $user ; rm -rf $user.sql ; done
    سپس فایل بعدی /root/ftp_upload.sh را باز کرده و محتویات زیر را قرار می دهیم :

    کد:
    #!/bin/bash
    Time=$(date +"%d-%m");
    cd /home/dbbacks/backups/$Time
    
    
    HOST=123.123.123.123
    USER=usernameftp
    PASS=passwordftp
    
    
    ftp -inv $HOST << EOF
    user $USER $PASS
    
    
    mkdir $Time
    cd $Time
    put $1.sql
    
    
    bye
    EOF
    یک سری توضیحات در مورد محتویات بالا خدمت شما اعلام می کنم:
    1- ابتدا وارد فولدر دیتابیس ها شده که ( شما باید مسیر دیتابیس های خود را اگر تغییر داده باشید در فایل بالا جایگزین کنید)
    2- فولدر های مربوطه در شاخه /home ایجاد کرده تا یک temporary برای export گرفتن و انتقال فایل .sql به ftp ما باشد.
    3-4 بر اساس روز یک فولدر به تاریخ روز_ماه ایجاد کرده و در یک فایل db.txt تمامی دیتابیس های شما را اعمم از دیتابیس mysql قرار می دهد.
    5- سپس از تمامی نام های دیتابیس موجود در db.txt یک export می گیرد و در مسیر temporary ما ذخیره و به ftp ما transfer کرده و delete می کند!

    همانطور که می دانید بیشتر اطلاعات همه وب سایت ها در پایگاه داده ذخیره می گردد لذا بک آپ گیری از دیتابیس ها توسط هر مدیر سرور یک امتیار مثبت برای مدیریت سرور و رمز موفقیت هاستینگ مربوطه می باشد.

    شما می توانید هر چند ساعت یکبار با استفاده از کامند زیر از دیتابیس های خود بک آپ تهیه کنید:

    کد:
    crontab -e
    0 * * * * sh /root/mysql_dump.sh
    این اسکریپت با همکاری دوست عزیزم جناب آقای فخر آبادی آماده شده است.

    این اسکریپت در سی پنل به درستی اجرا می گردد.

    در دایرکت ادمین حتما باید username و password روت mysql server را از فایل /usr/local/directadmin/conf/mysql.conf برداشته و بصورت زیر در فایل زیر قرار دهید:

    nano ~/.my.cnf

    [client]
    user=da_admin
    password=123123123
    در غیر این صورت با ارور عدم دسترسی مواجه خواهید شد!

    موفق باشید.
    ویرایش توسط Yas-Host : October 21st, 2015 در ساعت 01:21

  2. تعداد تشکر ها ازYas-Host به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 6
    آخرين نوشته: November 5th, 2016, 22:46
  2. پاسخ ها: 2
    آخرين نوشته: February 3rd, 2015, 21:09
  3. درخواست: تعمیر یک دیتابیس به صورت خودکار و زمانبندی شده
    توسط python در انجمن دايرکت ادمين DirectAdmin
    پاسخ ها: 4
    آخرين نوشته: August 19th, 2014, 03:56
  4. دیتابیس هایی به صورت cptmpdb_dbname
    توسط shetab در انجمن سی پنل CPanel
    پاسخ ها: 0
    آخرين نوشته: October 20th, 2013, 16:37
  5. حذف رکورد از دیتابیس به صورت ای جکس
    توسط vimax در انجمن اسکریپت های دیگر
    پاسخ ها: 8
    آخرين نوشته: October 8th, 2010, 23:06

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •