• 29-04-2022, 03:23:14
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba,

    Mysql'da pending tablosu için günlük çalışacak bir kod yazmak istiyorum, pending tablosundakileri her gün x bir saatte silsin istiyorum bunu nasıl yapabilirim?
    Yapabilecek arkadaşlar ücretli/ücretsiz yazabilirse çok sevinirim.
  • 29-04-2022, 03:25:31
    #2
    Üyeliği durduruldu
    Cron job araştırın hocam
  • 29-04-2022, 03:30:15
    #3
    https://eminylmz.dev/php-ileri-tarih...eri-ve-kontrol

    İnceleyebilirsiniz hocam.
  • 29-04-2022, 03:30:17
    #4
    Basit silme işlemi yaparak sayfayı 24 saatte bir yenileyebilirsiniz
  • 29-04-2022, 03:35:31
    #5
    Merhaba,

    Örnek olarak şu şekilde her gece 00:00 itibari ile işlev gösterecek şekilde bir zamanlanmış görev (cronjob) tanımlamasında bulunabilirsiniz.

    0 0 * * * /usr/bin/mysql -e "use mydb;delete from pending;" >/dev/null 2>&1

    Ek olarak, yine örnek şekilde https://crontab-generator.org/ bağlantısında yer alan cron tanımlama otomasyonu ile özel kurallar belirleyebilirsiniz.

    Teşekkürler.
  • 29-04-2022, 03:42:07
    #6
    Aşağıdaki kod ile eğer mysql de event scheduler açıksa otomatik hergün 04:30 da çalışır ve siler cronla uğraşmanıza gerek yok.

    CREATE EVENT `verisil` ON SCHEDULE EVERY 1 DAY STARTS '2022-04-25 04:30:00' ENDS '2020-05-12 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO
    Delete from pending where koşulları buraya girin
  • 29-04-2022, 04:05:50
    #7
    anx adlı üyeden alıntı: mesajı görüntüle
    Merhaba,

    Örnek olarak şu şekilde her gece 00:00 itibari ile işlev gösterecek şekilde bir zamanlanmış görev (cronjob) tanımlamasında bulunabilirsiniz.

    0 0 * * * /usr/bin/mysql -e "use mydb;delete from pending;" >/dev/null 2>&1

    Ek olarak, yine örnek şekilde https://crontab-generator.org/ bağlantısında yer alan cron tanımlama otomasyonu ile özel kurallar belirleyebilirsiniz.

    Teşekkürler.
    Doğrudur değil mi üstad?

    /usr/bin/mysql -e "use mydb;delete from pending;" >/dev/null 2>&1

  • 29-04-2022, 11:40:34
    #8
    Peace adlı üyeden alıntı: mesajı görüntüle
    Doğrudur değil mi üstad?

    /usr/bin/mysql -e "use mydb;delete from pending;" >/dev/null 2>&1

    Paylaşımlı bir hosting hesabı kullanıyorsanız, bu şekilde bir tanımlamada işlemin başarısız olma ihtimali yüksek.

    Root yetkisine sahip bir sunucu üzerinde crontab -e komutu ile düzenlemede bulunabilirsiniz.

    Örnek verdiğim komutta yazan mydb ibaresi yerine kendi veri tabanı isminizi yazmanız gerekmektedir.
  • 29-04-2022, 23:43:29
    #9
    anx adlı üyeden alıntı: mesajı görüntüle
    Paylaşımlı bir hosting hesabı kullanıyorsanız, bu şekilde bir tanımlamada işlemin başarısız olma ihtimali yüksek.

    Root yetkisine sahip bir sunucu üzerinde crontab -e komutu ile düzenlemede bulunabilirsiniz.

    Örnek verdiğim komutta yazan mydb ibaresi yerine kendi veri tabanı isminizi yazmanız gerekmektedir.

    mydb alanına veritabanı adını yazıp ekledim yanlış görmüyorsam bugün 00:00 da çalışması gerekiyor.