Bagaimanakah saya boleh melaraskan tamat masa untuk pertanyaan MySQL yang dijalankan oleh PowerShell untuk membolehkan lebih daripada 30 saat dijalankan?
P粉803444331
P粉803444331 2023-09-10 13:18:46
0
1
475

Saya mempunyai pertanyaan MySQL SELECT yang mengambil masa beberapa minit apabila dijalankan dalam SQLyog (GUI yang saya gunakan). Apabila saya cuba menjalankan pertanyaan yang sama melalui PowerShell (menggunakan SimplySQL) ia sentiasa gagal pada 30 saat. Saya tidak pasti pembolehubah tamat masa yang mengehadkan saya, atau jika terdapat tetapan lain dalam persekitaran PS saya yang mempunyai tamat masa 30 saat. Saya telah menetapkan nilai tamat masa ini dalam fail my.cnf pelayan MySQL Linux dan memulakan semula MySQL. Tetapi tiada kejayaan:

net_read_timeout=600 mysqlx_read_timeout=600 mysqlx_connect_timeout=600

Saya telah mencari MySQL dan nilai tamat masa di Google, tetapi tidak menemui jawapan. Jadi dua soalan saya ialah: apakah pembolehubah lain yang dipanggil tamat masa 30 saat yang boleh saya tolak, atau adakah terdapat cara lain untuk mengetahui perbezaan antara cara pertanyaan dijalankan dalam alat interaktif saya berbanding cara ia berjalan dalam perbezaan sesi PS? (Nota: Saya tidak dapat mempercepatkan pertanyaan untuk sentiasa selesai dalam masa 30 saat)

Apabila saya menjalankan PS saya, saya hanya perlukan:

Open-MySQLConnection -ConnectionString ... Invoke-SqlQuery -Query ... Invoke-SqlQuery -Query "SHOW VARIABLES LIKE '%timeout%'"

(Barisan terakhir menunjukkan bahawa saya telah berjaya mengatasi mana-mana pembolehubah MySQL bernama "tamat masa".)

P粉803444331
P粉803444331

membalas semua (1)
P粉652495194

PowerShell menggunakan kelas sambungan .Net di belakang tabir untuk mencapai ini, dan objek ini memerlukanrentetan sambungan. Rentetan sambungan biasanya dibenarkan mengandungi tamat masa untuk sambungan. Tetapan tamat masa yang tepat bergantung pada pemacu khusus yang anda gunakan, dan malangnya ia tidak didokumenkan dengan baik di Connectionstrings.com, tetapi berikut ialah contoh:

Connect Timeout=600

Jika tidak, anda mungkin boleh menetapkan sifat tamat masa pada objek sambungan itu sendiri... tetapi kami perlu melihat kod sambungan PowerShell untuk mengetahui dengan tepat rupanya.

Ada kemungkinan juga kod PowerShell menyerahkannya kepada sumber data ODBC, di mana rentetan sambungan adalah sepertiDSN=MyDataSource. Dalam kes ini, anda perlu melihat konfigurasi sumber data.

    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan
    Tentang kita Penafian Sitemap
    Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!