大家好,今天小编关注到一个比较有意思的话题,就是关于mysql恢复delete数据的问题,于是小编就整理了2个相关介绍mysql恢复delete数据的解答,让我们一起看看吧。
linux中,mysql的mysql.sock文件被删了,怎么在不重启mysql的情况下恢复?
这个文件是Unix套接字文件,用来进行通讯的。这是没有办法不从启恢复的。
如果你删除了,利用套接字当时连接数据库的客户端会通通无法连接。而用IP +端口号的连接则完全正常。
所以你的客户端用套接字文件的方式连接数据库的话,这个时候已经连接不上了,无法操作了。你就应该迅速重启重新生成.sock文件就好了。不重启的意义是什么呢?如果客户端是在本地,那么一般都用的是套接字。
如果你的客户端用的是ip端口当时连接,那你删了.sock应该不影响,不需要做什么。等待可以重启的时候重启一下MySQL就行了。
如果你有多个客户端连接数据库,有的用sock的,有的用ip。那无法重启的话,可以把用sock连接的客户端改用ip 端口号的方式连接数据库。
mysql删除的数据库怎么还原?
在解决的过程中,以下几种尝试:
1.如果开启了日志,直接mysqlbinlog 使用日志恢复即可。
2.如果不是删除了一个表的部分数据,而是删除整个表,那么可以在删除后马上用磁盘数据恢复软件尝试恢复。
(因为删除表后会有文件被删除,而删除表的部分数据,文件还是存在)
3.找数据恢复的公司,使用工具分析ibdata1(分析过程参考一页一页查看有没有历史记录存在,使用ibdata1恢复数据,应该是在了解数据表结构的前提下,数据库除ibdata1外其他数据受损不能正常使用数据库时尝试,而不是删了表数据后恢复什么的。
(事实上,这个文件是存储现有表数据的,其实也可以设置成每个表一个文件。)
4.mysql下有ib_logfile0和ib_logfile1两个文件,其实这两个文件里,记录了Mysql的一些事物日志,用于事务的前滚后滚,是Mysql自身使用的,这个文件用文本工具打开后,有很多乱码,但却可以查找到被删除的少量数据的insert记录,极少数的乱码通过前后语句找出了原文,最终通过事物日志恢复了删除的文件。注:用事物日志恢复,需要几个前提。
1:知道被删除数据的大概位置,不要这边查找,那边又不断有新数据插入。
2:因为有很多乱码,适用于查找少量数据,而不是用作大量数据的恢复,浪费体力。
3:如果二进制日志没开,没有备份,那么只能用这种方法恢复了。
到此,以上就是小编对于mysql恢复delete数据的问题就介绍到这了,希望介绍关于mysql恢复delete数据的2点解答对大家有用。