How to Rename database
Posted by NoelC (NoelC), 19 January 2006I am a newbie to MySQL. I was not able to find the answer to this question on the web.
What's the safest way to rename a MySQL database?
Posted by admin (Graham Ellis), 19 January 2006MySQL does not support a database rename command.
The safest way is to use mysqldump to back up the old database, then restore the dumped database under a new name using the mysql utility. Finally, use the drop database xxx command to get rid of the old database.
But this is a pretty major change, isn't it - you're going to need to change your applications and so surely there will be no data changes (and probably no select) in process as it happens? If that's the case and you're able to stop the daemon (i.e. it doesn't have to beep running for other datbase not affected by the rename, then a simple directory rename will be much cleaner. MySQL implements databases as directories so that shouldn't be a problem. This approach does break the design rules for an ideal databas system, which state that you should only access a database through SQL commands issued to the daemon.
Whatever you do, I recommend that you take and check the integrity of a complete backup before you write any changes.
PH: 01144 1225 708225 • FAX: 01144 1225 899360 • EMAIL: email@example.com • WEB: http://www.wellho.net • SKYPE: wellho