mysql의 백업과 복구 (backup & restore) | |||
| |||
접속까지의 명령어는 기본 명령어 설명에 있으니 생략을;; 로그파일이 많이 쌓여서 디스크 용량이 부족한 경우 일단 로그파일을 지웁니다. mysql>RESET MASTER 로그 파일은 XXX-bin.000001 같은 형식으로 쌓입니다. 위치는 디폴트로 설치했다면 /usr/local/mysql/var/에 있을 겁니다. RESET MASTER를 입력하면 로그 파일들이 지워집니다. 백업을 하는 방법은 쉘에서 하는 법과 mysql내에서 하는법 두가지가 있습니다. ★mysql내에서 백업하는 법 mysql>backup table <table1>[, table2, table3...] to ''/usr/local/backup''; 의 형식이구요. 물론 뾰족괄호같은건 입력하는거 아니구요 대괄호안은 여러 테이블 백업시 입력하는 겁니다. to다음은 저장할 디렉토리명입니다. 작은따옴표에 넣어서 입력하면 됩니다. 리스토어는 mysql>restore table <table1>[, table2, table3...] from ''/usr/local/backup''; ★쉘에서 백업하는 방법 mysqldump란 실행프로그램은 /usr/local/mysql/bin 에 있습니다.(물론 기본설치시) 그러므로 거기까지 들어가서 실행합니다. mysqldump를 이용해서 백업을 하면 텍스트형태로 백업이 되기 때문에vi에서 열어서 볼 수 있습니다. DB생성, 테이블생성구조등이 나와있기 때문에 이용해서 다른 작업도 가능합니다. 전체 데이터베이스 백업하기 >./mysqldump -uroot -ppass -e --all-databases > /usr/local/backup/alldata.sql 데이터베이스 단위로 백업하기 >./mysqldump -uroot -ppass -e --databases db1 > /usr/local/backup/db1.sql *옵션에서 e를 붙이는 이유는 extended-insert로 리스토어시 보다 빠르게 하기 위해 쿼리를 변형하는 옵션입니다. 리스토어 하기 >./mysql -uroot -ppass < /usr/local/backup/alldata.sql innodb로 리스토어 하려면 alldata.sql을 vi로 열어서 Type=MyISAM부분을 삭제하면 자동으로 innodb로 저장됩니다. 물론 -u다음에 붙어있는 root는 mysql아이디이기 때문에 알맞는 아이디로 바꾸시구요 -p뒤에 있는 pass란 글자도 마찬가지.. -p라고만 입력하고 엔터를 치면 비밀번호를 물어봅니다. 그 때 비밀번호를 입력해줘두 됩니다. Tags: mysql mysql backup mysql restore mysql 백업 mysql 복구 | |||
| |||
| |||
Login for comment |
SIMILAR POSTS shell script를 이용한 mysql 자동 백업(backup) |
OTHER POSTS IN THE SAME CATEGORY CD-ROM 자동인식 비활성화 |