web-dev-qa-db-fra.com

Combien de temps faudra-t-il pour renommer la table

Combien de temps faudra-t-il pour renommer une table d'une taille de 219 Go?

Ceci est la spécification de notre serveur:

  • Mémoire: 65 Go
  • Espace disque disponible: 266 Go

MySQL Ver 14.12 Distribution 5.0.77

Désolé pour la confusion. Notre plan est de renommer une table MySQL avec une taille de 219 Go. Combien de temps cela prendra-t-il? Avons-nous besoin d'avoir un grand espace disque pour cette migration?

Moteur de la table: InnoDB.

6
Katrina

La documentation MySQL Voir http://dev.mysql.com/doc/refman/5.6/fr/rename-table.htmlabout le SQL

RENAME table a TO b

ressemble beaucoup au pire puis il est précisément parce que le cas échéant

Lorsque vous exécutez Renommer, vous ne pouvez pas avoir de tables verrouillées ou de transactions actives. Vous devez également avoir les privilèges de modification et de déposer sur la table d'origine et les privilèges de création et d'insertion sur la nouvelle table.

Si vous lisez ceci, il semble que MySQL doit créer une nouvelle table B de la table B de la table A dans le tableau B (insert) et déposez le tableau A.

Ive a analysé le code source off MySQL 5.0.77 derrière la commande SQL

RENAME table a TO b

Et cela ressemble à une opération presque à la place parce que seulement le

  1. .frm (fichier de définition de table)
  2. .trg (fichier de déclenchement)

les fichiers doivent être touchés (renommé) Aucune copie de données réelle entre les tables n'est nécessaire. Cela me fait me demander pourquoi vous devez avoir besoin du privilège d'insertion pour cette commande ..

0
Raymond Nijland