Det accepterade svaret från RandomSeed kan ta lång tid! Att importera bordet (bara för att släppa det senare) kan vara väldigt slösaktigt beroende på storlek.
För en fil skapad med
mysqldump -u user -ppasswd --opt --routines DBname > DBdump.sql
Jag får för närvarande en fil på cirka 7 GB, varav 6 GB är data för en loggtabell som jag inte "behöver" vara där; att ladda om den här filen tar ett par timmar. Om jag behöver ladda om (för utvecklingsändamål, eller om det någonsin krävs för en live-återställning) skummar jag filen så här:
sed '/INSERT INTO `TABLE_TO_SKIP`/d' DBdump.sql > reduced.sql
Och ladda om med:
mysql -u user -ppasswd DBname < reduced.sql
Detta ger mig en komplett databas, med den "oönskade" tabellen skapad men tom. Om du verkligen inte vill ha tabellerna alls, släpp helt enkelt de tomma tabellerna efter att laddningen är klar.
För flera bord kan du göra något så här:
sed '/INSERT INTO `TABLE1_TO_SKIP`/d' DBdump.sql | \
sed '/INSERT INTO `TABLE2_TO_SKIP`/d' | \
sed '/INSERT INTO `TABLE3_TO_SKIP`/d' > reduced.sql
Det finns en "gotcha" - se upp för procedurer i din dump som kan innehålla "INSERT INTO TABLE_TO_SKIP".