#!/bin/bash IFS=" " dbid= socket=/var/run/mysqld/mysqld${dbid}.sock user=root password= dbs=`echo "show databases" | mysql --socket=${socket} -u ${user} --password=${password} -B` for db in $dbs; do echo "Convert database $db"; tables=`echo "SELECT TABLE_NAME AS ' ' FROM TABLES WHERE TABLE_SCHEMA LIKE '${db}' and ENGINE like 'InnoDB' and CREATE_OPTIONS not like '%COMPRESSED%' " | mysql --socket=${socket} -u ${user} --password=${password} -D information_schema -B` for table in $tables; do echo "Rewrite Table ${table}" echo "ALTER TABLE \`$table\` ENGINE = INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8" | mysql --socket=${socket} -u ${user} --password=${password} -D $db done echo "Convert database $db finished" done