倒是有个思路,不过你的记录量太大,这个执行效率估计就有问题了。
我的思路是
1、先select
出来一个记录集,条件是点击单价,点击量,下载量,市场平均点击量一致的数据,另外一个最重要的条件就是选出行号最大的记录(因为你要保留一条,怎么用行号这个网上有很多说明,我就不说了),这样,你就可以获得,你需要保留的记录集了。
大概的语句是:
select
max(rec_no),a,b,c,d
from
table
where
a=b
and
a=c
and
a=d
group
by
a,b,c,d
a,b,c,d代表你的那几个字段,rec_no,如果你的表里没有这个字段的话,就要上网查一下怎么给mysql记录加行号,但是唯一担心的就是效率会慢,因为你的记录太多了
2、有了这个记录集,你可以有两种处理方式,一种是手工处理,把上面的结果集插入一个空表里,然后删除旧表,再把空表改名就可以了。另一种是写语句处理delete的时候,和你检索出来的数据集匹配,符合条件的留下,否则删除。
这个我没有实际的环境,仅仅提供个参考思路
误删MYSQL数据库,没有备份请问高手有什么办法恢复
正常来说没有办法
以后记住备份把
如果是mysql本身可以考虑从 别的机器(版本最好一样)把那个库鲓过来,该改权现
如果别的库就没办法了
停止mysql
# /etc/initd/mysqld stop
安全模式进入mysql
# /usr/sbin//mysqld_safe --skip-grant-tables &
完成以后就可以不用密码进入MySQL了
# mysql -u root
按下列步骤建立 root 用户:
> insert into mysqluser (host, user, password) values ('localhost', 'root', password('密码'));
> flush privileges;
>grant all on to 'root'@'localhost';
以下情况可以恢复数据: 1 innodb引擎表开启了事务,执行dml语句,比如delete、update、insert之类,并且没有提交即commit *** 作的话,可以执行rollback进行回滚恢复。如果是ddl *** 作,如drop、create、alter之类的 *** 作时无效的
误删数据需要恢复可以试试恢复软件,你可以用 AneData全能文件恢复。重要的数据被删或者格式化,被杀毒软件清理,无故丢失等等都可以用这个软件来扫描恢复,选择合适的恢复模式扫描可以事半功倍。这个软件确实非常不错,是目前最好用的数据恢复工具了。是中文的界面, *** 作起来非常的简单方便。
以上就是关于mysql数据库用户表里面的数据误删除后能恢复吗全部的内容,包括:mysql数据库用户表里面的数据误删除后能恢复吗、误删MYSQL数据库,没有备份请问高手有什么办法恢复、mysql数据库误删除后怎么办等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)