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 13127 게시물 읽기
 News | Q&A | Columns | Tutorials | Devel | Files | Links
No. 13127
[팁] 에러발생시는 perror 프로그램사용하자
작성자
문태준(taejun)
작성일
2001-10-20 11:42
조회수
6,394

DB사용시 에러가 발생하였을 경우에는 mysql에서 남기는 에러로그를 살펴보아야하고 또 나오는 에러메시지 번호를 이용하면 웬만한것은 다 처리가 가능합니다.

 

저도 파티션 용량이 부족하여 /tmp에 쓰기를 하지 못해서 순간 버벅대다가 에러메시지를 참고로 하여 고쳤습니다. 아무리 급해도 일단은 나오는 에러메시지부터 정확히 판단하는것이 중요한데 실제 실무작업을 할때는 이렇게 하지 않고 엄한 것만 뜯어고치는 경우가 많지요. 물론 저도 마찬가지구요.

 

예를 들어 order by 등 정렬등을 할때 하드디스크에 임시로 정렬 테이블을 만들경우 mysql 서버에 설정된 /tmp 디렉토리를 이용하는데 이 디렉토리가 꽉 차있는경우에는 에러메시지가 발생합시다. 예를 들어 에러메시지가 28이나 23이 나왔다고 하면 아래처럼 perror 명령을 이용하여 원인을 찾을 수 있습니다.

 

$ perror 28 23

Error code 28: 장치에 남은 공간이 없음

Error code 23: 시스템에 열린 파일이 너무 많음

 

위에서 파티션이 부족한경우에는 28 코드가 나옵니다. 공간이 없다는 말이지요. 결국 /tmp 디토리를 다른 디렉토리로 심볼릭 링크 시키거나 my.cnf 파일등에서 tmpdir 이란 변수를 아예 바꾸어주어야하지요.

 

에러메시지 확인하는것에 대해 알고 있다면 쉽게 처리가 가능하지만 그게 아닌 경우에는 정말 생쇼합니다.

 

일반적으로 발생하는 문제점들은 매뉴얼에서 \Problems and Common Errors\라는 내용에 들어가있는데 여기 내용은 한번 쫙 보는게 좋은 듯 합니다.

 

항상 중요하면서도 넘어가는것이 기본적인 부분들이죠. 코드빼놓고 컴퓨터 켜지지 않는다고 하는것.

[Top]
No.
제목
작성자
작성일
조회
13687MySQL FULLTEXT의 multibyte 지원에 대해... [2]
허정수
2001-11-19
9886
13437Optimizing MySQL from DevShed [1]
정재익
2001-11-04
9042
13183mysql 3.23.42 이후 버젼 설치 Tip [2]
zzizzi
2001-10-23
7865
13127[팁] 에러발생시는 perror 프로그램사용하자
문태준
2001-10-20
6394
13100MySQL3.23.42버젼 설치시 주의사항 [3]
정재익
2001-10-19
6879
12749MySQL 에서 Replication 이용하기 [2]
정재익
2001-10-06
11223
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.052초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다