mysql 在linux下如何进行指定的数据库定时备份与删除XX天以前的备份文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 在linux下如何进行指定的数据库定时备份与删除XX天以前的备份文件?相关的知识,希望对你有一定的参考价值。

mysql 在linux下如何进行指定的数据库定时备份与删除XX天以前的备份文件?

参考技术A

    参考cron的文档说明,这是linux上的计划任务

    参考mysqldump -D man说明,这是直接输出数据库

    还有使用 mysql -D < bak.sql 请参考mysql命令说明

参考技术B 利用mysql提供的mysqldump进行全量备份,利用二进制进行增量备份,利用主从结构利用从服务器进行备份等等,开自己怎么用了 参考技术C 当然可以了,这个问题是十分有趣的问题, 当你使用Mysql备份的时候,会进入的mysql模式, 而在这里,shell脚本是解决不了这个问题的, 但是我可以解决, 你私信我吧

如何在不停止Mysql服务的情况下,定时备份mysql数据库

下载navicat for mysql,然后按下列图文教程进行:

首先打开需要进行备份的数据库,使之被高亮选中。点击“Schedule”菜单,点击后将出现如下图所示的功能界面:

点击“New Batch Job”,点击后将出现如下图所示的功能界面:

“General”选项卡中显示了指定数据库连接下各个数据库实例中可供使用的JOB,鼠标左键双击可用的JOB,即可使之成为当前即将要创建的Schedule中的JOB,如下图所示:

点击“Save”,点击后会弹出一个名为"Profile Name"的对话框,在此对话框中可以给Schedule一个自定义的名称,名称键入完毕后,点击“OK”。具体操作如下图所示:

点击“Set Task Schedule”按钮,以对计划进行更详细地配置,相关操作所下图所示;如果在点击“Set Task Schedule”按钮的时候提示没有打开Task Scheduler服务,请到操作系统“服务”管理界面打开指定服务即可。

计划设置完毕后,可以点击“Start”按钮,以测试Schedule的运行结果是否正确。


也可以使用BAT批处理来进行自动备份,但是批处理的原理是首先停止MYSQL,然后进行数据库文件复制。但这违反了不停止MYSQL服务的前提。所以这里不细表。

参考技术A 不停止mysql服务的情况下进行定时备份涉及到热备份概念,可以用木浪科技的多备份工具来实现。不仅可以完成自动定时备份,还可以设置按周、天、分钟、实时等功能 参考技术B 备份MySQL数据库可以使用热备份工具。百度一下即可 参考技术C 进入MySQL目录下的bin文件夹

mysqldump -u 用户名 -p 数据库名 > 导出的文件名

C:\Program Files\MySQL\MySQL Server 5.5\bin>mysqldump -u root -p Test > test.sql

Enter password: ********

C:\Program Files\MySQL\MySQL Server 5.5\bin>dir *.sql
驱动器 C 中的卷没有标签。
卷的序列号是 406A-C32E

C:\Program Files\MySQL\MySQL Server 5.5\bin 的目录

2013-01-29 16:34 39,574 test.sql
1 个文件 39,574 字节
0 个目录 5,498,294,272 可用字节

用上面的文件, 把数据, 导入到另外一个数据库上面去.

C:\Program Files\MySQL\MySQL Server 5.5\bin>mysql -u root -p
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 17
Server version: 5.5.29 MySQL Community Server (GPL)

Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database test2;
Query OK, 1 row affected (0.04 sec)

mysql> use test2
Database changed
mysql> source test.sql

......
参考技术D 用mysqldump的命令即可追问

怎么弄?

以上是关于mysql 在linux下如何进行指定的数据库定时备份与删除XX天以前的备份文件?的主要内容,如果未能解决你的问题,请参考以下文章

linux 定时备份mysql数据库

如何在mysql中定时清除所有库中指定的表中的数据,而不用每个库都写一遍定时任务,求大神指点!!!

linux下如何实现mysql数据库每天自动备份定时备份

linux下如何实现mysql数据库每天自动备份定时备份

linux下如何实现mysql数据库每天自动备份定时备份

干货Linux 下如何实现 MySQL 数据库每天自动备份定时备份