当前位置: 首页 > news >正文

php+网站开发+pdf郑州高端做网站

php+网站开发+pdf,郑州高端做网站,企业查询平台有哪些,wordpress wp_term_taxonomy常在河边走#xff0c;哪有不湿鞋。如果我们经常操作数据库#xff0c;很有可能就会造成误操作#xff0c;假如我们不幸误删了数据#xff0c;有没有办法快速恢复呢#xff1f; 这里#xff0c;我们就以用的最多的mysql举例#xff0c;聊聊如何快速恢复数据。mysql官方貌…常在河边走哪有不湿鞋。如果我们经常操作数据库很有可能就会造成误操作假如我们不幸误删了数据有没有办法快速恢复呢 这里我们就以用的最多的mysql举例聊聊如何快速恢复数据。mysql官方貌似并没有提供什么快速恢复数据的工具业界倒是有很多和myql相关的快速恢复的工具比如binlog2sql或者myflash。但是我看了看都需要搞一些安装包并且我发现有些工具已经不维护了不清楚有没有啥问题所以我的诉求是 1)、工具要权威并且持续迭代 2)、不要装一些和恢复数据没关系的包 基于以上想法我找到了一篇国外老哥写的文章原文链接能看懂英文的尽量看英文原文写的很清晰。 我们这篇文章除了翻译一下国外老哥的文章外还对其内容进行了补充原文只是介绍了恢复工具的使用略过了一些细节对于一些刚入门的同学来说需要了解一些前置知识的所以就有了这篇文章。文章中我从如何获取恢复工具恢复前的准备工作以及如何使用恢复工具进行恢复进行了详细的解释方便刚开始用mysql的同学学习。 下面我们开始进入正题 我们此次的mysql恢复数据操作要依赖mariadb的恢复工具mysqlbinlogmariadb的mysqlbinlog有一个很炫的功能flashback官方介绍flashback就是我们今天的主角快速恢复数据就靠它了(据说flashback是阿里云的彭立勋开发的然后贡献给了mariadb)目前flashback只支持DML操作还不支持DDL。 1、准备工作 我本地用的是mac装docker来测试的。 1)、获取mariadb的mysqlbinlog文件拷贝到mysql对应目录下 首先docker安装mysql 5.7.30。然后再用docker安装mariadb 10.2.40从mariadb 10.2.40安装目录中的/usr/bin目录下将mysqlbinlog复制到本地可以使用以下命令 docker cp a2c08aacaa83115877f:/usr/bin/mysqlbinlog /Users/test/mariadb/usr/bin/mysqlbinlog然后再次利用docker cp命令将该mysqlbinlog拷贝到mysql 5.7.30安装目录的/usr/bin下替换mysql的mysqlbinlog。 2)、测试数据 建立一个名为user_like的库然后建立一张表t并插入一条数据 CREATE TABLE t (id int(11) UNSIGNED NOT NULL,c int(11) UNSIGNED NULL DEFAULT NULL,d int(11) UNSIGNED NULL DEFAULT NULL,PRIMARY KEY (id) USING BTREE,INDEX c(c) USING BTREE ) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci ROW_FORMAT DYNAMIC;INSERT INTO user_like.t (id, c, d) VALUES (5, 5, 5);2、开启binlog 数据恢复工作基本都是基于binlog来做的所以需要开启binlog 接下来 1、首先确保你开启了binlog日志 show variables like log_%;如果未开启需要在my.cnf中配置一下比如 log-bin mysql-bin server-id171562767 binlog_formatrow3、关闭gtid的三个变量 如果我们的mysql是一个集群的话恢复工作通常是在一台从机上。我们需要先关闭从机 //1、将这台机器从主从集群上摘下来 STOP SLAVE;//2、关闭gtid模式 SET GLOBAL gtid_mode ON_PERMISSIVE; SET GLOBAL enforce_gtid_consistency OFF;//3、设置从机可写 SET GLOBAL read_only OFF;4、模拟数据误删除 删除一条数据 delete from t where id 5;5、通过mysqlbinlog查看误删除的语句 1)、查看目前mysql中有哪些binlog日志 SHOW BINARY LOGS2)、查看binlog中的事件信息 show binlog events in mysql-bin.000013;红框中的内容就是和我们这次delete语句相关的事件信息。从红框中可以看到我们此次删除操作涉及的表是user_like.tDelete_rows表明我们这是一条delete语句 3)、定位需要恢复的位点 事件表格中的第二列是事件的位点信息可以看到位点是从154到395。 4)、通过位点查看删除的sql 我们利用mysqlbinlog看一下154到395都有哪些信息。 -vv 表明把所有信息都解析出来-vv后面是binlog文件的位置后面就是binlog的位点信息 mysqlbinlog -vv /var/lib/mysql/mysql-bin.000013 --start-position154 --stop-position395通过mysqlbinlog的返回信息可以看到我们执行了一条DELETE语句删除了id5的一行。 但是这里有一个问题生产上我们误执行了一条语句后同时会有很多的其他语句也在执行我们会看到很多的事件信息此时不可能通过人工去筛选出来我们执行的误操作语句我们只能知道大概5分钟以前或者10分钟以前误执行了一条语句。那这个时候我们可以指定时间比如下面的语句 //查看过去半小时的binlog信息 mysqlbinlog -vv --start-datetime$(date %F %T -d now - 30 minutes) --databaseuser_like --tablet /var/lib/mysql/mysql-bin.0000136、通过mysqlbinlog查看闪回数据 通过mysqlbinlog我们能够看到我们应该执行的恢复语句。如下 //在末尾添加了--flashback参数这个参数是闪回的关键 mysqlbinlog -vv --start-datetime$(date %F %T -d now - 30 minutes) --databaseuser_like --tablet /var/lib/mysql/mysql-bin.000013 --flashback如果是update语句闪回会将set和where中的数据颠倒输出一条update语句比如我们的一张表中有两个字段(f1,f2)其中有一行数据(22)假设我们误执行了 UPDATE a SET f2 10000 WHERE f1 2然后再使用上面的闪回语功能查看闪回语句就可以看到闪回语句是 可以看到上述语句就是将我们的条件和更新数翻转了一下再执行 7、将闪回数据导出成binlog mysqlbinlog --start-datetime$(date %F %T -d now - 2 hour) --databaseuser_like --tablet /var/lib/mysql/mysql-bin.000013 --flashback /usr/flashback.binlog8、通过闪回的binlog恢复被误操作的数据 mysql -uroot -p111111 --init-commandSET sql_log_bin0 user_like /usr/local/flashback.binlog我们需要另外弄一个mysql的实例然后再创建一个user_like库一张表 t然后再执行上面的恢复操作执行完后检查无问题可以导出执行sql到主库上执行。 9、如何按表恢复 在用备份恢复出临时实例之后将这个临时实例设置成线上备库的从库这样在 start slave 之前先通过执行change replication filter replicate_do_table (tbl_name) 命令就可以让临时库只同步误操作的表这样做也可以用上并行复制技术来加速整个数据恢复过程。
http://www.pierceye.com/news/437564/

相关文章:

  • 域名空间网站建设要多少钱全屋定制设计流程
  • 建设网站的网站江苏旅游网站开发设计与实现
  • 河北辛集住房和城乡建设厅网站购车网站开发数据库er图
  • 简单flash个人网站网站服务器和直播服务器一样吗
  • 教育网站建设需求文档门户网站系统建设清单
  • 天津市建设与管理局网站建筑网建设通平台
  • 长沙网站开发微联讯点官网微信公众号直接同步到wordpress
  • 湖南建设监理官方网站属于网页制作平台的是?
  • 如何建设公司网站知乎湖南自驾旅游与房车协会
  • 扬中网站优化做 爱 网站视频教程
  • 服务器发布网站免费网络营销推广软件
  • 婚纱摄影类网站重庆seo招聘
  • 登陆空间商网站建站模板免费下载
  • 用php做网站用什么框架牡丹江免费发布信息的平台
  • 网站开发 专有名词江油移动网站建设
  • 百度后台管理东莞市长安镇网站制作优化
  • 长春市建设厅网站大自然的网站设计
  • 网站建设能用手机制作吗人人车网站建设费用
  • 网站开发技术部分网络营销的宏观环境
  • 南宁网站建设公司国外优秀网站案例
  • 做网站需要什么证件吗免费seo技术教程
  • 深圳银行网站建设wordpress 审批流
  • 网站开发设计怎么找客户做企业网站 空间怎么买
  • 怎么在搜索引擎里做网站网页wordpress文章新窗口
  • 企业网站功能对比分析新农村建设 网站
  • 公司网站营销公司做网站都咨询哪些问题
  • 洛阳网站建设价格做网站需要服务器还是主机
  • 北京企业网站制作哪家好做宠物网站导航应该写什么字
  • 做设计网站的工作怎么样郑州企业微网站建设
  • 青岛百度整站优化服务做网站都需要哪些费用