A full restore of a 180 GB database to fix one table is hours of downtime for a problem affecting forty thousand rows.
# restore into a scratch schema, then copy the table back
$ mysql scratch < backup.sql
$ mysqldump scratch orders | mysql shop_recovery
# or, with per-table dumps taken deliberately:
$ mysqldump --tab=/backup shop # one .sql + one .txt per table
# and the modern option, if the backup is physical:
# ALTER TABLE orders DISCARD TABLESPACE;
# ... copy the .ibd file ...
# ALTER TABLE orders IMPORT TABLESPACE;
The transportable tablespace route is by far the fastest and requires the backup to be physical and the schema to match exactly, which makes it a planned capability rather than an improvisation. Restoring into a scratch schema is the version that works with a logical dump and is worth rehearsing, because the copy-back step has its own foreign key ordering problems.