Bunun için en iyi cevap muhtemelen bu bir
tarafından olliiiver ben biraz değiştirilmiş olması. Özellikle herhangi bir tablo ile uğraşmak zorunda kalmadan, sistemdeki her görünüm için bir açılan tablo sorgusu ve oluştur veya değiştir görünümü sorgusu verir. Her görünümü can sıkıcı olacak kendi --ignore-table parametresine dahil etmedikçe, mysqldump görünümleri tablo olarak yeniden oluşturmayı sevdiğinden, açılan tablo sorgusu genellikle önemlidir. BİLGİ_SCHEMA kullanır.
mysql --skip-column-names --batch \
-e "SELECT CONCAT('DROP TABLE IF EXISTS ', TABLE_SCHEMA, '.', TABLE_NAME, \
'; CREATE OR REPLACE VIEW ', TABLE_SCHEMA, '.', TABLE_NAME, ' AS ', \
VIEW_DEFINITION, '; ') AS q FROM INFORMATION_SCHEMA.VIEWS"
Böyle bir şeyi kabuk komut dosyasına dönüştürmek istiyorsanız, --defaults-extra-file = CREDSFILENAME parametresini de kullanmanızı öneririm, böylece komut dosyasında kullanıcı / geçiş belirtmeniz gerekmez.
Kimlik bilgileri dosyası şöyle görünür:
[client]
username=YourUsernameHere
password=YourPasswordHere