> > > mysqldump 라는 프로그램을 쓰시면 됩지요.
> > >
> > > $mysqldump SOURCEDB SOURCETABLE > TARGETFILE -u UID -p
> > >
> > > 이렇게 하시면 원하시는 결과를 얻으실수 있겠습니다..
> > >
> > > 물론..mysql client 에서도 select * into outfile 'FILENAME'
> > > from foo;
> > >
> > > 하셔도 원하시는 결과를 얻을 수 있구요...
> > >
> > > 첫번째것이 더 간단하지요...?!
> > >
> >
> >
> > db에서 file로 backup받았는데.....
> > 다시 db로 저장하는건 어떻게 하나요...
> > 메뉴얼을 보면..
> > load data infile 'filename' replace .... 라고 쓰여있던데...
> > replace다음에 저장할 table명을 써봤는데..
> > 안되더라구요...
> > 어떻게 하나요??
> >
>
> 백업을 하실때 백업의 형태에 따라 restore의 방법도 결정하셔야 합니다.
>
> 즉 mysqldump DB_name table_name > file_name
>
> 과 같이 덤프를 받았다면
>
> mysqldump DB_name < file_name 을 하시면 됩니다.
>
> 이 파일을 보시면 SQL문으로 테이블 생성부터 insert으로 값들을 저장하게 되어있습니다.
>
> 하지만 이런 SQL문이 아닐 경우에는 즉 위의 select 문으로 저장을 했을시는 SQL문이 아닌
>
> 형태로 저장이 됩니다.
>
> 그럼므로 LOAD 문을 써서 다시 resotre할 수 있습니다.
>
> ( 대용량의 경우 이 방법을 권장합니다. 속도가 더 빠릅니다. )
>
> 그리고 위에 질문하신 [REPLACE | IGNORE] 은 restore시 unique key가 있어 중첩이 될때
>
> 처리 방법에 대한 것입니다.
>
> REPLACE는 현재 있더라도 이것으로 대체한다는 뜻이며
>
> IGNORE는 무시하고 넘어간다는 뜻입니다.
>
> 그럼 간단한 LOAD문의 예를 들어 보겠습니다.
>
> data.txt
> -------------
> a 111111
> b 222222
> 3 333333
> -------------
>
> LOAD DATA INFILE 'data.txt' INTO TABLE table_name
>
> FIELDS TERMINATED BY ' '
>
> ( LINES TERMINATED BY '
' -> 이것은 디폴트입니다.)
>
> 나머지 자세한 것은 메뉴얼을 참고하시기 바랍니다.
>
>
감사합니다...
|