메뉴 닫기

ibdata 파일 삭제방법

innodb를 이용하다보면 데이터 저장공간에 ibdata파일이 많이 쌓이게 되면서 디렉토리 공간을 잡아먹게된다.

해당 파일은 db데이터와 연관이 있기 때문에 바로 삭제를 하면안된다.

삭제를 하는방법은 아래와 같다.

  1. 일단 mysql 덤프를 하여 데이터를 저장한다.
    mysqldump -u root -p –all-databases > all_databases.sql 
  2. 백업이 끝났다면 mysql 구동을 중지시킨다.
    /etc/init.d/mysqld stop
  3. 구동을 중지하였다면 문제되는 ibdata 파일을 삭제한다.
    rm -rf ibdata (ibdata 파일명칭)
  4. 삭제를 하였다면 /etc/my.cnf 파일을 통해 ibdata 설정을 해준다.
    innodb_data_home_dir=/usr/local/mysql/data
    ibdata 파일을 저장할 경로를 지정한다.
    innodb_data_file_path=ibdata1:2048M;ibdata2:2048M;ibdata3:2048M;ibdata4:2048M:autoextend
    ibdata 파일이 어떤식으로 분할하여 용량까지 할당해준다.
  5.  위와같이 설정을 하였다면 이제 mysql 구동을 해준다.
    /etc/init.d/mysqld start
  6. 구동을 하였다면 처음 백업했던 자료로 다시 데이터를 복구해준다.
    mysql -u root -p < all_databases.sql

위와같이 작업을 하여 ibdata 파일을 지워준다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다