mysql에서 다음과 같은 방법으로 디비명을 변경할 수 있다. 다음은 old_database를 new_database로 변경하는 예제이다.
# create database new_database;
새로운 디비를 생성한다.
# rename table old_database.table to new_database.table;
테이블들을 옮겨준다. 테이블이 여러개면 여러번 해주면 된다.
# drop database old_database;
기존 디비를 지운다. (옵션사항)
추가로 procedure도 옮기고 싶을 경우는 다음과 같이 mysql.proc 테이블을 업데이트 해주면 된다.
# update mysql.proc set db = 'old_database' where db = 'new_database';
아니면 다른 방법으로 스크립트를 이용하거나 mysqldump를 이용해서 export, import해도된다.
http://stackoverflow.com/questions/12190000/rename-mysql-database 참고
mysql -e "CREATE DATABASE \`new_database\`;"
for table in `mysql -B -N -e "SHOW TABLES;" old_database`
do
mysql -e "RENAME TABLE \`old_database\`.\`$table\` to \`new_database\`.\`$table\`"
done
mysql -e "DROP DATABASE \`old_database\`;"
더 편한 방법은 mysql 5.1.7 이상에서는 RENAME DATABASE 구문으로도 지원하다.