MySQL 테이블 생성 날짜 조회하기
MySQL에서 테이블의 생성 날짜(생성 시간)를 확인하려면 information_schema를 활용하면 됩니다. information_schema는 데이터베이스의 메타데이터(테이블 정보, 컬럼 정보 등)를 저장하는 시스템 스키마로, 이곳의 TABLES 테이블을 조회하면 원하는 테이블이 언제 생성되었는지 알 수 있습니다.
기본 문법
테이블 생성 시간을 조회하는 기본 쿼리 문법은 다음과 같습니다.
SELECT create_time FROM INFORMATION_SCHEMA.TABLES
WHERE table_schema = 'yourDatabaseName'
AND table_name = 'yourTableName';
실제 적용 예시
위 문법을 실제 데이터베이스와 테이블에 적용해 보겠습니다. 여기서는 데이터베이스명으로 business, 테이블명으로 student를 사용합니다.
mysql> SELECT create_time FROM INFORMATION_SCHEMA.TABLES
-> WHERE table_schema = 'business'
-> AND table_name = 'student';
실행 결과는 다음과 같으며, 테이블의 생성 시간을 확인할 수 있습니다.
+---------------------+
| CREATE_TIME |
+---------------------+
| 2018-10-01 12:26:57 |
+---------------------+
1 row in set (0.12 sec)
새 테이블 생성 후 생성 시간 직접 확인하기
이번에는 처음부터 새 테이블을 만들고, 그 생성 시간이 정확히 기록되는지 직접 확인해 보겠습니다.
먼저 DateAsStringDemo라는 이름의 테이블을 생성합니다.
mysql> create table DateAsStringDemo
-> (
-> YourDateTime datetime
-> );
Query OK, 0 rows affected (0.57 sec)
테이블 생성 직후 현재 날짜와 시간을 확인해 보겠습니다.
mysql> select now();
실행 결과는 다음과 같습니다.
+---------------------+
| now() |
+---------------------+
| 2018-11-26 18:12:29 |
+---------------------+
1 row in set (0.00 sec)
이제 위에서 생성한 테이블의 생성 시간을 조회하면, 2018년 11월 26일에 테이블이 만들어졌다는 것을 확인할 수 있습니다.
조회 쿼리는 다음과 같습니다.
mysql> SELECT create_time FROM INFORMATION_SCHEMA.TABLES
-> WHERE table_schema = 'test'
-> AND table_name = 'DateAsStringDemo';
실행 결과는 다음과 같습니다.
+---------------------+
| CREATE_TIME |
+---------------------+
| 2018-11-26 18:01:44 |
+---------------------+
1 row in set (0.00 sec)
정리
MySQL에서 특정 테이블의 생성 날짜를 알고 싶다면, INFORMATION_SCHEMA.TABLES 뷰에서 create_time 컬럼을 조회하면 됩니다. 이때 table_schema 조건에는 데이터베이스명을, table_name 조건에는 테이블명을 지정하면 해당 테이블의 정확한 생성 일시를 손쉽게 확인할 수 있습니다.