Вынимаем таблицу из дампа mysql

Проще сделать полный дамп БД. Но что делать если нужно вытащить одну таблицу из дампа?

Скрипт запускается из той же директории, где хранятся сжатые gzip’ом дампы БД

#!/bin/sh
PATH=/bin:/usr/bin/

ls *.gz | sed 's/\..*//'
echo "Enter dump"
read DUMPDB

gunzip $DUMPDB
cat $DUMPDB | awk '/CREATE TABLE/ {print($3)}' | sed -e s/\`//g

echo "Enter table"
read TABLE

cat $DUMPDB | sed "/ SET /d" | awk '/CREATE TABLE `'$TABLE'`/,/UNLOCK TABLES/' > $TABLE.sql

Александр Черных
системный администратор

Статьи по теме