Python을 통해 연결할 때 기본 Mysql 연결 시간 제한을 어떻게 변경할 수 있습니까?
파이썬을 사용하여 mysql 데이터베이스에 연결했습니다. con = _mysql.connect('localhost', 'dell-pc', '', 'test')
제가 작성한 프로그램은 전체 실행에 많은 시간이 걸립니다. 즉 약 10 시간이 걸립니다. 사실 저는 말뭉치에서 별개의 단어를 읽으려고합니다. 읽기가 완료된 후 시간 초과 오류가 발생했습니다.
다음과 같은 Mysql 기본 시간 초과를 확인했습니다.
+----------------------------+----------+
| Variable_name | Value |
+----------------------------+----------+
| connect_timeout | 10 |
| delayed_insert_timeout | 300 |
| innodb_lock_wait_timeout | 50 |
| innodb_rollback_on_timeout | OFF |
| interactive_timeout | 28800 |
| lock_wait_timeout | 31536000 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| slave_net_timeout | 3600 |
| wait_timeout | 28800 |
+----------------------------+----------+
기본 시간 제한을 어떻게 변경합니까?
하다:
con.query('SET GLOBAL connect_timeout=28800')
con.query('SET GLOBAL wait_timeout=28800')
con.query('SET GLOBAL interactive_timeout=28800')
매개 변수 의미 (Navigator의 MySQL Workbench에서 가져옴 : 인스턴스> 옵션 파일> "네트워킹"탭> "시간 초과 설정"섹션)
- connect_timeout : mysqld 서버가 'Bad handshake'로 응답하기 전에 연결 패킷을 기다리는 시간 (초)
- interactive_timeout 서버가 연결을 닫기 전에 대화식 연결 활동을 기다리는 시간 (초)
- wait_timeout 서버가 연결을 닫기 전에 연결 활동을 기다리는 시간 (초)
BTW : 28800 초는 8 시간이므로 10 시간 실행 시간 동안이 값은 실제로 더 높아야합니다.
당신은 (옵션 MySQL의 설정 파일에 디폴트 값을 변경 connect_timeout 에서 의 mysqld 섹션) -
[mysqld]
connect_timeout=100
이 파일에 액세스 할 수없는 경우 다음 문을 사용하여이 값을 설정할 수 있습니다.
SET GLOBAL connect_timeout=100;
나는 이것이 오래된 질문이라는 것을 알고 있지만 기록을 위해 적절한 연결 옵션을 호출에 대한 인수로 전달하여 수행 할 수도 있습니다 _mysql.connect
. 예를 들면
con = _mysql.connect(host='localhost', user='dell-pc', passwd='', db='test',
connect_timeout=1000)
키워드 매개 변수 (host, passwd 등)의 사용에 유의하십시오. 코드의 가독성을 향상시킵니다.
에 전달할 수있는 다양한 인수에 대한 자세한 내용 _mysql.connect
은 MySQLdb API 문서를 참조하세요.
MAX_EXECUTION_TIME은 장기 실행 쿼리에도 중요한 매개 변수이며 MySQL 5.7 이상에서 작동합니다.
현재 값 확인
SELECT @@GLOBAL.MAX_EXECUTION_TIME, @@SESSION.MAX_EXECUTION_TIME;
그런 다음 필요에 따라 설정하십시오.
SET SESSION MAX_EXECUTION_TIME=2000;
SET GLOBAL MAX_EXECUTION_TIME=2000;
'programing' 카테고리의 다른 글
동시성 : C ++ 11 메모리 모델의 원자 및 휘발성 (0) | 2021.01.18 |
---|---|
예쁜 프린트 2D Python 목록 (0) | 2021.01.18 |
부트 스트랩 : 열 사이에 여백 / 패딩 공간 추가 (0) | 2021.01.18 |
PHP. (0) | 2021.01.18 |
Amazon RDS : 기존 인스턴스로 스냅 샷 복원 (0) | 2021.01.18 |