Oracle & MySQL 老司机说我们要使用(延迟复制)

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

最近工作中又遇到生产环境数据库的表被删除的情况,其实这样的事情本不该发生。

几个小建议:

  1. 生产环境数据库开发人员只能有查询权限,甚至级别低的开发根本没权限查生产系统,类似表的删除交给专业的DBA来操作,当然有些单位没有所谓的DBA.

  2. 专职的DBA基本都具备一个属性,就是每一步的操作都会考虑好后果,所以删除表之前都会有一个备份。

  3. 建立审核制度,truncate 、drop、 rm这样的操作可能是致命的,必须要审核。

  4. 可以先rename表,比如把表rename成bak_date_tablename,定期去清理一下。

  5. 数据库每天的备份必不可少,管他逻辑备份还是物理备份,都是必须有的,看看你家数据库有没有,数据丢失从来都不是一件小事。


接下来说说,数据库的一个小功能,“延迟复制”

Oracle dataguard 有延迟复制,MySQL 5.6也有延迟复制,老司机建议您在有条件的情况下,可以开启延迟复制,一旦数据丢失,我们也可以及时恢复数据。

--Oracle

SQL> select switchover_status ,open_mode from v$database;

SWITCHOVER_STATUS    OPEN_MODE

-------------------- --------------------

NOT ALLOWED          READ ONLY WITH APPLY

 

SQL> alter database recover managed standby database cancel;

Database altered.

SQL> alter database recover managed standby database delay 5 disconnect from session; --5分钟,可以按照小时来设置

Database altered.


--alter*.log

RFS[2]: Selected log 4 for thread 1 sequence 51 dbid 1483481154 branch 955700418

Fri Sep 29 20:39:39 2017

Media Recovery Delayed for 5 minute(s) (thread 1 sequence 50)

Fri Sep 29 20:39:47 2017

Archived Log entry 48 added for thread 1 sequence 51 ID 0x58707be4 dest 1:

Fri Sep 29 20:39:47 2017


--MySQL

mysql>stop slave; 
mysql>CHANGE MASTER TO MASTER_DELAY = 600; 
mysql>start slave; 
mysql>show slave status \G; 


具体怎么利用延迟复制来恢复数据,大家需要自己做测试了哈


作为一个合格的DBA,不会只有一种方法恢复数据的。尽量不要出现误删除操作,毕竟恢复数据的过程,业务也会中断,损失在所难免的。

话说有没有热爱打篮球的兄弟,周末可以交流一下数据库技术和球技哈~











本文转自 roidba 51CTO博客,原文链接:http://blog.51cto.com/roidba/1969843,如需转载请自行联系原作者
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
Oracle 关系型数据库 MySQL
mysql数据库和Oracle的区别
mysql数据库和Oracle的区别
50 1
|
30天前
|
Oracle 关系型数据库 MySQL
Seata常见问题之oracle 数据库 报 just support mysql如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
53 0
|
2月前
|
存储 监控 关系型数据库
mysql 主备延迟的原因及解决思路,优化方法
MySQL 主备延迟(replication delay)是指主服务器(master)上的数据更新操作与备服务器(slave)上相同数据更新操作之间的时间差。这种延迟可能会导致数据不一致,影响系统的可用性和可靠性。以下是主备延迟的常见原因、解决思路和优化方法: ### 常见原因 1. **网络延迟**:主备服务器之间的网络不稳定或带宽不足。 2. **硬件性能**:备服务器的硬件性能不足,如 CPU、内存、磁盘 I/O 等。 3. **大量数据写入**:主服务器上的大量数据写入操作导致备服务器难以同步。 4. **复杂的查询**:备服务器执行复杂的查询操作,影响同步速度。 5. **二进制
|
2月前
|
缓存 NoSQL 关系型数据库
Redis与MySQL的数据情感:延迟双删的秘密揭示
Redis与MySQL的数据情感:延迟双删的秘密揭示
116 0
|
3月前
|
缓存 NoSQL 关系型数据库
redis与mysql的数据一致性问题(数据同步延迟)
redis与mysql的数据一致性问题(数据同步延迟)
18 0
|
4月前
|
SQL Oracle 关系型数据库
选择适合您网站的 SQL 托管:MS SQL Server、Oracle、MySQL 和 MS Ac
如果您希望您的网站能够存储和检索数据,您的Web服务器应该能够访问使用SQL语言的数据库系统。以下是一些常见的SQL托管选项:
51 1
|
4月前
|
SQL Oracle 关系型数据库
浅谈对数据库(MySQL、Oracle、SQL Server)的认识
浅谈对数据库(MySQL、Oracle、SQL Server)的认识
|
4月前
|
SQL 存储 关系型数据库
MySQL主从同步延迟原因与解决方案
MySQL主从同步延迟原因与解决方案
188 0
MySQL主从同步延迟原因与解决方案
|
SQL Oracle 关系型数据库
|
SQL Oracle 关系型数据库
Oracle与MySQL的几点区别
大家都经常使用Oracle数据库和MySQL数据库,虽然在大多数sql处理上都大同小异,但是还是有一些明显的区别,以下为整理的一些区别点,希望能够对各位有所帮助。
1241 0

热门文章

最新文章

推荐镜像

更多