SQL sorgularını psql kullanarak nasıl zamanlayabilirim?


173

PostgreSQL veritabanımla ilgili bazı SQL sorguları karşılaştırmak istiyorum.Kullanarak SQL sorguları zaman olabilir herhangi bir yolu var mıpsql?

+3

Kıyaslama PostgreSQL sorguları hakkında daha fazla bilgi için: http://dba.stackexchange.com/q/42012/9622 15 may. 132013-05-15 22:29:39

236

Sadece girerek zamanlamayı açın:

\timing

+1

Kısaca, psql 'nin" -c "seçeneği bu ayara izin vermez.Bunu şöyle bir şeyle yapabilirsiniz: '' 'psql --o/dev/null < 14 tem. 162016-07-14 17:38:46

+1

Veya 'psql -c '\ zamanlama' -c '1' 'i seçer mi? 24 ağu. 172017-08-24 02:11:57


60

Zamanlama ile açılabilir\timingpsql isteminde (Caleb zaten söylediği gibi).

8.4 veya üstü iseniz,you can add an optional on/off argument to \timing, yapabilmek istiyorsanız yardımcı olabilirset timing on in .psqlrc- sonra ayarlayabilirsiniz\timing onaçıkça bir düz metin olduğu yerde\timingAksi takdirde onu devre dışı bırakmak

  0

http://www.designmagick.com/article/14/PostgreSQL-Query-Timing, "Erişim engellendi" ifadesini veriyor. 22 eyl. 172017-09-22 18:01:01


1

O zaman\timinguzak bir sunucuya bağlanıyorsanız, ayrıca şebeke gecikmesini de döndürür.

Bunu istemiyorsanız ve sorgu çıktısına da ihtiyacınız yoksa, daha iyi kullanın.EXPLAIN ANALYZEsorgu planını çıktıları planlayıcı tahminleri ile birlikte gerçek uygulama süreleri ile gösterir.

Örneğin,EXPLAIN ANALYZE SELECT foo from bar ;

  0

... tek sorun, normal sorgu çıktısını almamanızdır. 17 kas. 172017-11-17 04:56:18

  0

“Açıklayıcı analiz” kullanmak, “zamanlama” kullanırken gördüğümün yaklaşık iki katı olan zamanları verir; bu, ağ gecikmesiyle ilgili yorumlara dayanarak beklediğimlerin tam tersidir.Sorgu zamanına ekleyen normal 'analiz' uygulamasında ek yük olduğundan şüpheleniyorum.Dokümanlara dayanarak, 'EXPLAIN (ANALYZE, TIMING OFF) çubuğundan FROM SEÇ' in size daha yararlı zamanlama bilgisi vereceğini düşünüyorum.Ayrıntılar için https://www.postgresql.org/docs/9.6/static/sql-explain.html adresini ziyaret edin. 05 ara. 172017-12-05 14:53:33