聊聊关于数据库表记录删除都有哪些解决方式

[故障类别]
(一)故障类型:数据库表记录删除
(二)典型特征:

1.数据表中无任何数据或只有部分数据
2.客户端无法查询到完整的信息
(三)损坏程度星级评价:★★★★
[解决方案]
(一)恢复流程
1.检测流程:

(1)使用磁盘编辑器对数据文件MYD进行分析;
(2)判断表记录丢失的可能原因。
2.实施流程:
(1)将损坏的数据库文件进行备份;
(2)对数据库文件进行分析,判断丢失的可能原因;
(3)针对不同的丢失原因,使用自主开发的软件进行数据恢复;
(4)将数据插入原数据库,对数据库做完整性检测。
3.验收流程:
(1)对数据库做mysqlcheck检测;
(2)查询数据库最新记录;
(3)对用户指定的关键数据表进行针对性校验。
(二)恢复的可靠性分析及时间预估:
数据库的表记录删除后,如未做其它任何操作,因MYD内容结构的原因,对数据恢复成功率会有所影响,时间视数据库大小而定,约为1-2天不等
[小贴士]
(一)发现数据库表记录删除后,请及时对数据库备份,不要再进行数据插入等操作。
(二)故障出现的可能原因:

1.对数据库进行升级,SQL语句条件不严格
2.人为操作错误
(三)隐患故障及损坏程度星级评价
隐患1:数据库表记录丢失后未做任何操作
损坏程度星级评价:★★★★
隐患2:数据库表丢失后插入新的记录
损坏程度星级评价:★★★★★
(四)数据库操作提示:
1.在对数据库进行操作时,尽量先对数据库进行备份;
2.对数据表进行操作时请慎重。

原文地址:https://blog.51cto.com/sun510/2422677

时间: 2024-10-14 00:45:18

聊聊关于数据库表记录删除都有哪些解决方式的相关文章

数据库表记录删除该怎么解决

[故障类别] (一)故障类型:数据库表记录删除 (二)典型特征: 1.数据表中无任何数据或只有部分数据 2.客户端无法查询到完整的信息 (三)损坏程度星级评价:★★★★ [解决方案] (一)恢复流程 1.检测流程: (1)使用磁盘编辑器对数据文件MYD进行分析: (2)判断表记录丢失的可能原因. 2.实施流程: (1)将损坏的数据库文件进行备份: (2)对数据库文件进行分析,判断丢失的可能原因: (3)针对不同的丢失原因,使用自主开发的软件进行数据恢复: (4)将数据插入原数据库,对数据库做完整

sql语句查询同一表内多字段同时重复的记录 sql数据库重复记录删除

分享下用sql语句删除数据库中重复记录的方法.比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完全相同的记录查询出来select p1.* from persons p1,persons p2 where p1.id<>p2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address = p2.address可以实现上述效果.几个删除重复记录的SQL语句 1.用rowid方法2.用gr

MySQL数据库(3)_MySQL数据库表记录操作语句

附: MYSQL5.7版本sql_mode=only_full_group_by问题 1.查询当前sql_mode: select @@sql_mode 2.查询出来的值为: set @@sql_mode ='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'; 3.修改s

Atitit.mssql 数据库表记录数and 表体积大小统计

Atitit.mssql 数据库表记录数and 表体积大小统计 1. EXEC   sp_MSforeachtable   "EXECUTE   sp_spaceused   '?'" 最后一种方法是利用隐藏未公开的系统存储过程sp_MSforeachtable CREATE TABLE  #temp  (TableName  VARCHAR  (255),  RowCnt  INT) EXEC  sp_MSforeachtable  'INSERT  INTO  #temp  SEL

linux下python导出sybase 数据库 表记录的方式

导出sybase 数据库 表记录的方式 1 执行启动sybase 数据库命令 code : dbeng7 gkdb 2 执行 连接sybase 数据库命令code : dbisql -c "uid=dba111;pwd=222sql;eng=gk333db" -q oilvouch.sql 3 执行 SQL脚本文件oilvouch.sql 进行导出文件 oilvouch.txt code: select top 10 * from oilvouch;output to /root/oi

将Hive统计分析结果导入到MySQL数据库表中(一)——Sqoop导入方式

最近在做一个交通流的数据分析,需求是对于海量的城市交通数据,需要使用MapReduce清洗后导入到HBase中存储,然后使用Hive外部表关联HBase,对HBase中数据进行查询.统计分析,将分析结果保存在一张Hive表中,最后使用Sqoop将该表中数据导入到MySQL中.整个流程大概如下: 下面我主要介绍Hive关联HBase表--Sqoop导出Hive表到MySQL这些流程,原始数据集收集.MapReduce清洗及WEB界面展示此处不介绍. 一.HBase数据库表 hbase(main):

C#中如何解决sqlite数据表/记录删除后数据库内存不变的问题

在C#中使用sqlite数据库时发现,删除了数据表或大量数据后,数据库的并不会变小. 这是因为数据库中删除大量数据后,会留下原来的数据空间(空闲数据页),数据库默认不会自动释放这些空间.可以通过"VACUUM"命令释放空间. 网上查到两种方法(手动/自动): 1.手动释放空间 先写一个执行sql语句的函数: 1 private void ExecuteSql(string sDbPath, string sqlStr) 2 { 3 using (SQLiteConnection con

萌新浅谈LINUX下数据库 表记录增删改查 、 WHERE条件应用 、 数据备份与恢复

今天为大家带来的是一些干货,鄙人才疏学浅不善言辞,还望大家多包涵 首先登录数据库 查一下有什么库MariaDB [(none)]> SHOW DATABASES; 创建库MariaDB [(mysql)]> CREATE DATABASE xiangyashan;检查一下是否创建成功MariaDB [(mysql)]> SHOW DATABASES;建表格MariaDB [mysql]> USE xiangyashan;CREATE TABLE base(编号 char(13),

Mysql 创建数据库表(删除,删除,插入)

MySQL 创建数据表 创建MySQL数据表需要以下信息: 表名 表字段名 定义每个表字段 语法 以下为创建MySQL数据表的SQL通用语法: CREATE TABLE table_name (column_name column_type); 以下例子中我们将在 TUTORIALS 数据库中创建数据表tutorials_tbl: tutorials_tbl( tutorial_id INT NOT NULL AUTO_INCREMENT, tutorial_title VARCHAR(100)