Genel Bakış
Gerçekleştirilmiş görünüm günlüğü, kaynak veritabanındaki tabloyu yeniden adlandırıldığında yeniden oluşturulduğundan ve gerçekleştirilmiş görünümün tamamen yenilenmesi çok uzun sürdüğünden, silme işleminden sonra yeniden yapılandırma yöntemi burada benimsenmiştir. Öyleyse, internette olduğu gibi bırakıp yeniden inşa etmenin bir sakıncası var mı? O zaman çukura adım atmanız muhtemeldir ...
1. Gerçekleştirilmiş görünüm tanımını görüntüleyin
dbms_metadata.get_ddl ('MATERIALIZED_VIEW', ' < TAB_NAME > ',' < Schema_name > ') ikiliden;
2. İndeksi materyalleştirilmiş görünümde görüntüleyin
İndeksi materyalleştirilmiş görünümde görüntüleyin SEÇİN * DBA_INDEXES WHERE TABLE_NAME = 'materyalleştirilmiş görünüm adı'; --Dizin tanımını görüntüle dualden dbms_metadata.get_ddl ('INDEX', 'INDEX_NAME', 'INDEX_OWNER') seçin;
3. Materyalleştirilmiş tablonun günlük tablosunu yeniden oluşturun (kaynak veritabanında yürütülür)
-Gerçekleştirilmiş görünüm günlüğünü silin DROP MATERIALIZED VIEW LOG ON tablo adı; -Gerçekleştirilmiş görünümün oluşturulacağı tabloya birincil anahtarı olan bir günlük tablosu ekleyin PRIMARY KEY İLE MATERYALLEŞTİRİLMİŞ GÖRÜNÜM GÜNLÜĞÜ tablo adı oluşturun;
4. Gerçekleştirilmiş görünümü silin
DROP MATERIALIZED VIEW tablo adı;
5. Gerçekleştirilmiş görünümler ve dizinler oluşturun
5.1, somutlaştırılmış bir görünüm oluşturun
Burada önceden aradığımız tanımı kullanıyoruz
5.2. Bir dizin oluşturun (birincil anahtar dizini otomatik olarak oluşturulacaktır, yeniden oluşturmaya gerek yoktur)
Bu adımın kaçırılma olasılığı çok yüksek, bu yüzden dikkatli olun!
DİZİN OLUŞTUR ...
6. Oluşturmanın başarılı olup olmadığını doğrulayın
SEÇİM * GERÇEKLEŞTİRİLMİŞ görünüm tablosu adı;
7. Sorgu
Gerçekleştirilmiş görünüm yenileme durumu bilgilerini ve somut görünüm günlüğünü buradan kontrol edin
MVIEW_NAME, LAST_REFRESH_DATE, USER_MVIEWS GİZLİLİĞİNİ SEÇİN; USER_MVIEW_REFRESH_TIMES'TEN LAST_REFRESH ADI SEÇİN; MLOG'DAN SEÇİN * _xx;
Faydalı bulursanız, lütfen iletmeye yardım edin! Daha sonra daha fazla devop ve DBA içeriği paylaşacağım ve ilgilenen arkadaşlar buna dikkat edebilir ~
-
- MySQL, veritabanı tablosunun frm dosyasını ve ibd dosyasını yanlışlıkla siler mi? Böyle geri yüklemeyi dene
-
- Mysql deneme-Veritabanı tablosu .frm dosyasını yanlışlıkla sildim, ancak .ibd dosyasını nasıl geri yükleyebilirim?
-
- Zabbix4.2'ye dayalı Linux sunucusu TCP bağlantı durumu izleme uygulaması
-
- Dokuzdan dokuza çarpım tablosunun günlük Python uygulaması
-
- Xiaomi uçmak için açık kaynaklı bir WEB grafik aracını paylaşın - SQL tek tuş optimizasyonunu destekleyin
-
- Python günlük alıştırması nasıl kopyalanır
-
- Bir MySQL deneyinden performance_schema / information_schema yetkilendirmesini görmek için
-
- Xiaomi uçurumunu paylaşın SQL optimizasyonu ve yeniden yazma için tek tıkla optimizasyon aracı ile otomatikleştirilmiş araç
-
- Python günlük mükemmel kare sayısı uygulaması
-
- Birinci sınıf mı yoksa tembel koltuk mu? 9 numaralı robot kendi kendini dengeleyen elektrikli sandalye CES 2020'de tanıtıldı
-
- Python günlük uygulama üç sayı sıralaması
-
- Uygulama web sayfası URL'sinin durum izlemeyi zabbix4.2'ye göre yapılandırın