Geliştiriciler, iş akışlarını hızlandırmak için AI ajanlarına (Cursor, Claude, GitHub Copilot) giderek daha fazla güveniyor. Ancak bu araçlar, yanlış kullanıldığında üretim veritabanınıza ciddi zararlar verebilir. "Veritabanını temizle" gibi masum bir komut, tüm tabloların silinmesine yol açabilir. Bu makalede, AI ajanlarıyla çalışırken yapılan 5 yaygın hatayı ve bu hatalardan kaçınmak için uygulayabileceğiniz somut çözümleri inceleyeceğiz.
Hata 1: AI'nın Yanlış Yorumlayabileceği Belirsiz Komutlar: "Kullanılmayan dosyaları temizle" gibi bir komut, AI tarafından "rm -rf /tmp/*" veya daha kötüsü "rm -rf ." olarak yorumlanabilir. Bu, tüm dosyaların silinmesine neden olabilir. Çözüm: Silme işleminden önce bir önizleme adımı ekleyin. Örneğin, "7 günden eski /tmp dosyalarını listele, önce listeyi göster, sonra onay alarak sil" gibi net ve adım adım komutlar kullanın. Asla doğrudan yıkıcı erişim izni vermeyin.
Hata 2: AI'yı Korumasız Ortamda Çalıştırmak: AI ajanları sizin yetkilerinizle çalışır; terminaliniz, veritabanınız ve üretim ortamınız aynı izinlere sahiptir. Gerçek bir olay: Bir geliştirici Claude'dan "veritabanını optimize et" istedi. AI, yoğun saatlerde üretim PostgreSQL veritabanında ANALYZE çalıştırdı ve sorgu gecikmeleri 10 kat arttı. Çözüm: AI bağlantıları için her zaman salt okunur veritabanı bağlantıları kullanın veya Docker sandbox'ı ile çalıştırın. Salt okunur bağlantı için: postgresql://user:pass@host:5432/db?options=--default_transaction_read_only=on. Docker ile: docker run --rm -v $(pwd):/workspace python:3.11 python /workspace/ai_script.py.
Gelecekte Ne Bekleniyor?
Hata 3: AI Tarafından Oluşturulan Veritabanı Migrasyonlarına Güvenmek: AI'nın oluşturduğu bir migrasyon temiz görünebilir, ancak "ALTER TABLE users DROP COLUMN email;" gibi bir komut, e-posta sütununun 47 API uç noktası tarafından kullanıldığını bilmez. Çözüm: Migrasyonları her zaman manuel olarak inceleyin. Yıkıcı sorguları önce EXPLAIN ile test edin. Migrasyon kuru çalıştırma modunu kullanın: Rails için rails db:migrate --dry-run, Prisma için npx prisma migrate diff.
Uzmanların Görüşleri
Hata 4: AI Eylemleri için Denetim İzi Olmaması: AI 10 saniyede 50 komut çalıştırdığında ne olduğunu nasıl bileceksiniz? Çözüm: Her şeyi kaydedin. Her AI eylemi için bir log girişi oluşturun: { 'timestamp': '2025-01-15T10:30:00Z', 'agent': 'cursor-claude', 'command': 'DELETE FROM sessions WHERE expired_at < NOW() - INTERVAL 30 DAY', 'status': 'blocked', 'reason': 'DELETE without WHERE clause safety check' }. Yardımcı araçlar: MCP Guard (gerçek zamanlı AI komut izleme), script komutu (terminal oturumu kaydı), özel shell sarmalayıcıları.
Sonuç ve Değerlendirme
Hata 5: Geri Alma Planı Olmaması: AI bir tabloyu siler, panik yaparsınız. Yedek yok, geri alma komut dosyası yok. Çözüm: AI'nın herhangi bir şeye dokunmasına izin vermeden önce güvenlik yedeklemesi oluşturun: pg_dump mydb > backup_$(date +%Y%m%d_%H%M%S).sql. Ayrıca işlemleri (transaction) kullanın: BEGIN; -- AI sorguları burada -- Bir sorun varsa: ROLLBACK; -- Her şey iyiyse: COMMIT;. Altın kural: 30 saniyede geri alamayacağınız bir işlemi AI'ya yaptırmayın.
Kaynak: dev.to