1g表

每行都有可能被更新,故全表备份

检测备份是否在进行

[root@hadoop1 ~]# netstat --numeric-ports | grep 3306
tcp        0      0 hadoop1:37692           121.110.203.226:3306     ESTABLISHED
您在 /var/spool/mail/root 中有新邮件
[root@hadoop1 ~]#

nload

查当前网速,分析备份时间

2m/s

全表备份不可取

取更新时间戳备份,之后结合主键和更新时间戳还原数据

比较适合上传数据/写的操作,比如删除

[root@hadoop1 bash_app]# ll -as
总用量 68
 4 drwxr-xr-x 2 root root  4096 12月 22 16:50 .
 4 drwxr-xr-x 5 root root  4096 12月 19 10:23 ..
48 -rw-r--r-- 1 root root 46292 12月 22 16:49 ordertest_error_temp.20171222_164940.bak
 0 -rw-r--r-- 1 root root     0 12月 22 16:28 ordertest_error_temp.bak
 4 -rwxr-xr-x 1 root root   257 12月 22 16:49 ordertest_error_temp.bak.sh
 4 -rw-r--r-- 1 root root   332 12月 19 10:44 db_sh_output
 4 -rwxr-xr-x 1 root root   298 12月 19 10:44 mysql.domo.sh
[root@hadoop1 bash_app]# cat ordertest_error_temp.bak.sh
HOST=rm-w2o.mysql.rds.alcs.com
PORT=3306
USER=to17
PASS=t653o
DB=tres_ad
QUERY=`mysql -h$HOST -P$PORT -u$USER -p$PASS $DB << EOF
SELECT * FROM ordertest_error_temp ORDER BY update_time DESC LIMIT 12 ;
exit
EOF`
echo $QUERY
[root@hadoop1 bash_app]# ./ordertest_error_temp.bak.sh > ordertest_error_temp.$(date +"%Y%m%d_%H%M%S").bak
[root@hadoop1 bash_app]# ll -as
总用量 116
 4 drwxr-xr-x 2 root root  4096 12月 22 16:50 .
 4 drwxr-xr-x 5 root root  4096 12月 19 10:23 ..
48 -rw-r--r-- 1 root root 46292 12月 22 16:49 ordertest_error_temp.20171222_164940.bak
48 -rw-r--r-- 1 root root 46264 12月 22 16:51 ordertest_error_temp.20171222_165053.bak
 0 -rw-r--r-- 1 root root     0 12月 22 16:28 ordertest_error_temp.bak
 4 -rwxr-xr-x 1 root root   257 12月 22 16:49 ordertest_error_temp.bak.sh
 4 -rw-r--r-- 1 root root   332 12月 19 10:44 db_sh_output
 4 -rwxr-xr-x 1 root root   298 12月 19 10:44 mysql.domo.sh
[root@hadoop1 bash_app]# head ordertest_error_temp.20171222_164940.bak

错误信息

[root@hadoop1 bash_app]# ./ordertest_error_temp.del.sh
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHEREdd ok_times>=1' at line 1

[root@hadoop1 bash_app]#

[root@hadoop1 bash_app]# echo ' start '$(date +"%Y%m%d_%H%M%S") >> ad_direct_error_temp.del.sh.log;./ad_direct_error_temp.del.sh; cat ad_direct_error_temp.del.sh >> ad_direct_error_temp.del.sh.log;echo ' end '$(date +"%Y%m%d_%H%M%S") >> ad_direct_error_temp.del.sh.log;

[root@hadoop1 bash_app]# echo ' start '$(date +"%Y%m%d_%H%M%S") >> ordertest_error_temp.del.sh.log;./ordertest_error_temp.del.sh; cat ordertest_error_temp.del.sh >> ordertest_error_temp.del.sh.log;echo ' end '$(date +"%Y%m%d_%H%M%S") >> ordertest_error_temp.del.sh.log;

再写入定时任务

 #危险动作
*/ * * * * cd /home/data/xl_project/bash_app;echo ' start '$(date +"%Y%m%d_%H%M%S") >> ordertest_error_temp.del.sh.log;./ordertest_error_temp.del.sh; cat ordertest_error_temp.del.sh >> ordertest_error_temp.del.sh.log;echo ' end '$(date +"%Y%m%d_%H%M%S") >> ordertest_error_temp.del.sh.log;

上述任务没有执行,路径:待执行文件路径和执行待执行文件的路径;

2个路径,解决问题。

实现了目的,进一步优化:将日志逻辑放入.sh中;

定时任务 bash 对远程数据库 备份 读写的更多相关文章

  1. 关于SQL Server 2005 的自动远程数据库备份

    原文:(原创)关于SQL Server 2005 的自动远程数据库备份 由于项目需要,需要对目标服务器上的数据库每天进行备份并转移,查阅网上的一些帮助,结合自己的实际需要,写了这篇文章,希望对有同样需 ...

  2. (原创)关于SQL Server 2005 的自动远程数据库备份

    由于项目需要,需要对目标服务器上的数据库每天进行备份并转移,查阅网上的一些帮助,结合自己的实际需要,写了这篇文章,希望对有同样需求的朋友有所帮助.目标服务器:192.168.1.197,备份服务器:1 ...

  3. 远程数据库备份到本地出现“Access denied for user 'root'@localhost(using password: YES)”的问题

    由于另外一个人在用远程的server做测试,导致我访问这个远程机器的mysql提示“too many connections”的问题,于是想到干脆把数据库当下来做测试好了,结果用heidiSQLs进行 ...

  4. SQL Server远程数据库操作(备份、还原等)

    · SQL Server远程数据库备份到本地: exp sauser/sapassword@192.168.8.233:1433/DBName file=d:/backup.dmp OWNER=sum ...

  5. shell 读写远程数据库

    http://www.cnblogs.com/wangkangluo1/archive/2012/04/27/2472898.html 利用Shell脚本实现远程MySQL自动查询 目的:对定时任务对 ...

  6. 定时任务--mysql数据库备份

    vim /home/back.sh #!/bin/bash USER="******" PASSWORD="******" DATABASE="*** ...

  7. Sqlserver2005手动备份远程数据库到本地数据库方法

    1,在本地数据库中新建一个数据库名,如local 选中local,鼠标右键,任务,导入数据 2下一步: 注意:服务器名称写远程连接的主机的IP, 数据库选中你要备份的远程数据库. 3下一步: 注意:服 ...

  8. mysql window系统备份远程数据库到本地

    使用方法:创建test.bat文件,保存以下内容,修改配置后双击打开 @echo off REM 声明采用UTF-8编码 chcp echo. echo MySQL数据库备份脚本 echo. echo ...

  9. mysql 数据库备份 -- (定时任务)

    场景: 我们经常需要对数据库备份 方式一:mysql 数据备份方式 在linux 备份方式  通常采用 mysqldump -uroot -ppassword  --database 数据库名 > ...

随机推荐

  1. Python能干啥?

    Python之py9 Python之py9-录音自动下载 Python之py9-py9作业检查 Python之py9-py9博客情况获取 Python之py9-微信监控获取mp3_url Python ...

  2. utf-8 下汉字为什么需要三个字节

    Unicode 十六进制码点范围 --> UTF-8 二进制0000 0000 - 0000 007F --> 0xxxxxxx 0000 0080 - 0000 07FF --> ...

  3. 根据不同的产品id获得不同的下拉选项 (option传多值)

    <td> 没有 value 所以要在<td>里面加上input  同时text 为hidden这样就不会显示value的值 <td><select id='g ...

  4. vs2017编译boost 1.70.0

    目前最新版本的boost库是1.70.0.现在在学习使用cinatra搭建c++的http服务器,需要用到boost库中的asio,下载了一下最新版本的boost库,捣鼓了半天. 1.下载 boost ...

  5. jquery版本的问题造成第二次全选无效

    注意:第一种方式点击全选按钮 第一次全选有用第二次全选无效.因为jquery1.7以上的版本用此方法只能第一次好用,第二次就会失效,用第二种方式解决

  6. PTA 02-线性结构3 Reversing Linked List (25分)

    题目地址 https://pta.patest.cn/pta/test/16/exam/4/question/664 5-2 Reversing Linked List   (25分) Given a ...

  7. 【2018 Multi-University Training Contest 4】

    01: 02:https://www.cnblogs.com/myx12345/p/9407551.html 03: 04:https://www.cnblogs.com/myx12345/p/940 ...

  8. 《TCP/IP详解卷1:协议》——第2章:链路层(转载)

    1.引言 从图1-4可以看出,在TCP/IP协议族中,链路层主要有三个目的: (1)为IP模块发送和接收IP数据报: (2)为ARP模块发送ARP请求和接收ARP应答. (3)为RARP发送RARP请 ...

  9. php之ThinkPHP的memcached类的修改

    php之ThinkPHP的memcached类的修改 在Think\Cache\Driver\Memcached.class.php中,增加方法获取错误信息的方法,方便调试, public funct ...

  10. windows7 下安装使用memcached(二)

    Memcached 安装使用 本地环境:Windows7 64位web环境:wamp集成环境,php版本:PHP Version 7.1.17 学习参考网站: RUNOOB.COM官网  http:/ ...