صفحة 1 من 2 12 الأخيرةالأخيرة
النتائج 1 إلى 15 من 17

الموضوع: كود backup للـ MySql

  1. #1

    كود backup للـ MySql



    ممكن كود أقدر من خلاله أخذ باك اب للقاعده ؟؟

    بمعنى اريد اسوي صفحه PHP
    أقدر من خلالها سحب نسخه احتياطيه لقاعده البيانات الموضوع بياناتها فى الملف ؟؟
    أو اجيبها كتمغيرات من ملف الـ CONFIG.php ??

    مين بيفيدنا ؟؟ :shy:







  2. #2
    عضو نشيط
    تاريخ التسجيل
    Feb 2003
    المشاركات
    285


    والله ياليت حتى انا كنت بطرح نفس السؤال

    ياليت الخبراء يفيدونا بصفحة php لاخذ باكب مع تفصيل موجز





    __________________
    KSA
    إختلاف الرأي لايفسد .... قضية

  3. #3
    عضو فعال جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    2,123


    كود PHP:
    <?
          
    include("config.php");
          
    $target="file";
          if(
    $target=="file")
          {
             
    header('Content-Type: application/octetstream');
             
    header('Content-Disposition: filename="نسخة احتياطية.sql"');
             
    $asfile="download";
          }


          
    $crlf="\r\n";



          
    $dump_buffer="";

          
    $tables mysql_query("show tables from $dbname");
          
    $num_tables mysql_num_rows($tables);

          if(
    $num_tables == 0)
          {
             echo 
    "# No Tables Found";
             exit;
          }

          
    $dump_buffer.= "# نسخة احتياطية $crlf";
          
    $dump_buffer.= "# Backup made:$crlf";
          
    $dump_buffer.= "# التاريخ".date("F j, Y, g:i a")."$crlf";
          
    $dump_buffer.= "# اسم القاعدة: $dbname$crlf";
          
    $dump_buffer.= "# الجداول التي تم نسخها : $dbname $crlf";


          
    $i 0;
          while(
    $i $num_tables)
          {
             
    $table mysql_tablename($tables$i);
             
    //echo $table . "<br>";
                
    $dump_buffer.= "# --------------------------------------------------------$crlf";
                
    $dump_buffer.= "$crlf#$crlf";
                
    $dump_buffer.= "# بنية الجدول '$table'$crlf";
                
    $dump_buffer.= "#$crlf$crlf";
                
    $db $table;
                
    $dump_buffer.= get_table_def($table$crlf,$dbname).";$crlf";
                
    $dump_buffer.= "$crlf#$crlf";
                
    $dump_buffer.= "# إرجاع أو إستيراد بيانات الجدول '$table'$crlf";
                
    $dump_buffer.= "#$crlf$crlf";
                
    $tmp_buffer="";
                
    get_table_content($dbname$table00'my_handler'$dbname);
                
    $dump_buffer.=$tmp_buffer;

             
    $i++;
             
    $dump_buffer.= "$crlf";
          }
          echo 
    $dump_buffer;
          exit;

       function 
    get_table_def($table$crlf,$dbname)
       {

          
    $schema_create "DROP TABLE IF EXISTS $table;$crlf";
          
    $db $table;

          
    $schema_create .= "CREATE TABLE $table ($crlf";

          
    $result mysql_query("SHOW FIELDS FROM " .$dbname."."
          
    $table) or die();
          while(
    $row mysql_fetch_array($result))
          {
             
    $schema_create .= "   $row[Field] $row[Type]";

             if(isset(
    $row["Default"]) && (!empty($row["Default"]) || $row["Default"] == "0"))
                
    $schema_create .= " DEFAULT '$row[Default]'";
             if(
    $row["Null"] != "YES")
                
    $schema_create .= " NOT NULL";
             if(
    $row["Extra"] != "")
                
    $schema_create .= $row[Extra]";
             
    $schema_create .= ",$crlf";
          }
          
    $schema_create ereg_replace(",".$crlf."$"""$schema_create);
          
    $result mysql_query("SHOW KEYS FROM " .$dbname."." .
          
    $table) or die();
          while(
    $row mysql_fetch_array($result))
          {
             
    $kname=$row['Key_name'];
             
    $comment=(isset($row['Comment'])) ? $row['Comment'] : '';
             
    $sub_part=(isset($row['Sub_part'])) ? $row['Sub_part'] : '';

             if((
    $kname != "PRIMARY") && ($row['Non_unique'] == 0))
                
    $kname="UNIQUE|$kname";

             if(
    $comment=="FULLTEXT")
                
    $kname="FULLTEXT|$kname";
              if(!isset(
    $index[$kname]))
                 
    $index[$kname] = array();

             if (
    $sub_part>1)
              
    $index[$kname][] = $row['Column_name'] . "(" $sub_part ")";
             else
              
    $index[$kname][] = $row['Column_name'];
          }

          while(list(
    $x$columns) = @each($index))
          {
              
    $schema_create .= ",$crlf";
              if(
    $x == "PRIMARY")
                
    $schema_create .= "   PRIMARY KEY (";
              elseif (
    substr($x,0,6) == "UNIQUE")
                
    $schema_create .= "   UNIQUE " .substr($x,7)." (";
              elseif (
    substr($x,0,8) == "FULLTEXT")
                
    $schema_create .= "   FULLTEXT ".substr($x,9)." (";
              else
                
    $schema_create .= "   KEY $x (";

             
    $schema_create .= implode($columns,", ") . ")";
          }

          
    $schema_create .= "$crlf)";
          if(
    get_magic_quotes_gpc()) {
            return (
    stripslashes($schema_create));
          } else {
            return (
    $schema_create);
          }
       }
       function 
    get_table_content($db$table$limit_from 0$limit_to 0,$handler)
       {
          
    // Defines the offsets to use
          
    if ($limit_from 0) {
             
    $limit_from--;
          } else {
             
    $limit_from 0;
          }
          if (
    $limit_to && $limit_from >= 0) {
             
    $add_query  " LIMIT $limit_from$limit_to";
          } else {
             
    $add_query  '';
          }

          
    get_table_content_fast($db$table$add_query,$handler);

       }

       function 
    get_table_content_fast($db$table$add_query '',$handler)
       {
          
    $result mysql_query('SELECT * FROM ' $db '.' $table $add_query) or die();
          if (
    $result != false) {

             @
    set_time_limit(1200); // 20 Minutes

             // Checks whether the field is an integer or not
             
    for ($j 0$j mysql_num_fields($result); $j++) {
                
    $field_set[$j] = mysql_field_name($result$j);
                
    $type          mysql_field_type($result$j);
                if (
    $type == 'tinyint' || $type == 'smallint' || $type == 'mediumint' || $type == 'int' ||
                   
    $type == 'bigint'  ||$type == 'timestamp') {
                   
    $field_num[$j] = true;
                } else {
                   
    $field_num[$j] = false;
                }
             } 
    // end for

             // Get the scheme
             
    if (isset($GLOBALS['showcolumns'])) {
                
    $fields        implode(', '$field_set);
                
    $schema_insert "INSERT INTO $table ($fields) VALUES (";
             } else {
                
    $schema_insert "INSERT INTO $table VALUES (";
             }

             
    $field_count mysql_num_fields($result);

             
    $search  = array("\x0a","\x0d","\x1a"); //\x08\\x09, not required
             
    $replace = array("\\n","\\r","\Z");


             while (
    $row mysql_fetch_row($result)) {
                for (
    $j 0$j $field_count$j++) {
                   if (!isset(
    $row[$j])) {
                      
    $values[]     = 'NULL';
                   } else if (!empty(
    $row[$j])) {
                      
    // a number
                      
    if ($field_num[$j]) {
                         
    $values[] = $row[$j];
                      }
                      
    // a string
                      
    else {
                         
    $values[] = "'" str_replace($search$replaceaddslashes($row[$j])) . "'";
                      }
                   } else {
                      
    $values[]     = "''";
                   } 
    // end if
                
    // end for

                
    $insert_line $schema_insert implode(','$values) . ')';
                unset(
    $values);

                
    // Call the handler
                
    $handler($insert_line);
             } 
    // end while
          
    // end if ($result != false)

          
    return true;
       }


       function 
    my_handler($sql_insert)
       {
          global 
    $crlf$asfile;
          global 
    $tmp_buffer;

          if(empty(
    $asfile))
             
    $tmp_buffer.= htmlspecialchars("$sql_insert;$crlf");
          else
             
    $tmp_buffer.= "$sql_insert;$crlf";
       }



       function 
    faqe_db_error()
       {
          return 
    mysql_error();
       }



       function 
    faqe_db_insert_id($result)
       {
          return 
    mysql_insert_id($result);
       }

    ?>






    __________________
    htaccess بكل بساطة

    الشفرة الموحدة "يونِكود"

    (إن من مفاسد هذه الحضارة أنها تسمي الاحتيال ذكاءً، والانحلال حرية، و"الرذيلة فناً" والاستغلال معونة) - مصطفى السباعي

  4. #4
    مُجَاهِد سابقاً
    تاريخ التسجيل
    Apr 2004
    المشاركات
    12,000


    رائع أخي الكريم "jadweb.com" ..
    الف شكر لك ..





    __________________
    استخدم خاصية تنبيه المشرفين للضرورة وعند ملاحظة موضوع يخالف قوانين منتديات سوالف وسيتم مراجعة الموضوع او المشاركة المبلغ عنها على الفور

  5. #5
    عضو نشيط
    تاريخ التسجيل
    Feb 2003
    المشاركات
    285


    الف شكر اخي الكريم jadweb.com
    وياليت توضيح ولو بسيط للملف لانه غير مفهوم بعض الشيئ لي
    اللي فهمته انه لاخذ واسترجاع القاعده هل هذا صحيح؟ ... وارجوا توضيح او شرح مبسط للسكربت





    __________________
    KSA
    إختلاف الرأي لايفسد .... قضية

  6. #6
    مُجَاهِد سابقاً
    تاريخ التسجيل
    Apr 2004
    المشاركات
    12,000


    اقتباس المشاركة الأصلية كتبت بواسطة alkokh
    الف شكر اخي الكريم jadweb.com
    وياليت توضيح ولو بسيط للملف لانه غير مفهوم بعض الشيئ لي
    اللي فهمته انه لاخذ واسترجاع القاعده هل هذا صحيح؟ ... وارجوا توضيح او شرح مبسط للسكربت
    ليس ما فهمته اخي الكريم..
    الملف لنسخ (نسخة احتياطية) قاعدة البيانات ..





    __________________
    استخدم خاصية تنبيه المشرفين للضرورة وعند ملاحظة موضوع يخالف قوانين منتديات سوالف وسيتم مراجعة الموضوع او المشاركة المبلغ عنها على الفور

  7. #7


    مشكور أخوي ولكن لدي بعض الإستفسارات

    أولا

    include("config.php");

    كده احنا بنعتمد على المتغيرات اللى في الكونفيق

    طيب

    اعتقد المدخلات بتكون

    1 - السيرفر
    2 - اليوزر
    3 - الباسورد
    4 - اسم القاعده

    وبنفس الترتيب على ما اعتقد

    ممكن تديني المتغيرات الافتراضيه ليهم وكيفيه تعديلهم في التطبيق ^^

    ومشكور على اهتمامك






  8. #8
    عضو فعال جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    2,123


    كود PHP:
    <?php
    ///////////////////////
    //قم بتعديل لبيانات قاعدة البيانات الخاصة بك
      
    $dbhost "localhost";
      
    $dbname "";
      
    $dbuname "";
      
    $ppass "";
    mysql_connect($dbhost,$dbuname,$ppass) or die(" <div align=center dir='rtl'> عفوا القاعدة -- $dbname -- لا يمكن الاتصال بها</div>");
    @
    mysql_select_db"$dbname") or die( " <div align=center dir='rtl'> عفوا القاعدة -- $dbname -- غير صحيحة .</div>");
    /////////////////////
    ?>






    __________________
    htaccess بكل بساطة

    الشفرة الموحدة "يونِكود"

    (إن من مفاسد هذه الحضارة أنها تسمي الاحتيال ذكاءً، والانحلال حرية، و"الرذيلة فناً" والاستغلال معونة) - مصطفى السباعي

  9. #9


    ألف شكر ليك أخوي على المساعده ..
    أثقلت عليك ..






  10. #10
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2004
    المشاركات
    678


    مشكورين

    وكيف استرجع قاعدة البيانات





    __________________
    سبحان الله وبحمده ..... سبحان الله العظيم

    اول موقع متخصص في جمع البرامج المعربة
    الريان نت للبرامج المعربة
    www.ar1ar.com

  11. #11
    عضو فعال جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    2,123


    هناك اكثر من سكريب





    __________________
    htaccess بكل بساطة

    الشفرة الموحدة "يونِكود"

    (إن من مفاسد هذه الحضارة أنها تسمي الاحتيال ذكاءً، والانحلال حرية، و"الرذيلة فناً" والاستغلال معونة) - مصطفى السباعي

  12. #12


    مرحبا..

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/u7/marhoon/html/ramadan/ba.php on line 31
    # No Tables Found

    Line 31 is:
    كود:
    Line 30: $tables = mysql_query("show tables from $dbname"); 
    Line 31: $num_tables = mysql_num_rows($tables);


    يقول الحبيب ما عندي تصريح للمصدر..! أو ما يقدر يحصلة





    __________________
    │║▌║█║▌║▌││║▌║█║▌│║▌║█
    w w w . m a r h o o n s . c o m

  13. #13


    يقول الحبيب ما عندي تصريح للمصدر..! أو ما يقدر يحصلة
    اتوقع الاحتمال الوحيد هو ان القاعده حقتك فاضيه يعني مافيه جداول او ماحددت القاعده بشكا صحيح





    __________________
    موقع رياض القرآن متخصص بالقرآن الكريم
    WwW.Ryadh-Quran.NeT

  14. #14
    عضو فعال جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    2,123


    تأكد من التالي

    كود PHP:
      $dbhost "localhost"
      
    $dbname ""
      
    $dbuname ""
      
    $ppass ""






    __________________
    htaccess بكل بساطة

    الشفرة الموحدة "يونِكود"

    (إن من مفاسد هذه الحضارة أنها تسمي الاحتيال ذكاءً، والانحلال حرية، و"الرذيلة فناً" والاستغلال معونة) - مصطفى السباعي

  15. #15
    عضو نشيط
    تاريخ التسجيل
    Nov 2003
    المشاركات
    127


    الف شكر لك

    وجزاك الله الف خير

    استفدت من هالملف في برنامجي القادم










ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض