Преименуването на база данни, tarlyun блог
Малко теория. MySQL база данни, за да създадете създава директория с името на базата данни (документацията не се препоръчва използването на специални символи, но кой го чете?). След запитването
CREATE DATABASE "tarlyun.com";
MySQL ще създаде директорията / Var / ИЪ / MySQL / tarlyun @ 002ecom.
В действителност аз очаквах прост въпрос ALTER DATABASE или нещо подобно. Но реалността е, както винаги, беше жестока.
Оказва се, че това е възможно да се използва строителство:
ПРЕИМЕНУВАНЕ БАЗА ДАННИ ЗА db_name new_db_name;
Но тя понякога убиват масата. Ето защо, MySQL 5.1.23 тази функция просто отстранени. И все пак. Други средства за преименуване намерени.
Той си спомни, че в PhpMyAdmin е преименуван интерфейс за базата данни. Аз го тества на базата на тестове:
DROP DATABASE db_name; CREATE DATABASE new_db_name;
Нека обясня. PhpMyAdmin току-що изтри базата данни и всички маси. И след това да създадете празен с ново име. Това вече е преименуван.
Тъй като аз използвам само MyISAM маса, простото решение е на разположение. Можете просто да преименувате директорията на базата данни.
Внимание! Не забравяйте за архивиране!
обслужване Mysqld спирка CD / Var / ИЪ / MySQL / СрН tarlyun \ @ 002ecom / tarlyuncom услуга старт Mysqld
Всички операции се по-малко от една минута.
Заслужава да се отбележи, че ако използвате InnoDB таблици тогава имате само едно решение:
- Спиране на MySQL
- Осъществяване на сметището, използвайки mysqldump
- Създаване на нова база данни
- Заредете новите данни от сметището на базата данни
- Run MySQL
PS. Не забравяйте за потребителски права. Ако сте настроили правила по този начин:
Разрешете всички привилегии ON `tarlyun.com` * TO` tarlyun.com`@'localhost", идентифицирани от "парола" С предоставянето на опции .;
След преименуването на потребителя `tarlyun.com` загубите достъп до таблиците на новата база данни.