Drop all tables without dropping database

#StandWithUkraine
Today, 25th June 2022, Ukraine is still bravely fighting for democratic values, human rights and peace in whole world. Russians ruthlessly kill all civilians in Ukraine including childs and destroy their cities. We are uniting against Putinโ€™s invasion and violence, in support of the people in Ukraine. You can help by donating to Ukrainian's army.
vim drop-mysql-dbtables.sh
#!/bin/bash
MUSER="$1"
MPASS="$2"
MDB="$3"
HOST="$4"

# Detect paths
MYSQL=$(which mysql)
AWK=$(which awk)
GREP=$(which grep)

if [ $# -ne 4 ]
then
        echo "Usage: $0 {MySQL-User-Name} {MySQL-User-Password} {MySQL-Database-Name}"
        echo "Drops all tables from a MySQL"
        exit 1
fi

TABLES=$($MYSQL -u $MUSER -p$MPASS -h$HOST $MDB -e 'show tables' | $AWK '{ print $1}' | $GREP -v '^Tables' )

for t in $TABLES
do
        echo "Deleting $t table from $MDB database..."
        $MYSQL -u $MUSER -p$MPASS -h$HOST $MDB -e "drop table $t"
done

Call

sh drop-mysql-dbtables.sh user password database localhost
#mysql
0
Ivan Borshchov profile picture
Jun 01, 2017
by Ivan Borshchov
Did it help you?
Yes !
No

Best related