Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Mysql PHP Cron để cập nhật thống kê người dùng

MySQL giải pháp:

Bạn yêu cầu MySQL event để chạy trên cơ sở thời gian.

Và tôi khuyên bạn nên viết update các câu lệnh dựa trên tình trạng của bạn và liên kết quy trình tương tự với bộ lập lịch sự kiện mà bạn muốn chạy vào mỗi ngày bắt đầu.

Bạn có thể thực hiện như sau:.

Ví dụ :

delimiter //
drop event if exists event_scheduling_sample;

create event if not exists event_scheduling_sample
--  on schedule every 86400 second starts 00:00:00
--  at timestamp( adddate( current_date, 1 ),'00:00:00' )
--  on schedule every 1 day 
    --   starts current_timestamp 
    --   ends current_timestamp + interval '5' day
--  on schedule every 1 day 
    --   starts current_timestamp 
    --   ends timestamp( current_date,'23:59:59' )

  on schedule every 1 day 
     starts timestamp( current_date + 1, '00:00:00' )

  comment 'event scheduling sample'
  do
    call db_name.procedure_name_that_updates_the_user_records();
;
//
delimiter ;

Tham khảo : MySQL:TẠO Cú pháp SỰ KIỆN

Trạng thái mặc định của Trình lập lịch sự kiện bị TẮT.
Bạn yêu cầu bật nó bằng bất kỳ câu lệnh nào sau đây.

SET GLOBAL event_scheduler = ON;
SET @@global.event_scheduler = ON;
SET GLOBAL event_scheduler = 1;
SET @@global.event_scheduler = 1;

Khi Bộ lập lịch sự kiện được BẬT, chuỗi của bộ lập lịch sự kiện được liệt kê trong đầu ra của SHOW PROCESSLIST dưới dạng một quy trình daemon và trạng thái của nó được biểu diễn như được hiển thị ở đây:

mysql> SHOW PROCESSLIST\G
*************************** 1. row ***************************
     Id: 1
   User: root
   Host: localhost
     db: NULL
Command: Query
   Time: 0
  State: NULL
   Info: show processlist
*************************** 2. row ***************************
     Id: 2
   User: event_scheduler
   Host: localhost
     db: NULL
Command: Daemon
   Time: 3
  State: Waiting for next activation
   Info: NULL
2 rows in set (0.00 sec)

Khi Bộ lập lịch sự kiện được BẬT, bạn sẽ thấy nó hoạt động.

Tham khảo : Cấu hình MySQL Event Scheduler




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. T_ENCAPSED_AND_WHITESPACE không mong muốn, gặp lỗi T_STRING hoặc T_VARIABLE hoặc T_NUM_STRING

  2. Xây dựng công cụ tìm kiếm MySQL ngữ nghĩa nhanh chóng cho các bài báo riêng tư từ đầu

  3. Tham gia nhiều bảng, giữ NULL

  4. Làm cách nào để lấy id của hàng được chèn cuối cùng bằng câu lệnh chuẩn bị?

  5. mysql sang csv mà không sử dụng INTO OUTFILE của mysql