Cambio de estado automatico

Saludos buenos dias, necesito la colaboracion de los foristas, tengo una tabla tbl_clientes entre otros campos:
vence_contrato tipo fecha
vigencia itipo nt
IdEstado tipo int
en vigencia pongo la cantidad de años que dura el contrato
en vence_contrato la fecha de vencimiento, o sea, si un contrato tiene 2 años de vigencia y se crea en 20/06/2019, entonces automaticamente al crear el contrato o actualzarlo le pone la fecha de vencimiento el 20/06/2021.
en IdEstado si es 1 activo y si es 2 Inactivo, este campo esta relacionado con otra tabla tbl_estado donde tengo la descripcion del estado.
Lo que quiero es que cuando el contrato este vencido automaticamente me cambie el estado a 2, o sea, inactivo y viceversa si no esta vencido lo tenga en estado 1 (activo), pero esto sin tener necesidad de hacer una operacion, o sea, que cuando en la tabla el contrato este vencido automaticamente me cambie el estado a 2.
Espero por sus colaboraciones como siempre y gracias por adelantado.

debes crear una manera de gatillar el evento en la fecha según, cada contrato

investiga sobre cron en linux
también deberás aprender sobre yii console

con cron programas una tarea para ser ejecutada en la fecha, linux se encarga de ejecutarla automáticamante
la tarea es una linea de comando que llama una action de tu console app

Saludos, utiliza trigger, se ejecutara, una vez al dia

Ok gracias por las respuestas lo revizare y les cuento