2017년 11월 6일 월요일

PostgreSQL query 실행 시간 표시

PostgreSQL 에서 query(or command) 실행 시간을 알고 싶을 때가 있다.
timing 를 사용하면 수행시간을 출력해 준다.

postgres=# \timing
Timing is on.

이제부터 모든 query 에 대해 수행시간이 출력된다.

postgres=# select * from pg_class;
                 relname                 | relnamespace | reltype | reloftype | relowner | relam | relfilenode | reltablespace | relpages | reltuples | relallvisible | reltoastrelid |
relhasindex | relisshared | relpersistence | relkind | relnatts | relchecks | relhasoids | relhaspkey | relhasrules | relhastriggers | relhassubclass | relrowsecurity | relforcerowsecu
rity | relispopulated | relreplident | relfrozenxid | relminmxid |                relacl                 |       reloptions
-----------------------------------------+--------------+---------+-----------+----------+-------+-------------+---------------+----------+-----------+---------------+---------------+-
------------+-------------+----------------+---------+----------+-----------+------------+------------+-------------+----------------+----------------+----------------+----------------
-----+----------------+--------------+--------------+------------+---------------------------------------+-------------------------
......
......
......

(316 rows)

Time: 0.076 s

단위는 ms (millisecond) 로 표시된다.

"어? second 인데??"

아~~ 원래 millisecond 인데, millisecond 보다는 second 가 보기 편할거 같아서 소스를 수정해서 사용하고 있다.

만약 변경하고 싶다면, 아래처럼 소스를 수정하면 된다.


소스를 수정했으니 당연히 make, make install 도 해줘야 된다.

시간 표기를 안 하게 해주려면 timing 을 한번 더 실행해주면 된다.

postgres=# \timing
Timing is off.



출처
https://dba.stackexchange.com/questions/3148/how-can-i-time-sql-queries-using-psql

댓글 없음:

댓글 쓰기

화곡 어쩌라고, 굴사냥

석화찜(굴찜)을 먹으러 여의도로 갔다 그런데 재료가 모두 소진되었다고 마감이라고 한다 응? 다들 굴에 미쳤나? 굴을 찾아 헤매다 보니, 화곡까지 가게 되었다. 화곡은 처음 가본다. 첫인상은 "술집 겁네 많네" 피똥쌀때까지 마실 수 있...