Подтвердить что ты не робот

Как мы можем переименовать имя базы данных в MySQL 5.0

Я использую MySQL 5.0.

Я создал базу данных с именем accounts, но теперь я хочу изменить имя базы данных на FinanceAccounts.

Как изменить имя базы данных в MySQL 5.0?

4b9b3361

Ответ 1

Я думаю, что есть только один способ (помимо переименования каталога в MySQL datadir, который не будет работать для таблиц InnoDB):

  • создать новую базу данных (с новым именем)
  • сделать дамп старой базы данных
  • импортировать сбрасываемые данные в новую базу данных
  • удалить старую базу данных

Чтобы создать новую БД:

mysql> CREATE DATABASE new_database;

Чтобы создать дамп старой БД:

mysqldump -u "your_username" -p --lock-tables old_database > old_database_dump.sql

Чтобы импортировать сбрасываемые данные в новую БД:

mysql -u "your username" -p new_database  < old_database_dump.sql

Чтобы удалить старый DB:

mysql> DROP DATABASE old_database;

Имейте в виду, что ваши разрешения на старую БД также должны быть удалены. См. Здесь для получения дополнительной информации: Отменить все привилегии для всех пользователей в базе данных MySQL

MySQL 5.1.7 для MySQL 5.1.22 имел команду RENAME {DATABASE | SCHEMA} db_name TO new_db_name;, но этот был удален в MySQL 5.1.23 для слишком опасного.

Ответ 2

Лучшим способом, вероятно, является переименование каждой из таблиц внутри базы данных на новое имя. Например:

Обновление: здесь есть два шага

  • Создайте новую пустую базу данных, так как вы хотите сказать "новые учетные записи"

    CREATE DATABASE newaccounts;

  • Перенос каждой таблицы по одному

    RENAME TABLE accounts.tablename TO newaccounts.tablename;

См http://dev.mysql.com/doc/refman/5.0/en/rename-table.html для получения дополнительной информации.

Ответ 3

здесь, я переименовал базу данных mydb в электронную торговлю, вы выполните следующие действия, но usin phpmyadmin - это легко

CREATE DATABASE `ecommerce` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

RENAME TABLE `mydb`.`Articles` TO `ecommerce`.`Articles` ;

RENAME TABLE `mydb`.`Categories` TO `ecommerce`.`Categories` ;

RENAME TABLE `mydb`.`Utilisateurs` TO `ecommerce`.`Utilisateurs` ;

ALTER TABLE `Articles` ADD CONSTRAINT fk_Articles_Categories FOREIGN KEY ( Categorie_id ) REFERENCES Categories( id ) ON DELETE NO ACTION ON UPDATE NO ACTION ;

DROP DATABASE `mydb` ;

Ответ 4

MySQL вроде бы отстой для этого. Единственное надежное надежное решение - использовать phpMyAdmin.

Вход > нажмите "Схема" > нажмите "Операции" > найдите "Переименовать базу данных, чтобы:" > написать NewName > нажмите "Перейти".

Так просто. Все разрешения переносятся.