Hiển thị thời gian chờ kết nối mysql

Hôm nay, chúng ta đang tìm hiểu cách thay đổi thời gian chờ kết nối trong MySQL bằng Linux (Ubuntu 20. 04) và hệ điều hành Windows

Đôi khi, bạn liên tục mất kết nối với Máy chủ MySQL vì thuộc tính

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
6 được đặt thành vài giây theo mặc định

Ở đây, chúng ta sẽ xem cách thay đổi giá trị mặc định của

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
6 trong MySQL bằng Linux (Ubuntu 20. 04) và hệ điều hành Windows

Chúng tôi có thể cập nhật tệp cấu hình hoặc sử dụng các truy vấn SQL để thực hiện các thay đổi trong cả hai hệ điều hành. Hãy xem từng người trong số họ

Đầu tiên, chúng ta cần mở Windows Command Line và điều hướng đến đường dẫn cài đặt MySQL Server. Theo mặc định, Máy chủ MySQL được cài đặt tại

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
8

Điều hướng đến thư mục

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
9 bằng cách sử dụng
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
0 trên Dòng lệnh. Ngoài ra, hãy nhập
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
1 để đăng nhập với tư cách người dùng
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
2

Bây giờ, chúng ta có thể thấy giá trị mặc định của thuộc tính

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
6 bằng cách sử dụng truy vấn sau trước khi thực hiện các cập nhật cần thiết

________số 8

đầu ra

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)

Như chúng ta có thể thấy, kết nối đến MySQL Server sẽ bị mất sau 10 giây. Vì vậy, chúng ta có thể thay đổi nó thành 28800 giây (8 giờ) bằng cách sử dụng các lệnh sau trên Windows Command-Line

Hãy nhớ rằng, cập nhật

mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
4 và
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
5 là tốt vì nó sẽ hữu ích khi chạy các ứng dụng tiêu tốn nhiều thời gian để thực hiện đầy đủ

mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;

Sử dụng lệnh sau để xác nhận tất cả các bản cập nhật

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
3

đầu ra

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
4

Ở đây,

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
6 đại diện cho số giây mà máy chủ
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
7 đợi gói kết nối trước khi trả về
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
8.
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
4 cũng hiển thị số giây mà Máy chủ MySQL chờ một hoạt động trên kết nối tương tác trước khi đóng

Giống như

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
6 và
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
4,
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
5 cũng hiển thị số giây mà Máy chủ MySQL đợi một hoạt động trên kết nối trước khi đóng nó

Nếu bạn đang viết một ứng dụng nào đó, thì bạn có thể làm theo cách sau để thay đổi nó qua ngôn ngữ lập trình, chẳng hạn như Java hoặc Python

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
2

Một cách khác là cập nhật tệp cấu hình bằng cách mở tệp

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
33 tại đường dẫn
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
34 (nếu bạn đã cài đặt máy chủ MySQL ở vị trí mặc định). Sau đó, tìm phần
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
35 và viết

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
6

Khởi động lại máy chủ MySQL và tận hưởng các bản cập nhật

Mở trình bao Ubuntu và đăng nhập với tư cách siêu người dùng bằng cách sử dụng

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
36. Sau đó, đăng nhập vào máy chủ MySQL bằng truy vấn sau

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
8

Khi chúng tôi vào, hãy kiểm tra giá trị mặc định của

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
6, là 10 giây, như chúng tôi có thể thấy bên dưới

________số 8

đầu ra

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)

Bây giờ, hãy thực hiện các truy vấn sau để cập nhật giá trị của

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
6,
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
39 và
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
5. Như đã đề cập trước đó, chúng tôi cập nhật ba ứng dụng này để chạy các ứng dụng mất nhiều thời gian để thực thi đầy đủ

mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;

đầu ra

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
1

Cách khác là cập nhật tệp cấu hình. Giả sử chúng ta kỳ vọng 28800 giây là giá trị của

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
6,
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
4 và
mysql> SET GLOBAL connect_timeout=28800;
mysql> SET GLOBAL interactive_timeout=28800;
mysql> SET GLOBAL wait_timeout=28800;
5

Để làm được điều đó, chúng ta cần chỉnh sửa tệp cấu hình nằm ở đường dẫn này,

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
44. Chúng tôi sử dụng trình soạn thảo
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)
45;

Thời gian chờ kết nối MySQL là gì?

Kết nối MySql. Tài sản hết thời gian kết nối. Nhận thời gian chờ trong khi cố gắng thiết lập kết nối trước khi kết thúc nỗ lực và tạo ra lỗi . không gian tên. MySql. Dữ liệu. MySqlClient. Cuộc họp. MySql. Dữ liệu (trong MySql. Dữ liệu. dll) Phiên bản. 6. 10. 9.

Tại sao MySQL liên tục mất kết nối?

Lý do phổ biến nhất dẫn đến lỗi máy chủ MySQL đã biến mất là máy chủ đã hết thời gian chờ và đóng kết nối . Theo mặc định, máy chủ sẽ đóng kết nối sau 8 giờ nếu không có gì xảy ra. Bạn có thể thay đổi giới hạn thời gian bằng cách đặt biến wait_timeout khi khởi động mysqld.

Net_read_timeout trong MySQL là gì?

Khi máy chủ đang đọc từ máy khách, net_read_timeout là giá trị thời gian chờ kiểm soát thời điểm hủy bỏ . Tuy nhiên, MySQL không hủy kết nối nếu quá trình đọc (chờ dữ liệu) mất nhiều hơn giá trị được chỉ định trong biến này.

Không thể kết nối với máy chủ MySQL khi hết thời gian chờ?

Xảy ra lỗi kết nối hết thời gian chờ khi tường lửa của cơ sở dữ liệu không cho phép bạn kết nối với cơ sở dữ liệu từ máy hoặc tài nguyên cục bộ của bạn. Nếu bạn gặp lỗi này, hãy kiểm tra xem bạn đã thêm máy hoặc tài nguyên mà bạn đang kết nối từ đó vào danh sách các nguồn đáng tin cậy của cơ sở dữ liệu chưa .