2012-09-24 3 views
4

MySQL을 설치하고 일부 데이터베이스를 가져온 후 내 debian 기반 부팅이 너무 느립니다. 여기Linux Mint 트리거가 시스템 부팅시 MySQL에서 천천히 쿼리합니다.

mysql> show full processlist; 
+----+------------------+-----------+------+---------+------+----------------+----------------------------------------------------------------------+ 
| Id | User    | Host  | db | Command | Time | State   | Info                 | 
+----+------------------+-----------+------+---------+------+----------------+----------------------------------------------------------------------+ 
| 9 | debian-sys-maint | localhost | NULL | Query | 12 | Opening tables | select count(*) into @discard from `information_schema`.`PARTITIONS` | 
| 10 | root    | localhost | NULL | Query | 0 | NULL   | show full processlist            | 
+----+------------------+-----------+------+---------+------+----------------+----------------------------------------------------------------------+ 
2 rows in set (0.00 sec) 

문제를 일으키는 것을 문 :

select count(*) into @discard from `information_schema`.`PARTITIONS` 

I 데이터 8GB의 이상에 달하는 + -10 데이터베이스가 어떤 문장을 찾고, 나는 부팅 중에이 하나를 발견했다.

시스템 부팅시이 쿼리를 비활성화하는 구성이 있습니까? 그렇다면 부팅 할 때 왜 실행해야합니까?

정보 나 사용자 지정 CONFIGS없이 표준 MySQL 설치가 있습니다.

감사합니다.

+0

천천히 쿼리를 실행하면 실행 시간이 얼마 남았습니까? 카운트 결과는 어떻습니까? (예 : 얼마나 많은 테이블이 있습니까?) – Erik

+0

안녕하세요 Erik, 쿼리 결과 : '4955'(36.40 초) –

+0

수동으로 계산하면 모든 데이터베이스의 테이블 총계는 5000 ...이 쿼리는 테이블 수를 계산합니까? 이것을 줄이거 나 막기 위해 무엇을 할 수 있습니까? –

답변

7

Linux Mint를 기반으로하는 Debian은 mysql 서버가 시작되거나 재시작 될 때 실행되는 스크립트를 가지고있어 손상된 테이블을 확인하고 그에 대한 경고를하는 것처럼 보입니다. 내 데비안 서버에서

은, 범인이 차례로 /usr/share/mysql/debian-start.inc.sh를 호출 /etc/mysql/debian-start bash는 스크립트, 그래서 얼핏에서 두 스크립트를 확인하고 모든 테이블을 반복하는 기능을 주석 보인다는 다음과 같다 :

check_for_crashed_tables; 

이는 앞서 언급 한 debian-start 스크립트에서 호출되었습니다.

+1

Nelson, 완벽하게! 나는이 주장을 논평했고 여기에서 잘 작동한다! ;) 감사. –

+0

당신이 그것을 고칠 수있어서 기쁩니다 :-) – Nelson

+0

내 역을 시작하기 위해 +/- 3 분에서 1 분 미만; D #nice #nice –

관련 문제