sql导出导入备份恢复
来源:互联网 发布:cms监控软件操作说明 编辑:程序博客网 时间:2024/06/06 11:04
public function db_download(){ $filename = I('sql'); //执行资源下载 // header("Content-Type:xls");// 接收类型 header("Content-Disposition:attachment;filename={$filename}");// 接收为 附件 // header("Content-Length:{$filesize}");// 接受大小 readfile("./Public/sql/{$filename}");// 输出文件 }
public function localsql(){ if(!empty($_FILES['sqlpath']['tmp_name'])){ $config = array('savePath' => './Public/sql/','saveRule' => date ('Y-m-d.H-i-s.') .rand(100,999),);import('ORG.Net.UploadFile');$Upload = new UploadFile($config);$rst = $Upload -> uploadOne($_FILES['sqlpath']);if(!$rst){dump( $Upload -> getErrorMsg() );}else{$sqlname = $rst[0]['savename'];$path = './Public/sql/'; $cmd = 'mysql -h'.C('DB_HOST').' -u'.C('DB_USER').' -p'.C('DB_PWD').' '.C('DB_NAME').' < '.$path.$sqlname; exec($cmd,$arr,$flag); unlink($path.$sqlname); if($flag == 0){ $this->redirect('Config/db_recover','',0.01,'<script>alert("导入成功");</script>'); }else{$this->redirect('Config/db_recover','',0.01,'<script>alert("导入失败");</script>'); }} } }
// db恢复 public function db_recover(){ if(!empty($_POST)){ $path = './Public/sql/'; $Back = D('backup'); $id = I('post.id'); $data=$Back->select(); $sqlname = $Back -> where('id = ' . $id) -> getfield('sqlname'); $cmd = 'mysql -h'.C('DB_HOST').' -u'.C('DB_USER').' -p'.C('DB_PWD').' '.C('DB_NAME').' < '.$path.$sqlname; exec($cmd,$arr,$flag); if($flag == 0){ foreach($data as &$v){ $Back->save($v); unset($v); } $this -> redirect('Config/db_recover' , '' , 0.01 , '<script>alert("导入成功");</script>'); }else{ $this -> redirect('Config/db_recover' , '' , 0.01 , '<script>alert("导入失败");</script>'); } }else{ $this -> getdb(1); $this -> getdb(2); $this -> getdb(3); $this -> getdb(4); $this -> getdb(5); $this -> getdb(6); $this -> getdb(7); $this->display(); } }
// 数据库备份 public function db_backup(){ if(!empty($_POST)){ set_time_limit(0); $path = APP_ROOT.'/Public/sql/'; // dump($path); $Back = D('backup'); $_POST['sqlname'] = date('Y-m-d--H-i-s') . '.sql';$cmd = 'mysqldump -h '.C('DB_HOST').' -u'.C('DB_USER').' -p'.C('DB_PWD').' '.C('DB_NAME').' > '.$path.$_POST['sqlname']; exec($cmd,$arr,$flag); if($flag == 0){ $Back -> create(); if( $Back->find( I('post.id') ) ){ $sqlname = $Back -> where('id = ' . I('post.id')) -> getfield('sqlname'); $back = $Back -> where('id = ' . I('post.id')) -> setfield('sqlname' , $_POST['sqlname']); unlink($path.$sqlname); }else{ $back = $Back -> add(); } } if( $back ){ $this -> redirect('Config/db_backup' , '' , 0.01 , '<script>alert("备份成功");</script>'); }else{ $this -> redirect('Config/db_backup' , '' , 0.01 , '<script>alert("备份失败");</script>'); } }else{ $this -> getdb(1); $this -> getdb(2); $this -> getdb(3); $this -> getdb(4); $this -> getdb(5); $this -> getdb(6); $this -> getdb(7); $this->display(); } }
// 获取当前备份 private function getdb($id){ $Back = D('backup'); $assign = 'db'.$id; $sqlname = $Back -> where('id = ' . $id) -> getfield('sqlname'); $this->assign($assign , $sqlname); }
阅读全文
0 0
- sql导出导入备份恢复
- 手工备份恢复--导入导出
- Sqlite数据库导入导出与备份恢复
- mongodb数据导入导出以及备份恢复
- Mongodb数据导入导出以及备份恢复
- Oracle数据库备份和恢复(导出,导入)
- mongodb数据导入导出以及备份恢复
- postgres备份与恢复(导入/导出)
- MongoDB的备份恢复和导入导出
- mongodb数据导入导出以及备份恢复
- Sqlite数据库导入导出与备份恢复
- mongodb数据的导入导出,备份恢复
- mongodb数据导入导出以及备份恢复
- mongodb数据导入导出以及备份恢复
- Oracle的导入导出(备份与恢复)
- mongodb数据导入导出 备份恢复
- ORACLE 数据库导入、导出(备份、恢复)
- mongodb数据导入导出以及备份恢复
- STM32CubeMX+FreeRTOS实验---使用两个实例,共用一个task
- 相对有序排序算法
- ExtJs6学习(一)【ExtJs介绍】
- 使用mybatis分页插件PageHelper5.0.0遇到的问题总结
- Redis 启动多实例
- sql导出导入备份恢复
- js兼容性2
- Vijos 3764 牛奶题
- Android模拟器Genymotion安装apk
- 每日练习20171108
- 【云星数据---大数据部集群署系列004】:zookeeper分布式部署方案
- F2L
- php怎么样提前响应,后续代码在后台继续运行,但是阻塞模式
- 冒泡排序