sqluser="-uroot" sqlpass="-p123456" sqlopt="--routines --triggers --complete-insert --create-options --add-locks --add-drop-table --extended-insert --quote-names --default-character-set=utf8" tmp="/home/BACKUP/innodb" list="${tmp}/list.txt" mkdir -p "${tmp}/dump" echo "Make innodb list..." mysql ${sqluser} ${sqlpass} -Nse "SELECT table_schema FROM information_schema.tables WHERE engine='innodb';" | uniq | sort >${list} echo "Make database dump..." while read; do echo "dump: ${REPLY}" mysqldump ${sqluser} ${sqlpass} ${sqlopt} ${REPLY} >"${tmp}/dump/${REPLY}.sql" done < ${list} echo "Drop databases..." while read; do echo "Drop: ${REPLY}" mysql ${sqluser} ${sqlpass} -Nse "DROP DATABASE ${REPLY};" done < ${list} echo "Stop mysql..." /etc/init.d/mysql stop echo "Delete innodb files..." find /var/lib/mysql -mindepth 1 -maxdepth 1 -type f -name "ib*" -print0 | xargs --no-run-if-empty -0 rm echo "Start mysql..." /etc/init.d/mysql start echo "Load databases..." while read; do echo "Create: ${REPLY}" mysql ${sqluser} ${sqlpass} -Nse "CREATE DATABASE ${REPLY} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;" echo "Load: ${REPLY}" cat "${tmp}/dump/${REPLY}.sql" | mysql ${sqluser} ${sqlpass} --default-character-set=utf8 "${REPLY}" done < ${list}