database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Tutorials 16665 게시물 읽기
 News | Q&A | Columns | Tutorials | Devel | Files | Links
No. 16665
mysql 에러 복구.
작성자
정재익(advance)
작성일
2002-07-30 00:14
조회수
10,481

원본출처 : http://mong2.speedinline.com/ing_board/freeview.html?n_mark=ing_board&uid=42&list_no=41&page=0&block=0&key=&keyfield=

 

갑작스런 이유로 S서버의 db에 특정 table이 말썽을 일으켰다...--

 

mysql> select * from TEST;

ERROR 1016: Can\t open file: \TEST.MYD\. (errno: 145)

 

이런식으로... --

 

원인이야 다양하겠지만... S서버의 경우 mysql 데이타가 저장되는 곳의 디렉토리가 100%로

 

꽉차 있어서... 위와같은 문제가 발생하였다...-,.^

 

일단 디렉토리를 널널하게 정리한후... 뻑(?)난 테이블 복구를 시도했다.

 

 

# myisamchk -r TEST.MYI

 

이런식으로 테이블을 복구하고 나니... 문제없이 작동되었다...^^

 

더 자세한 정보는 men page를 참조하도록 하자...: )

 

# myisamchk

 

Description, check and repair of ISAM tables.

Used without options all tables on the command will be checked for errors

 

Usage: myisamchk [OPTIONS] tables[.MYI]

:

:

 

참고로 여기저기 찾다보니... 유용한 정보가 있어... 긁어왔스빈다.

출처: database.sarang.net

 

-------------------------------------------------------------------------------------

 

linux.sarang.net의 김주현씨가 쓴 글을 퍼왔습니다.

 

 

 

갑작스런 정전이나 하드웨어의 오류 기타 어떠한 이유로 table file이

손상될 수 있습니다.

 

이 경우 Myisamchk 나 check table명령어를 사용하여 수동으로 복구하여야

하는데 자동으로 복구하는 방법도 있어서 소개해드립니다.

 

이 기능은 MySQL기동시 table 이 crash marking이 되어 있는지 혹은 적절히 close 되지 않

았는지 체크하는 기능으로 mysqld 의 파라메터로 지정해주도록 되어 있습니다.

 

--myisam-recover = {default | backup | force | quick }

 

DEFAULT : 이 옵션은 아무 옵션도 주지 않은 것과 동일한 의미로 자동 복구를 사용하지 않

는다는 의미입니다.

 

BACKUP : 추천하는 옵션으로 복구중 변경되는 테이블은 BAK확장자를 붙여서

백업을 해놓고 복구에 들어간다는 옵션입니다.

이를테면 table_name.MYD 의 table_name-datetime.BAK 백업 파일이

만들어지고 자동 복구에 들어갑니다.

 

FORCE : 복구시 테이타 손실이 일어나거나 말거나 강제로 복구하는 옵션입니다.

 

QUICK: 만약 테이블에 어떠한 삭제된 블락도 없다면 table에 row를 점검하지

않습니다. 속도는 빠르지만 완벽한 복구는 보장할 수 없습니다.

 

 

/etc/rc.d/init.d/mysql 같은 startup script에 아래 부분을 수정해주시고 MySQL을 재시작

하시면 됩니다.

 

.

.

.

case \$mode\ in

\start\)

# Start daemon

 

if test -x $bindir/safe_mysqld

then

$bindir/safe_mysqld --myisam-recover=backup (수정할 부분)

~~~~~~~~~~~~~~~~~~~~~~~

.

.

.

 

service mysql stop (MySQL중단)

service mysql start (MySQL재시작)

[Top]
No.
제목
작성자
작성일
조회
16728MySQLmodule-1.4 설치/사용법
정재익
2002-08-05
12956
16726MySQLmodule-1.4 문서
정재익
2002-08-05
10193
16666Mysql 한방에 백업하기 [8]
정재익
2002-07-30
14771
16665mysql 에러 복구.
정재익
2002-07-30
10481
16664MySQL Index 속도 높이기..꽁수
정재익
2002-07-30
12033
16663MySQL의 왜키 설정(Foreign Keys ) [2]
정재익
2002-07-30
9891
16662MySQL 에서 한글 정렬방법
정재익
2002-07-30
8712
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다