thinkphp5 mysql 데이터베이스 복원 실현

4973 단어
데이터베이스 복원은 사실ql 파일에서 명령을 한 줄 한 줄 읽고 실행하기
데이터베이스 파일 데이터베이스를 설정해야 합니다.php, 데이터베이스 이름, 호스트 이름, 사용자 이름, 비밀번호는 여기서 말하지 않겠습니다. 여기서 데이터베이스 연결 파라미터를 설정하라고 했습니다.

'params' => [
//        
'MYSQL_ATTR_USE_BUFFERED_QUERY'=>true, 
]
,

데이터베이스 파일이 비교적 크면 php를 설정해야 합니다.ini 파일, memorylimit= 128M;,여기서는 가능한 한 좀 크게 조절할 수 있다. 그렇지 않으면 분배된 메모리 공간이 부족하다는 것을 잘못 알릴 수 있다
 
 public function restore(){


      $filename="backsql.sql";
      if (file_exists($filename)) {
         $sql_value = "";
         $cg = 0;
         $sb = 0;
         $sqls = file($filename);

         foreach ($sqls as $sql) {
            $sql_value .= $sql;

         }

         $a = explode(";\r
", $sql_value); // ";\r
"
$total = count($a) - 1; for ($i = 0; $i < $total; $i++) { // //halt($a[$i]); if (Db::query($a[$i])!==false) { $cg += 1; } else { $sb += 1; $sb_command[$sb] = $a[$i]; } } echo " , $total$cg$sb "; // if ($sb > 0) { echo "



"; for ($ii = 1; $ii <= $sb; $ii++) { echo "

" . $ii . " ( ):
" . $sb_command[$ii] . "


"; } } }else{ echo "MySQL , !"; } }

 
전재 대상:https://www.cnblogs.com/jcydd/p/7290361.html

좋은 웹페이지 즐겨찾기