Как мы можем переименовать имя базы данных в MySQL 5.0 - PullRequest
12 голосов
/ 27 марта 2009

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

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

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

Ответы [ 5 ]

21 голосов
/ 27 марта 2009

Я думаю, что есть только один способ (кроме переименования каталога в каталоге данных MySQL, который не будет работать для таблиц 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

Чтобы удалить старую БД:

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 из-за ее слишком высокой опасности.

17 голосов
/ 27 марта 2009

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

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

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

    СОЗДАТЬ БАЗУ ДАННЫХ newaccounts;

  2. Перенос каждой таблицы один за другим

    ПЕРЕМЕНИТЬ СТОЛ

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

2 голосов
/ 31 мая 2013

здесь, я переименую базу данных mydb в электронную коммерцию, вы выполняете эти шаги, но с помощью 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` ;
2 голосов
/ 27 сентября 2012

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

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

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

0 голосов
/ 26 февраля 2019

Чтобы переименовать имя базы данных MySQL, выполните следующие действия:

1) Click the database name 

2) Click at Operations from the top menu

3) Type new database name Under Rename database to:

Please check the screen shot

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...