数据库操作日志并通过日志进行不同数据库的备份
来源:互联网 发布:开放教育与网络教育 编辑:程序博客网 时间:2024/06/13 07:38
$_POST['translate'] = 'insert'; //代表添加操作
$str = json_encode($_POST)."\n";//json数据
$dir = '../ceshi'; //操作日志所在路径
$dir_arr = scandir($dir); //读取目录
$k = count($dir_arr)-1; //最后一个文件
$varr = 5; //每个日志文件存储条数
if($k>1){ //日志路径有文件
$varr = count(file($dir.'/'.$dir_arr[$k])); //读取最后一个文件判断条数
}
if($varr==5||$k<=1){ //如果等于设定条数或者没有文件存在创建新文件并写入内容
file_put_contents("../ceshi/".time().".txt",$str);
}else{ //有文件并且小于设定条数追加进文件
file_put_contents($dir.'/'.$dir_arr[$k],$str,FILE_APPEND);
}
//------其他操作雷同
$dir = '../ceshi'; //日志路径---与你所设定的日志路径相同
$dir_arr = scandir($dir); //读取目录
$len = count($dir_arr)-1; //留最后一个文件
for($i=2;$i<$len;$i++){
$marr = file($dir.'/'.$dir_arr[$i]); //读取文件
//unlink($dir.'/'.$dir_arr[$i]); //删除文件
$narr['insert'] = array();
$narr['update'] = array();
$narr['remove'] = array();
foreach($marr as $v){
$s = json_decode($v,true);
$k = $s['translate']; //操作类型
$t = $s['table']; //操作的哪一个表
unset($s['translate']);
unset($s['table']);
$narr[$k][$t][] = $s; //重新赋值
}
//添加操作
foreach($narr['insert'] as $key => $val){
echo $key.'-----';
$str = array(); //$key 操作的表名
foreach($val as $k => $v){ //拼接字符串数据
foreach($v as $kk => $vv){
$vi[$kk] = "'".$vv."'";
}
$str[] = '('.implode(',',$vi).')';
}
echo implode(',',$str).'<br />'; //最终拼接
//--------执行sql语句复制---------//
}
//修改操作
foreach($narr['update'] as $key => $val){
echo $key.'-----';
foreach($val as $v){
echo $v['upid'].'<br />';
unset($v['upid']);
var_dump($v);
}
//--------执行sql语句复制---------//
}
//删除操作
foreach($narr['remove'] as $key => $val){
echo $key.'-----';
$id = array();
foreach($val as $v){
$id[] = $v['id'];
}
if(count($id)==1){
echo $id['0']; //一个id等于号删除
}else{
echo '('.implode(',',$id).')<br />';
}
//--------执行sql语句复制---------//
}
}
- 数据库操作日志并通过日志进行不同数据库的备份
- windows中定时备份数据库并发送备份的日志
- 备份数据库日志收缩数据库
- 备份数据库日志压缩数据库
- 操作数据库表,并作日志记录。
- 通过日志恢复数据库
- 通过日志恢复数据库
- 通过日志恢复数据库
- 通过日志恢复数据库
- 通过日志恢复数据库
- 通过日志恢复数据库
- 通过日志恢复数据库
- 通过日志恢复数据库
- mysql binlog 日志 --- 数据库的备份
- MySQL:监控慢日志、错误日志、备份数据库的脚本
- 自动备份mysql数据库,并清空log日志数据
- mysqldump定时备份数据库,形成压缩文件,并记录dump日志
- DB2备份+日志恢复并前滚数据库
- LeetCode-----53. Maximum Subarray(最大子集合)
- lower_bound和upper_bound的区别
- 如何为VPN选择合适的动态密码双因素认证方案
- 简易小游戏扫雷——C语言编程实现
- JavaScript事件 DOMNodeInserted DOMNodeRemoved
- 数据库操作日志并通过日志进行不同数据库的备份
- shellcode转换
- javaWeb实现裁剪图片上传整套方案
- 一心多用多线程-线程创建的三种方式
- JSPatch 源码解读 及使用
- android项目中values中ids.xml的作用
- linux初学
- Dashboard部署
- centos 6.5 安装weixin