Linux DB

mysql 데이터베이스내의 특정 테이블을 백업 하기 위해서는 아래와 같이 into outfile 문을 사용하면 된다.

mysql> select ~ from 테이블명 into outfile '저장할파일명';

특정 테이블의 내용이 텍스트 형식의 파일로 저장되며, 백업된 파일은 데이터베이스 디렉토리(/usr/local/mysql/var/db명/)에 저장된다.

mysql> select ~ from 테이블명 into outfile '/경로/파일명';  과 같은식으로 백업파일이 저장될 경로를 지정 할 수 있지만, 백업 파일이 mysql의 권한으로 생성되기 때문에 백업 파일을 저장하려는 경로는 mysql user 권한으로 쓰기가 가능해야 한다.



백업된 내용을 테이블로 복구 할때는 아래와 같은 방법을 사용하면 된다.

mysql> load data infile '/경로/파일명' into table '테이블명';



그리고, 한가지 더 tip.

mysql> tee 파일명 ;

위와 같이 입력을 하면, mysql 프롬프트상에서 입력한 모든 쿼리문과 결과가 파일로 저장되게 된다. 생성되는 파일은 root 권한으로 생성되기 때문에 원하는 경로를 마음대로 입력 할 수 있다.