SORU
15 EYLÜL 2008, PAZARTESİ


Nasıl hızlı bir şekilde mysql veritabanı (şema adı değişikliği) yeniden adlandırırım?

MySQL MySQL manuel bu kapsar.

Genellikle ben sadece veritabanı dökümü ve yeni bir adla yeniden içeri aktarın. Bu çok büyük veritabanları için bir seçenek değil. Anlaşılan RENAME {DATABASE | SCHEMA} db_name TO new_db_name; does bad things, exist only in a handful of versions, and is a bad idea overall.

Bu iş için ihtiyacı varOradaçok daha farklı şeyler saklayan., ^strong>Hali hazırda.

CEVAP
19 ŞUBAT 2010, Cuma


Orada, aşağıdaki iş gibi görünüyor: yeni boş bir veritabanı oluşturmak yeni bir veritabanı içine sırayla her tablo, yeniden adlandırın:

RENAME TABLE old_db.table TO new_db.table;

Bundan sonra izinleri ayarlamak gerekir.

Bir kabuk komut dosyası için, bunu yapabilirsiniz:

mysql -sNe old_db 'show tables' | while read table; \
    do mysql -sNe "rename old_db.$table to new_db.$table"; done

Eğer saklı prosedürler de, daha sonra bunları kopyalayabilirsiniz:

mysqldump -R old_db | mysql new_db

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Codecourse

    Codecourse

    3 ŞUBAT 2009
  • CrazyMan

    CrazyMan

    14 Mayıs 2008
  • World Science Festival

    World Scienc

    1 Mayıs 2008