Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL 테이블의 마지막 업데이트 시간 확인하는 방법

MySQL에서 특정 테이블이 언제 마지막으로 수정되었는지 확인하고 싶다면 information_schema.tables 뷰의 UPDATE_TIME 컬럼을 활용하면 됩니다. WHERE 절과 함께 사용하면 원하는 데이터베이스와 테이블의 최종 변경 시간을 손쉽게 조회할 수 있습니다.

예제 테이블 생성하기

먼저 실습을 위한 테이블을 생성해 보겠습니다.

mysql> create table MyISAMTableDemo
    -> (
    -> id int
    -> );
Query OK, 0 rows affected (0.56 sec)

테이블에 데이터 삽입하기

생성한 테이블에 몇 개의 레코드를 추가합니다.

mysql> insert into MyISAMTableDemo values(1);
Query OK, 1 row affected (0.72 sec)

mysql> insert into MyISAMTableDemo values(2);
Query OK, 1 row affected (0.16 sec)

마지막 업데이트 시간 조회 문법

테이블의 마지막 변경 시간을 확인하는 기본 쿼리 구문은 다음과 같습니다.

SELECT UPDATE_TIME
FROM   information_schema.tables
WHERE  TABLE_SCHEMA = 'yourDatabaseName'
AND TABLE_NAME = 'yourTableName';

실제 쿼리 실행 예시

이제 'business' 데이터베이스의 'MyISAMTableDemo' 테이블에 대해 실제로 쿼리를 실행해 보겠습니다.

mysql> SELECT UPDATE_TIME
    -> FROM   information_schema.tables
    -> WHERE  TABLE_SCHEMA = 'business'
    ->  AND TABLE_NAME = 'MyISAMTableDemo';

실행 결과는 다음과 같습니다.

+---------------------+
| UPDATE_TIME         |
+---------------------+
| 2018-11-01 19:00:02 |
+---------------------+
1 row in set (0.08 sec)

결과에서 확인할 수 있듯이, 해당 테이블은 2018년 11월 1일 19시 00분 02초에 마지막으로 업데이트되었습니다.

참고 사항

UPDATE_TIME 값은 InnoDB가 아닌 MyISAM 스토리지 엔진에서 정확하게 기록됩니다. InnoDB 테이블의 경우 UPDATE_TIME이 NULL로 반환될 수 있으므로, 이 방법을 사용할 때는 테이블의 스토리지 엔진 종류를 먼저 확인하는 것이 좋습니다.