blog
[MariaDB 1067 오류]ERROR 2002 (HY000): Can't connect to MySQL server on 'localhost' (10061) 본문
Web/ERROR
[MariaDB 1067 오류]ERROR 2002 (HY000): Can't connect to MySQL server on 'localhost' (10061)
hjkongkong 2021. 11. 28. 20:53ERROR 2002 (HY000): Can't connect to MySQL server on 'localhost' (10061)
오랜만에 구동한 웹 프로젝트에서 mariaDB 연동이 안됐다.
제어판>시스템 및 보안 > 관리도구 > 서비스 에서 MySQL을 시작해도
1067 오류가 떴다.
cmd 창에서도 동일오류...
C:\Program Files\MariaDB 10.3>type data\에러파일.err
data 폴더에 들어가서 .err 파일을 살펴봤음
ibdata1에 관한 오류같은데....구글링해봄
ibdata1, ib_logfile0, ib_logfile1을 제거하고 다시 서비스를 시작하자 제대로 작동됨
서비스는 작동하지만...테이블을 select했을 때 Error code :1932 Table 'DB테이블명' doesn't exist in engine 오류가 추가됨..
ERROR 1932 (42S02): Table 'db.table' doesn't exist in engine
기존 data/테이블명의 frm과 ibd파일을 모두 백업해둔다
클라이언트에서 먼저 drop 명령어로 테이블을 삭제한 뒤, 해당 데이터베이스에 있는 테이블.ibd파일도 삭제해줘서 완벽하게 삭제한 뒤 테이블을 다시 생성하였다.
기존의 테이블과 동일한 스키마의 테이블을 생성한 뒤
ALTER TABLE 테이블명 DISCARD TABLESPACE;
을 통해 기존의 데이터파일(.ibd)을 제거한다
백업해둔 테이블명.ibd파일을 data/해당테이블 폴더에 복사해둔 뒤
ALTER TABLE 테이블명 IMPORT TABLESPACE;
을 하면
데이터 복구 완료