How to recover deleted records by mistake in Mysql
If it's MyISAM - no chance to recover w/o a backup.

If InnoDB - it depends.
InnoDB flags a record as deleted and keeps it in a page for a while. When a tree is rebalanced the deleted records are purged.

So whether you can undelete records depends on how much writes were done to the table after the delete.

Open InnoDB tablespace in a hexeditor and try to find the deleted records:

hexdump -c table.ibd


If table is relatively small I prefer bvi (it allows search by a string or a binary patter)

bvi table.ibd


So if you see the deleted records - it's recoverable.

Other place to look for deleted records is the binlog. If it's in a row format - the delete event will contain old and new values.

InnoDB redo log stores the changes, too. But definitely it won't keep them for a month.

To retrieve deleted records from an InnoDB page you can use a MySQL data recovery tool . Recovery of deleted records is similar to recovery from corrupted tablespace. But in that case c_parser must be called with -D option that will dump deleted records only.

DISLAIMER: I'm an author of the tool