Ben bir PHP geliştiricisiyim bu yüzden katı olmayın. Büyük bir masam var ~ 5.5gb dökümü. Başbakanımız yeni bir özellik için yeni bir sütun yapmaya karar verdi. Tablo InnoDB yani ne denedim:
Masa kilidi ile ekranda tabloyu değiştirin. ~ 30 saat aldı ve hiçbir şey. Ben de durdum. Öncelikle bir hata yaptım çünkü tüm işlemleri bitirmedim ama ikinci kez çoklu kilit yoktu. Durum böyleydi
copy to tmp table
.Bu tablo için bölümleme de uygulamam gerektiğinden, aynı ad ve yeni yapıya sahip döküm, yeniden adlandırma ve tablo yapmaya karar veriyoruz. Ama döküm katı kopya yapıyor (en azından başka bir şey bulamadım). Bu yüzden yeni bir sütun dökümü
sed
ve sorgu için ekledi . Ancak bazı garip hatalar başladı. Ben charset neden olduğuna inanıyorum. Tablo utf-8 ve dosyadan sonra us-ascii oldused
. Bu yüzden verilerin% 30'unda hatalar (bilinmeyen komut '\' ') var. Yani bu da kötü bir yol.
Bunu başarmak ve hız performansı için diğer seçenekler nelerdir (php script ile yapabilirim, ancak yaş alacak). INSERT SELECT
Bu durumda ne performans gösterecek .
Herhangi bir ilerleme için teşekkürler.
SET NAMES utf8
veCOLLATION
.Ama meh idk neden% 30 veri sonra bozuksed
. Toplu yükün en hızlı olacağını düşünüyorum ama belki eksik olduğum bir şey daha var. Eyvallah Mark