首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux实现MySQL数据数据自动备份,并定期删除以前备份文件

虽说还没到正式工作坏境中,但是看到前几天顺丰快递的删库事件,emmm...打算弄个脚本实现MySQL自动备份,好歹省心点,从网上查了教程,亲身试验有效后,做个教程,以飨读者! 1....首先,明确MySQL的备份命令: mysqldump 这里主要有两种写法,但原理相同: 写法一 备份: mysqldump -uusername -ppassword database_name > /...然后弹出两行警告:没关系的,这是MySQL警告我们明文使用了密码,哈哈。灭有关系滴。 这个时候我们切换到/backup目录下,查看脚本是否执行成功! ?...这样定期数据备份就完成了。 6....定期删除备份文件 只是一味地备份是不行的,磁盘再大,也有用完的时候,况且保存很久以前的数据也没有任何意义,我们需要备份的是近期最新的数据,所以定期删除文件就很有必要了 定期删除,我们只需要在脚本文件中添加以下命令

2.3K30
您找到你想要的搜索结果了吗?
是的
没有找到

mysql逻辑删除案例_实现数据逻辑删除的一种方案

什么是逻辑删除 所谓逻辑删除是指数据已经“不需要”了,但是并没有使用delete语句将这些数据真实的从数据库中删除,而只是用一个标志位将其设置为已经删除。...为什么需要逻辑删除数据进行逻辑删除,一般存在以下原因: 防止数据删除,不能找回数据; 这些数据还具有一定的商业价值,比如用户的注册信息; 虽然这些数据可以删除,但是这些数据还有关联数据,这些关联数据不能删除...如果有级联数据,也需要进行删除备份。不然数据的完整性就不存在了。 使用MyBatis-Plus实现逻辑删除 这边,我们使用MyBatis-Plus的逻辑删除功能来实现下上面介绍的方案一。...但是需要我们注意以下几点: 开启逻辑删除功能后,MP在删除、查询和更新时会自动加上条件deleted=0,也就是只对没有删除数据进行操作; 虽然MP对开启逻辑删除的表的插入操作没什么限制,但是还是建议在建表时...,对deleted字段做默认限制,默认为0(未删除),插入数据时这个值可以不用设置; 对于自己在xml文件中定义的接口方法,MP是不会自动对其开启逻辑删除功能的,需要我们自己维护逻辑删除功能; 查找:

2.2K60

Tomcat 日志自动删除实现

因此写个脚本每天定时去删除5天前(根据实际情况而定)的日志文件。 编写脚本 1.写一个/usr/local/script/cleanTomcatlog.sh脚本 #!...crontab -l 列出时间表; crontab -e编辑时间表; crontab -d删除时间表; ​ “-l”没什么可说的,就是一个查看而已; “-e”是编辑,和vi没什么差别(其实就是用vi编辑一个特定文件...); “-d”基本不用,因为它把该用户所有的时间表都删除了,一般都是用“-e”编辑把不要了的时间表逐行删除; ​ 那到底该如何编辑呢? ​...*" -exec rm -rf {} \; ​ 查找出符合条件的日志文件并删除所有的时间表都删除了,一般都是用“-e”编辑把不要了的时间表逐行删除

2.2K10

Mysql 实现多种逻辑删除方案

Mysql 实现多种逻辑删除方案 新增逻辑删除字段方式 多deleted值 deleted: 0 代表未删除删除时把deleted赋值为时间戳UNIX_TIMESTAMP(NOW()) 采用备份表方式...在实际的项目开发中,对于某些业务数据,一般都不会采用物理删除的方式,毕竟在数据是很宝贵了,所以也就有了逻辑删除的方式出现了。...如下图,artifact_02,已经被删除掉了,但是因为表结构设计了联合索引,因此这条记录也将无法再添加回来了,因此这种情况只能满足删除,但无法实现同一数据的再次新增。...还是以artifact表为例:这里要实现了逻辑删除,我将新建一张artifact_bankend表,用来存储要删除数据。...原始表不会包含删除数据,有利于查询效率 缺点:实现比较麻烦,每一张需要逻辑删除的表都需要备份表 https://cloud.tencent.com/developer/article/1531915

1K30

mysql binlog日志自动清理及手动删除

image.png 说明 当开启mysql数据库主从时,会产生大量如mysql-bin.00000* log的文件,这会大量耗费您的硬盘空间。...# binlog_format=mixed 操作完之后记得重启数据库 2、 开启mysql主从,设置expire_logs_days # vim /etc/my.cnf // 修改expire_logs_days...,x是自动删除的天数,一般将x设置为短点,如10 expire_logs_days = x // 二进制日志自动删除的天数。...默认值为0,表示“没有自动删除” 此方法需要重启mysql,附录有关于expire_logs_days的英文说明 以上操作完之后记得重启数据库,当然也可以不重启mysql,开启mysql主从,直接在mysql...的影响 如果您有一个活性的从属服务器,该服务器当前正在读取您正在试图删除的日志之一,则本语句不会起作用,而是会失败,并伴随一个错误。

6.6K10

头大了,Mysql写入数据十几秒后被自动删除

背景事情是这样的,在公司内部新开发了一个功能还没有上线,目前部署在测试环境,Node服务会开启一个定时任务,每5分钟会处理好一部分数据写入到mysql数据库中。...可是数据库中明明是有数据的,为什么查询不出来呢?怀疑是有第三方数据存在脏数据之类的情况,所以我将数据库现存数据全部清空,重新写入查看效果。...可是在写入后的代码逻辑中是没有执行删除数据的处理,而且每次都是稳定复现,写入后就被删除了,查询无果无奈找到db帮找原因。db查询日志给出的结论就是有定时执行删除的逻辑。...,导致写好的数据被另一边执行了删除的逻辑,由于那台服务器一直未更新修改的代码,一直执行的是最开始那份先删除再更新的逻辑。...至于为啥执行了删除但是没有更新,猜想是删除后更新的逻辑出错了。这也是为什么修改了表名称后就正常了,因为那台服务器上面还是旧的代码,新增删除不能读到之前的那张表了,问题到此终于是告一段落了。

88020

【Flume】实现MySQL数据增量自动提交到ClickHouse

tar zxvf apache-flume-1.5.2-bin.tar.gz 打包java依赖包 需要用到三个包:flume-ng-sql-source、flume-clickhouse-sink和mysql-connector-java...Flume配置文件 要放到conf文件夹下,mysql-clickhouse.conf 如下: agent.channels = channelMProductPL agent.sources =...= org.keedio.flume.source.SQLSource agent.sources.sourceMProductPL.hibernate.connection.url = jdbc:mysql.../conf/mysql-clickhouse.conf -name agent -Dflume.root.logger=INFO,console 其中 --conf 指明conf目录路径,-conf-file...结束 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,要想实现数据的实时同步的话还是需要kafka,flume只能识别增量,不能知道delete,update

2.4K20

MySQL删除数据

删除数据库是指在数据库系统中删除已经存在的数据库。数据删除之后,原来分配的空间将被收回。需要注意的是,数据删除之后该数据库中所有的表和数据都将被删除。因此删除数据库要特别小心。...一、通过SQL语句   MySQL中,删除数据库通过SQL语句DROP DATABASE。其语法格式如下: DROP DATABASE 数据库名;   其中“数据库名”为要删除数据库的名称。...下面删除我的系统中的名为test的数据库: $ mysql -u root -p Enter password: mysql> SHOW DATABASES; +-------------------...(0.00 sec)   上述结果显示第一次通过SHOW DATABASES;指令查看数据库的时候test数据库是存在的,通过指令DROP DATABASE test;删除test之后,再查看test...上述删除数据库的代码,在数据库不存在的时候会报错,下面代码对数据库是否存在做了判断,在数据库不存在的时候会报警告: mysql> DROP DATABASE IF EXISTS test; Query

6.1K30
领券