Tüm Ürünler
Search
Belge Merkezi

ApsaraDB RDS:Use the SQL Explorer and Audit feature

Son Güncelleme:Oct 13, 2026

SQL Explorer ve Audit, ApsaraDB RDS for MySQL örneğinizde yürütülen her SQL ifadesini (hesap adı, kaynak IP adresi ve yürütme ayrıntıları dahil) yakalar ve bunları denetim günlükleri olarak depolar. Bu verileri şu amaçlarla kullanabilirsiniz:

  • Güvenlik uyumluluğu için tüm Veri Sorgulama Dili (DQL), Veri İşleme Dili (DML) ve Veri Tanımlama Dili (DDL) işlemlerinin eksiksiz bir denetim izini saklayın

  • Performans sorunlarını, anormal oturumları ve SQL sağlık durumunu inceleyin

  • Veri kaybı veya bozulma durumunda kaydedilen SQL ifadelerini yeniden oynatarak verileri geri yükleyin

Önemli

SQL Explorer ve Audit, az miktarda CPU kaynağı kullanarak verileri doğrudan veritabanı çekirdeklerinden yakalar. Özelliğin etkinleştirilmesi ve kullanılması örnek performansını minimum düzeyde etkiler.

Ön Koşullar

Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:

Bir RAM kullanıcısının SQL statement search özelliğini kullanması gerekiyorsa, bu RAM kullanıcısına AliyunRDSReadOnlyWithSQLLogArchiveAccess ilkesini ekleyin. Ayrıntılar için bkz. ApsaraDB RDS izinlerini yönetmek için RAM kullanma veya arama ve dışa aktarma özelliklerini kapsayan özel bir ilke kullanarak izin verme.

ApsaraDB RDS konsolunda, yalnızca geçerli bölgede desteklenen DAS Enterprise Edition'ın en son sürümü tarafından sağlanan SQL Explorer ve Audit özelliği etkinleştirilebilir.

Desteklenen Bölgeler

China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), Malaysia (Kuala Lumpur), Indonesia (Jakarta), US (Silicon Valley), UK (London), US (Virginia), Germany (Frankfurt)

Özellikler


Özellik


Açıklama


Arama (denetim)


Veritabanı, durum ve yürütme süresi dahil olmak üzere SQL ifadesi yürütme kayıtlarını sorgulayın ve dışa aktarın


SQL Explorer


SQL sağlığını teşhis edin, performans sorunlarını giderin ve iş trafiğini analiz edin


Güvenlik denetimi


Riskleri belirleyin: yüksek riskli SQL ifadeleri, SQL enjeksiyon saldırıları ve yeni erişim kaynakları


Trafik oynatma ve stres testi


Örneğinizin yatay olarak ölçeklendirilip ölçeklendirilmemesi gerektiğini doğrulamak için gerçek trafiği yeniden oynatın


SQL analizi


Anormal sorguları ortaya çıkarmak ve performans darboğazlarını bulmak için belirli bir zaman aralığındaki SQL ifadelerini analiz edin

Bu özellik şu senaryolar için uygundur:

  • Finans, güvenlik, borsa, kamu hizmetleri ve sigorta gibi yüksek veri güvenliği gerektiren sektörler

  • Sorun giderme, SQL performansı analizi ve anormal oturum tanımlama

  • Özellik tarafından kaydedilen SQL ifadelerini kullanarak veri kaybı veya bozulma kurtarma işlemi

Faturalandırma

Faturalandırma, özelliği ne zaman ve nasıl etkinleştirdiğinize bağlıdır.

SQL Explorer ve Audit'a yükseltilmeden önce orijinal SQL Explorer özelliğini etkinleştirdiyseniz, ücret ApsaraDB RDS faturanıza dahildir. Fiyatlandırma örnek bölgesine göre belirlenir ve GB-saat başına faturalandırılır:


Oran


Bölgeler


0,0012 USD/GB-saat


China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu)


0,0015 USD/GB-saat


China (Hong Kong), US (Silicon Valley), US (Virginia)


0,0018 USD/GB-saat


Singapore, Japan (Tokyo), Germany (Frankfurt), UAE (Dubai), Malaysia (Kuala Lumpur), Indonesia (Jakarta), UK (London)

SQL Explorer'dan SQL Explorer ve Audit'a yükseltmek için: ApsaraDB RDS konsoluna giriş yapın, SQL Explorer sekmesine gidin ve iletişim kutusunda One click upgrade seçeneğine tıklayın. Yükseltmeden sonra faturalandırma DAS faturanıza taşınır.

SQL Explorer ve Audit yükseltmeden sonra etkinleştirildiyse, ücret DAS faturanıza dahildir. Desteklenen bölgeler ve oranlar DAS Enterprise Edition sürümüne göre değişir. Ayrıntılar için bkz. DAS sürümleri ve desteklenen özellikler ve Faturalandırma.

Sınırlamalar

Çevrimiçi sorgu sınırlamaları

  • Zaman aralığı: Her sorgu en fazla 24 saatlik bir pencereyi kapsar. 24 saatten uzun bir süreyi kapsayan kayıtları sorgulamak için SQL Explorer günlüklerine erişmek üzere Simple Log Service (SLS) kullanın. Ayrıntılar için bkz. RDS SQL denetim günlüklerini toplama.

  • Sorgu yöntemi: Birden çok filtre koşulunu birleştirin. Bulanık eşleşme desteklenmez. Her anahtar kelime en az dört karakter içermelidir.

SQL Explorer ve Audit sınırlamaları

  • Depolama konumu: Denetim günlükleri Database Autonomy Service (DAS) tarafından ayrı olarak depolanır ve RDS örneğinizin yerel disk alanını tüketmez. SQL Explorer ve Audit'in etkinleştirilmesi örneğinizin disk kullanımını artırmaz.

  • Oturum açma kayıtları: ApsaraDB RDS for MySQL varsayılan olarak oturum açma olaylarını kaydetmez. Oturum açma olayları yalnızca SQL Explorer and Audit özelliğini etkinleştirdikten sonra kaydedilir; bundan sonra LOGIN işlem türünü kullanarak oturum açma kayıtlarını izleyebilirsiniz. Özelliği etkinleştirmeden önce gerçekleşen oturum açmalar saklanmaz ve sonrasında alınamaz.

  • Maksimum SQL ifadesi uzunluğu: En fazla 8.192 bayt. Sınır, loose_rds_audit_max_sql_size (MySQL 5.6 ve 5.7) veya loose_rds_audit_log_event_buffer_size (MySQL 8.0) parametreleri tarafından kontrol edilir; üç parametre arasındaki en küçük değer uygulanır. Veri toplama sırasında bir önek eklendiğinden, etkili sınır 8.192 bayttan veya yapılandırdığınız değerden biraz daha düşüktür.

  • İşlem Kimliğine göre sorgulama: loose_rds_audit_log_version parametresini MYSQL_V3 olarak ayarlayın ve küçük motor sürümünün gereksinimleri karşıladığından emin olun: MySQL 8.0 için sürüm 20210930 veya üzeri, MySQL 5.7 için sürüm 20210630 veya üzeri gerekir. Ayrıntılar için bkz. MySQL 8.0 çalıştıran ApsaraDB RDS örnekleri tarafından desteklenen parametreler ve Küçük motor sürümünü yükseltme.

  • SQL Explorer Trial Edition: DescribeSQLLogRecords ve DescribeSQLLogFiles API işlemleri kullanılamaz. Ayrıntılar için bkz. DescribeSQLLogRecords ve DescribeSQLLogFiles.

  • Kilit bekleme süresi: SQL Explorer günlüklerinde kaydedilir ancak yavaş sorgu günlüklerinde kaydedilmez.

  • Prepare yöntemi: SQL Explorer, hazırlanmış her ifade için iki kayıt tutar: biri soru işareti (?) yer tutucusuyla, diğeri ise gerçek değerle.

Diğer hususlar

  • İşlem düzeyinde bağlantı havuzu içeren veritabanı proxy'si: İşlem düzeyinde bağlantı havuzu etkinleştirildiğinde bağlantılar yeniden kullanılabilir. SQL Explorer günlüklerindeki IP adresi ve bağlantı noktası, SHOW PROCESSLIST komutunun döndürdüğünden farklı olabilir. Ayrıntılar için bkz. Veritabanı proxy'leri nelerdir?

  • PolarDB-X 1.0'a ekli örnekler: PolarDB-X 1.0'a ekli bir RDS örneğinde yürütülen SQL ifadeleri, yatay parçalama nedeniyle birden çok SQL Explorer günlük girişi oluşturur.

SQL Explorer ve Audit'i Etkinleştirme

Simple Log Service uygulamasındaki CloudLens for RDS içinde RDS örneğiniz için denetim günlüğü toplama özelliğini etkinleştirmek, SQL Explorer ve Audit'i otomatik olarak etkinleştirir. Ayrıntılar için bkz. CloudLens for RDS .
SQL Explorer ve Audit devre dışı bırakılırsa ve SQL yürütme kayıtlarını görüntülemeniz gerekirse ikili günlükleri kontrol edin. İkili günlükler yalnızca yedekleme saklama süresi içindeki ekleme, silme ve değiştirme işlemlerini içerir; kaynak IP adresleri ve hesaplar mevcut değildir. Ayrıntılar için bkz. İkili günlük dosyalarını yönetme .
  1. Instances sayfasına gidin. Üst gezinme çubuğunda RDS örneğinin bulunduğu bölgeyi seçin. Örneği bulun ve kimliğine tıklayın.

  2. Sol gezinme bölmesinde Autonomy Services > SQL Explorer and Audit seçeneğini belirleyin.

  3. Enable DAS Enterprise Edition V3 seçeneğine tıklayın.image

  4. Etkinleştirmek istediğiniz alt özellikleri seçin ve Submit seçeneğine tıklayın.

Saklama Süresini Değiştirme

Uyarı

Saklama süresinin azaltılması, yeni süreden daha uzun süreyle saklanan denetim günlüklerini hemen siler. Saklama süresini azaltmadan önce günlüklerinizi dışa aktarın ve kaydedin.

  1. Instances sayfasına gidin. Bölgeyi seçin, örneği bulun ve kimliğine tıklayın.

  2. Sol gezinme bölmesinde Autonomy Services > SQL Explorer and Audit seçeneğini belirleyin.

  3. Service Settings seçeneğine tıklayın.

  4. Service Settings panelinde saklama süresini değiştirin ve Submit seçeneğine tıklayın.

SQL Explorer ve Audit'i Devre Dışı Bırakma

Uyarı

SQL Explorer ve Audit'in devre dışı bırakılması tüm denetim günlüklerini kalıcı olarak siler. Özelliği devre dışı bırakmadan önce günlüklerinizi dışa aktarın. Özelliği daha sonra yeniden etkinleştirirseniz, günlükler yeniden etkinleştirme noktasından itibaren kaydedilir; önceki günlükler geri yüklenmez.

  1. Instances sayfasına gidin. Bölgeyi seçin, örneği bulun ve kimliğine tıklayın.

  2. Sol gezinme bölmesinde Autonomy Services > SQL Explorer and Audit seçeneğini belirleyin.

  3. Search sekmesinin Logs bölümünde Export seçeneğine tıklayın.

    Her dışa aktarma işlemi, 7 günlük bir pencere içinde en fazla 10 milyon kaydı kapsar. Daha geniş bir zaman aralığındaki günlükleri dışa aktarmak için Export Time Range parametresini kullanın.
  4. İletişim kutusunda Exported Fields ve Export Time Range seçeneklerini yapılandırın ve ardından OK seçeneğine tıklayın.

  5. Dışa aktarılan günlük dosyasını indirin ve yerel olarak kaydedin.

  6. Service Settings seçeneğine tıklayın ve özelliği devre dışı bırakın. DAS Enterprise V3 etkinleştirilmişse, SQL Explorer ve Audit modülündeki tüm özelliklerin seçimini kaldırın ve Submit seçeneğine tıklayın.

    SQL Explorer ve Audit verileri tarafından kullanılan depolama alanı, özellik devre dışı bırakıldıktan bir saat sonra serbest bırakılır.

DAS Enterprise Edition Sürümleri Arasında Veri Geçiş Yapma

Uyarı

Veri geçişi durdurulamaz veya geri alınamaz. Devam etmeden önce geçiş talimatlarını dikkatlice okuyun.

RDS örneğiniz DAS Enterprise Edition V3'ü destekliyorsa maliyetleri düşürmek için verileri V1 veya V2'den V3'e geçirin. Geçiş adımları için bkz. DAS Enterprise Edition sürümleri arasında veri nasıl geçiş yapılır?

Her sürüm farklı bir depolama mimarisi kullanır:

  • V1: Orijinal depolama mimarisi

  • V2: Sıcak ve soğuk verilerin hibrit depolaması — V1'e göre daha düşük maliyetle daha yüksek performans

  • V3: Özellik bazlı faturalandırma ile sıcak ve soğuk verilerin hibrit depolaması — V2'den daha esnek

SSS

Tam İstek İstatistiklerindeki logout! ifadesi neyi belirtir?

logout! bir bağlantı kesme olayını işaretler. Gösterilen yürütme süresi, son etkileşim ile bağlantı kesilmesi arasındaki boşta kalma süresidir. Durum kodu 1158 ağ bağlantısının kesildiğini gösterir; bu durum şu nedenlerle gerçekleşebilir:

  • İstemci bağlantısı zaman aşımına uğradı

  • Sunucu bağlantıyı kesti

  • Bağlantı, interactive_timeout veya wait_timeout değerini aştı

Kaynak İstatistikleri sekmesindeki Erişim Kaynağı sütununda neden yüzde işareti (%) görünür?

Access Source sütununda bir % görünmesi, saklı yordamın dahil olduğunu gösterir. Bu durum, saklı yordamın ana bilgisayar olarak % içeren bir DEFINER ile tanımlanmasından kaynaklanır; örneğin, ` CREATE DEFINER= test_user @% PROCEDURE das () `.

Bu davranışı yeniden oluşturmak için:

  1. ApsaraDB RDS konsolunda bir veritabanı ve standart bir hesap oluşturun ve bu hesaba veritabanı üzerinde izinler verin. Ayrıntılar için bkz. Hesaplar ve veritabanları oluşturma.

  2. CLI aracılığıyla test_user hesabını kullanarak örneğe bağlanın. Ayrıntılar için bkz. Bir veritabanı istemcisi veya CLI kullanarak ApsaraDB RDS for MySQL örneğine bağlanma.

  3. testdb veritabanına geçiş yapın ve bir saklı yordam oluşturun:

    -- Switch to testdb
    USE testdb;
    
    -- Create a stored procedure
    DELIMITER $$
    DROP PROCEDURE IF EXISTS `das` $$
    CREATE DEFINER=`test_user`@`%` PROCEDURE `das`()
    BEGIN
    SELECT * FROM information_schema.processlist WHERE Id = CONNECTION_ID();
    END $$
    DELIMITER;
  4. Ayrıcalıklı bir hesap kullanarak örneğe bağlanın. Ayrıntılar için bkz. Bir veritabanı istemcisi veya CLI kullanarak ApsaraDB RDS for MySQL örneğine bağlanma.

  5. Saklı yordamı çağırın:

    -- Switch to testdb
    USE testdb;
    
    -- Call the stored procedure
    CALL das();

    Beklenen çıktı:

    +--------+-----------+--------+--------+---------+------+-----------+-------------------------------------------------------------------------+
    | ID     | USER      | HOST   | DB     | COMMAND | TIME | STATE     | INFO                                                                    |
    +--------+-----------+--------+--------+---------+------+-----------+-------------------------------------------------------------------------+
    | 487818 | test_user | %:2065 | testdb | Query   |    0 | executing | SELECT * FROM information_schema.processlist WHERE Id = CONNECTION_ID() |
    +--------+-----------+--------+--------+---------+------+-----------+-------------------------------------------------------------------------+

Sonuç döndüren bir sorgu yürüttükten sonra Günlükler bölümü sıfır taranan satır gösteriyor. Neden?

Hızlı sorgu önbelleği özelliği etkinleştirilmiş. Aynı sorgu önbelleğe isabet ettiğinde, MySQL InnoDB'yi taramadan doğrudan önbelleğe alınmış sonucu döndürür; bu nedenle taranan satır sayısı sıfırdır. Ayrıntılar için bkz. Hızlı sorgu önbelleği.

SQL Explorer günlükleri ile ikili günlükler arasındaki farklar nelerdir?

Her iki günlük türü de RDS örneğinizdeki artımlı değişiklikleri yakalar ancak kapsam ve kullanım amaçları açısından farklılık gösterirler:


SQL Explorer günlükleri


İkili günlükler


Kapsam


Tüm DQL, DML ve DDL işlemleri


Yalnızca ekleme, silme ve değiştirme işlemleri


Tamamlık


Yoğun yük altında küçük sayıda kayıt kaybolabilir


Yedekleme saklama süresi içinde doğru


Kullanılabilirlik


Gerçek zamanlı


Gerçek zamanlı olarak oluşturulmaz; Object Storage Service (OSS) öğesine periyodik olarak aktarılır, 7 gün boyunca saklanır


Kaynak IP ve hesap içerir


Evet


Hayır


En uygun kullanım


Uyumluluk denetimi, sorun giderme, tam etkinlik analizi


Doğru artımlı verileri kullanarak veri kurtarma

Şu anda yazılan ikili günlük dosyaları OSS'ye aktarılamaz. Sonuç olarak, Upload Binlogs özelliği kullanılırken bazı dosyaların yüklenmesi başarısız olabilir. Ayrıntılar için bkz. RDS for MySQL örneği için ikili günlükleri alma ve ayrıştırma

Konsoldan SQL Explorer giriş noktası kayboldu. Neden?

SQL Explorer ve Audit, SQL Explorer'ın güncellenmiş bir sürümüdür. Giriş noktası artık SQL Explorer and Audit olarak etiketlenmiştir.

Orijinal SQL Explorer özelliğini etkinleştirebilir miyim?

Hayır. RDS örneklerinde yalnızca SQL Explorer ve Audit'in en son sürümü etkinleştirilebilir.

SQL denetim kayıtlarını dışa aktardıktan sonra sistemden silinir mi?

Hayır. Denetim kayıtlarının dışa aktarılması, bunları sistemden silmez.

SQL Explorer ve Audit, veritabanı hesabı düzeyinde uyarı yapılandırmayı destekler mi (örneğin, belirli bir hesabı uyarı bildirimlerinden hariç tutma)?

Hayır. SQL Explorer ve Audit için uyarı ve denetim ayarları örnek düzeyinde uygulanır ve bireysel veritabanı hesapları için farklılaştırılamaz. Örneğin, "kullanıcı A uyarı almaz" veya "yalnızca kullanıcı B'nin işlemleri denetlenir" şeklinde yapılandırma yapamazsınız. Kullanıcı başına uyarı bildirimlerini yönetmek için bunları uygulama katmanında veya Cloud Monitor bildirim ilkelerini kullanarak filtreleyin.

Bir veri silme işleminin kaynağını izlemek için denetim günlüklerini nasıl kullanırım?

Tablo verileri yanlışlıkla veya kötü niyetle silinirse, silme işlemini gerçekleştiren hesabı ve IP adresini belirlemek için SQL Explorer ve Audit'i kullanabilirsiniz:

  1. ApsaraDB RDS konsoluna giriş yapın. Örneği bulun ve kimliğine tıklayın.

  2. Sol gezinme bölmesinde Autonomy Services > SQL Explorer and Audit seçeneğini belirleyin.

  3. Audit sekmesinde, Logs bölümünde zaman aralığını silme işleminin gerçekleştiği dönemi kapsayacak şekilde ayarlayın ve isteğe bağlı olarak veritabanı adına göre filtreleyin.

  4. SQL anahtar kelimesi arama kutusuna DELETE girin ve arama simgesine tıklayın.

  5. Sonuçlarda DELETE işlemi kaydını bulun ve hesap adı ile istemci IP adresi dahil olmak üzere ayrıntıları görüntülemek için üzerine tıklayın.

Not

Denetim günlüklerinde kaydedilen IP adresi (HostAddress), gerçek istemci IP adresi yerine RDS proxy IP adresi olabilir. İşlemin gerçek kaynağını doğrulamak için VPC ağ yapılandırmanızı çapraz referans olarak kullanın veya istemci tarafı bağlantı günlüklerini kontrol edin.

Denetim kayıtlarını filtrelemek için hata günlük alanlarını nasıl birleştiririm?

Veritabanı adı ve istemci IP adresi gibi hata günlüklerinden alınan alanlar, anormal bağlantıları bulmak için SQL Explorer ve Audit'te filtre koşulları olarak kullanılabilir. Yöntem:

  1. ApsaraDB RDS konsoluna giriş yapın ve örnek ayrıntıları sayfasına gidin. Sol gezinme bölmesinde Autonomy Services > SQL Explorer and Audit seçeneğini belirleyin.

  2. Audit sekmesinde, gelişmiş filtre koşullarını genişletmek için Enable Advanced Query seçeneğine tıklayın.

  3. Database alanına veritabanı adını girin, örneğin battery.

  4. Client IP alanına hata günlüğündeki ana bilgisayarı girin, örneğin 172.25.244.207.

  5. Time Range seçeneğini, anormal bağlantının gerçekleştiği dönemi kapsayacak şekilde ayarlayın.

  6. Birleştirilmiş filtre sorgusunu çalıştırmak için Query seçeneğine tıklayın.

Not

Client IP filtre koşulu yalnızca Enable Advanced Query seçeneğine tıkladıktan sonra görüntülenir. Varsayılan olarak yalnızca zaman aralığı, anahtar kelime, kullanıcı, veritabanı ve işlem türü filtre koşulları gösterilir.

Bir örneğin oturum açma geçmişini nasıl sorgularım?

Search (audit) sonuçlarını işlem türüne göre filtreleyebilirsiniz. SQL Explorer and Audit sayfasında Search sekmesini açın ve Operation type filtresini LOGIN olarak ayarlayarak örneğin oturum açma geçmişini sorgulayın. Sonuç listesi, kimin ve nereden oturum açtığını belirlemenize yardımcı olan User (oturum açma hesabı) ve Client IP sütunlarını içerir.

Belirli bir satırın durumunu değiştiren SQL ifadesini bulamıyorsam ne yapmalıyım?

SQL Explorer and Audit işlemleri SQL ifadesi düzeyinde kaydeder ve alan düzeyinde önce-sonra değer karşılaştırması sağlamaz. status gibi belirli bir alanın değerini bir değişiklikten önce ve sonra görüntülemek için değişikliğin kaynağını bulmak amacıyla Data Management (DMS) veri izleme özelliğini kullanın.