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

基于binlog二进制日志MySQL恢复笔记

基于binlog二进制日志MySQL恢复笔记 刚好复习到这里,顺手做个小实验,记录下。...总的操作流程: step0、关掉数据库的对外访问【防止用户操作继续写入这个库】 step1、mysqlbinlog 导出相关时间段数据库二进制日志 step2、编辑today.sql找到误操作的那几条数据...step3、执行全备份恢复 mysql -e 'source /root/backup.sql;' step4、用二进制日志恢复今天的修改  mysql -e 'source /root/today.sql...(可以修改前端的web连接数据库文件,将其改到其它从节点,虽然用户无法写,但最起码比网站无法访问要强些) step1、先提取出误操作这段时间的二进制日志,取名为today.sql,如下: mysqlbinlog...step4、继续用二进制日志恢复mysql -e 'source today.sql;' step5、查看恢复后的结果: 恢复完的效果如下: MariaDB [hellodb]> select *

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

    恢复没有日志文件的SQL数据库

    如果您的mdf文件是当前数据库产生的,那么很侥幸,也许你使用sp_attach_db或者sp_attach_single_file_db可以恢复数据库, 但是会出现类似下面的提示信息 设备激活错误。...物理文件名 'd:test_log.LDF' 可能有误。 怎么办呢?别着急,下面我们举例说明恢复办法。 A.我们使用默认方式建立一个供恢复使用的数据库(如test)。...B.停掉数据库服务器。 C.将刚才生成的数据库日志文件test_log.ldf删除,用要恢复数据库mdf文件覆盖刚才生成的数据库数据文件test_data.mdf。 D.启动数据库服务器。...“只读置疑脱机紧急模式”可以看到数据库里面的表,但是仅仅有系统表 G.下面执行真正的恢复操作,重建数据库日志文件 dbcc rebuild_log('test','C:Program FilesMicrosoft...将必须重置数据库选项,并且可能需要删除多余的日志文件。 DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

    1.7K30

    mysql数据库日志存储位置_MySQL数据库mysql日志文件在哪 如何修改MySQL日志文件位置…「建议收藏」

    本文主要向大家介绍了MySQL数据库mysql日志文件在哪 如何修改MySQL日志文件位置 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。...MySQL日志文件相信大家都有很多的了解,MySQL日志文件一般在:/var/log/mysqld.log,下面就教您修改MySQL日志文件位置的方法,供您参考。...今天需要改MySQL日志文件的位置,发现在/etc/my.cnf中怎么也改不了。...后来发现MySQL日志位是指定的: [root@localhost etc]# ps aux|grep mysqld root 11830 0.5 0.0 4524 1204 pts/0 S 03:03...,希望对同学们学习MySQL有所帮助,更多内容请关注职坐标数据库MySQL数据库频道!

    8.8K20

    MySQL二进制日志

    MySQL 5.5 中对于二进制日志 (binlog) 有 3 种不同的格式可选:Mixed,Statement,Row,默认格式是 Statement。 总结一下这三种格式日志的优缺点。...= 'b' WHERE owner_member_id = 'a' 执行之后,日志中记录的不是这条 update 语句所对应的事件 (MySQL 以事件的形式来记录 bin-log 日志) ,而是这条语句所更新的每一条记录的变化情况...因为 MySQL 对于 alter table 之类的表结构变更语句的处理方式是整个表的每一条记录都需要变动,实际上就是重建了整个表。那么该表的每一条记录都会被记录到日志中。 2....在 Mixed 模式下,MySQL 会根据执行的每一条具体的 SQL 语句来区分对待记录的日志形式,也就是在 statement 和 row 之间选择一种。...个及以上包含 AUTO_INCREMENT 字段的表被更新时; 执行 INSERT DELAYED 语句时; 用 UDF 时; 视图中必须要求运用 row 时,例如建立视图时使用了 UUID() 函数; 在配置文件

    98950

    MySQL二进制日志

    操作完后再启用二进制日志功能即可。 sql_log_off={ON|OFF}    用于控制是否禁止将一般查询日志类信息记录进查询日志文件。默认为OFF,表示不禁止记录功能。...log_bin = mysql-bin  记录的文件位置。...通常为数据所在的目录 binlog_format = {MIXED|row|statement}  二进制日志的记录格式 max_binlog_size = 1073741824   二进制日志文件的单文件上限...= 18446744073709547520   # 异步写入磁盘的日志文件大小 sync_binlog = 0|1    设定多久同步一次二进制日志至磁盘文件中,0表示不同步,任何正数值都表示对二进制每多少次写操作之后同步一次.../mysql-bin.000008   [访问远程数据库] mysqlbinlog --start-position=515 --stop-position=616  /data/mysql/mysql-bin

    1.4K20

    mysql查看数据库日志文件_怎么查看mysql数据库日志文件「建议收藏」

    2017-10-16 回答 一.错误日志 错误日志mysql数据库中很重要,它记录着mysqld启动和停止,以及服务器在运行过程中发生的任何错误的相关信息。...也可以将log-error配置到my.cnf文件中,这样就省去了每次在启动mysqld时都手工指定–log-error.例如: [mysql@test2]$ vi /etc/my.cnf # the mysql...note:由于log日志记录了数据库所有操作,对于访问频繁的系统,此种日志会造成性能影响,建议关闭。 1.配置信息 –log=[file-name]用来指定错误日志存放的位置。...有以下几种日志: 错误日志: -log-err 查询日志: -log 慢查询日志: -log-slow-queries 更新日志: -log-update 二进制日志: -log-bin 在mysql的安装目录下...首先确认你日志是否启用了 mysql>show variables like ‘log_bin’; 如果启用了,即on 那日志文件就在mysql的安装目录的data目录下 cat/tail 日志文件

    14.5K30

    ②⑩ 【MySQL Log】详解MySQL日志:错误日志二进制日志、查询日志、慢查询日志

    MySQL日志:错误日志二进制日志、查询日志、慢查询日志 1....当数据库出现任何故障导致无法正常使用时,建议首先查看此日志。 该日志是默认开启 的,默认存放目录/var/log/,默认的日志文件名为mysqld.log。...二进制日志 - 作用: ①灾难时的数据恢复; ②MySQL的主从复制。...以下是清理二进制日志的 3种方式(命令行指令): 也可以在mysql的配置文件中配置二进制日志的过期时间,设置了之后,二进制日志过期会自动删除。...,可选值:0或者1;0代表关闭,1代表开启 general_log=1 #设置日志文件名,如果没有指定,默认的文件名为host_name.log general_log_file=mysql_query.log

    1K10

    mysql 日志文件_mysql日志文件在哪「建议收藏」

    mysql日志文件的查询方法: 查找错误日志文件路径show variables like ‘log_error’; 在mysql数据库中,错误日志功能是默认开启的。并且,错误日志无法被禁止。...默认情况下,错误日志存储在mysql数据库的数据文件中。错误日志文件通常的名称为hostname.err。其中,hostname表示服务器主机名。...查找日志文件路径show variables like ‘general_log_file’; 日志mysql数据库的重要组成部分。...日志文件中记录着mysql数据库运行期间发生的变化;也就是说用来记录mysql数据库的客户端连接状况、SQL语句的执行情况和错误信息等。...当数据库遭到意外的损坏时,可以通过日志查看文件出错的原因,并且可以通过日志文件进行数据恢复

    3.6K20

    MySQL 压缩二进制日志

    ,从节点获取日志时可能会有更多的网络流量,等等。通常,二进制日志压缩效果很好,所以人们一直希望有一个功能可以在MySQL使用二进制日志时对其进行压缩。从MySQL8.0.20开始,现在可以了。...这个例子中,MySQL花费了6.21秒来压缩二进制日志,每个事务平均不到400微秒。相比,二进制日志文件执行I/O花费了4.8分钟。...在启用压缩前,应检查写入和读取二进制日志文件花费的时间,以便确定性能变化。您还应该检查CPU使用变化。 上述输出,它显示压缩比为59%,但是对不同类型的负载呢?...当比较MySQL压缩的二进制日志和使用zstd手工压缩的二进制日志时,批量负载的文件大小大致相同,这也反映出对于大事务,按每个事务进行压缩等同于压缩整个文件。...二进制日志大小与压缩级别的关系 可以看出,无论MySQL中使用的压缩级别如何,文件大小基本上没有差异,而对于zstd,随着压缩级别的增加,文件大小如预期一样减小。

    1.5K81

    MySQL 二进制日志(Binary Log)

    同大多数关系型数据库一样,日志文件MySQL数据库的重要组成部分。MySQL有几种不同的日志文件,通常包括错误日志文件二进制日志,通用日志,慢查询日志,等等。...这些日志可以帮助我们定位mysqld内部发生的事件,数据库性能故障,记录数据的变更历史,用户恢复数据库等等。...)的语句的执行时间信息     不包含没有修改任何数据的语句,如果需要启用该选项,需要开启通用日志功能     主要目的是尽可能的将数据库恢复数据库故障点,因为二进制日志包含备份后进行的所有更新     ...也即是事务仅仅写入一个二进制日志。     由是可知,二进制日志文件大小接近,其size不是完全相等,这点不同于oracle。     ...二进制日志文件会有一个对应二进制日志索引文件,该文件包含所有的二进制日志,其文件名与二进制日志相同,扩展名为.index     二进制索引文件通过--log-bin-index[=file_name]

    2K20

    mysql通过binlong日志恢复数据

    MySQL通过二进制日志(binlog)来记录所有对数据库的更改操作,包括创建、修改、删除数据、创建、修改、删除表等。二进制日志可以用来恢复数据库到之前的某一个时间点或者在主从复制中用于同步数据。...在MySQL中,使用mysqlbinlog命令来解析二进制日志文件。以下是使用binlog文件恢复数据的步骤: 确定恢复时间点 首先需要确定要恢复到的时间点,即二进制日志文件的位置。...如果要恢复到该位置之前的数据,可以从该位置开始读取二进制日志文件。...导出二进制日志文件 接下来需要导出二进制日志文件,可以使用mysqlbinlog命令,例如: javascriptCopy code$ mysqlbinlog mysql-bin.000001 > /tmp.../mysql-binlog.sql 这将导出二进制日志文件mysql-bin.000001到/tmp/mysql-binlog.sql文件中。

    84320

    压缩MySQL二进制日志(译文)

    摘要:二进制日志通常会占用大量的磁盘空间,从MySQL 8.0.20开始,可以对MySQL正在使用的二进制日志进行压缩。这篇文章将探讨这个新功能。...曾任IBM公司数据库部门经理 现在一家第三方公司任首席数据库专家,服务2万+客户。 在一个繁忙的MySQL服务器上,二进制日志最终可能会成为使用磁盘空间的最大占用者之一。...在本例中,MySQL总计花了6.21秒进行二进制日志的压缩,每笔事务平均略低于400微秒。相比之下,MySQL总计花了4.8分钟在二进制日志文件上做I/O,这说明压缩在写日志的时间中占比很低。...在启用压缩之前,您应该检查写入和读取二进制日志文件所花费的时间,以便确定性能的变化。您还应该检查CPU使用情况的变化。...当将MySQL压缩的二进制日志与手动使用zstd压缩的二进制日志进行比较时,发现批量负载的文件大小大致相同,这说明对于大型事务,对每笔事务压缩和对整个文件压缩效果一样。

    92410

    删除mysql日志文件

    日志文件占据了大部分空间 , 整整27G,于是现在的任务就是清理mysql日志文件(主要是清理.log文件mysql-bin.00000X二进制日志文件) 一、删除mysql日志文件 第一步:登陆进入...mysql-bin.000005,那么删除日志文件的时候应该排除掉该文件。...二、mysql 定时清理日志文件 如果每次等到发现空间不足的时候才去手动删除日志文件, 这种方式是很不理想的。那么,我们就需要设置mysql,让它能自动清理日志文件。...但是,在生产环境中,重启mysql数据库往往会付出很高的代价。于是,可以在不重启mysql的情况下,修改expire_logs_days值登陆到mysql,并输入一下命令。...注意:通过这种方式设置expire_logs_days虽然不需要重启mysql即可生效,但是该方式在重启mysql之后,值会被恢复

    2.9K00

    【说站】宝塔mysql二进制日志文件如何关闭和删除?

    挺多朋友问我宝塔面板的二进制日志怎么关闭,其实前面介绍过宝塔的二进制日志,因为最开始买的服务器硬盘不够,二进制日志文件生成的文件比较占空间,还导致mysql服务启动不了,最后因此关掉了宝塔的二进制日志,...具体可以参见关闭二进制日志文件解决宝塔面板mysql服务无法启动。...提供二进制日志的关闭功能和错误日志的清空功能。 注意事项:二进制日志,可用于数据文件恢复,请谨慎关闭。错误日志。清空后将无法分析mysql故障问题,请谨慎清空。...宝塔mysql二进制日志文件可以删除和关闭吗? 宝塔二进制日志文件是用于数据库故障时候恢复数据库应急,一般宝塔默认保留10天mysql二进制日志,第11天的时候会清理第一天产生的二进制日志。...如果二进制日志占用空间不是很大,磁盘空间允许,建议保留。当然你的网站如果有做定期数据库备份的话,可以关闭数据库二进制日志。 宝塔mysql二进制日志文件如何关闭和开启?

    1.9K20

    通过日志恢复sql server数据库

    在SQL Server中,通过日志恢复数据库是一个精细的过程,主要用于在数据库出现错误、数据丢失或需要回滚到特定时间点时恢复数据。...以下是一般步骤概述:设置恢复模式:首先,数据库必须配置为“完整恢复模式”或“大容量日志恢复模式”,以便事务日志能够包含足够的信息来进行细粒度的恢复。...创建完整备份:在执行任何日志恢复前,必须有一个数据库的完整备份作为基础。这是恢复过程的第一步。定期备份事务日志:在完整备份后,应按照适当的时间间隔(如每小时、每半小时)进行事务日志备份。...数据丢失事件发生后:如果发生数据丢失,首先确定要恢复到哪个时间点或事务ID。使用最后一次完整备份恢复数据库。然后按照备份顺序应用后续的事务日志备份。...事务日志还原:使用​​RESTORE LOG​​命令将日志备份应用于已恢复的基础数据库备份上。

    17810
    领券