2017-03-22 7 views
0

FTP 위치에서 큰 (예 : 20mb) 파이프 구분 파일을 읽고 DB에 저장해야합니다. 그렇게하는 가장 좋은 방법은 무엇입니까?서버의 FTP 위치에서 큰 파일을 읽는 방법

일부 접근 방법 : 1. 파일을 로컬로 복사 한 다음 읽어 와서 DB에 저장하십시오. 2. 스트림에서 직접 읽고 DB에 저장.

효율적인 방법을 제안하십시오.

답변

1

, 옵션 2 뭐하는의 경우

일부 예외가있을 경우 - DB에 파일을 쓰는 동안 스트림 또는 예외를 사용하여 파일을 읽는 동안, 어떻게 것 당신은 정확히 어디에 실패했는지 알기 위해

옵션 1을 사용하여 파일 임시 디렉토리를 저장 한 다음 파일을 DB에 쓴 다음 임시 디렉토리에서 삭제하거나 아카이브 할 수 있습니다.

파일 시스템에 파일을 보관하는 것이 좋습니다. 나중에 참조 할 때 유용합니다.

많은 예는 모두 주변에있다 - 당신이 따를 수 FTP에서 파일 다운로드에 대한

- http://www.codejava.net/java-se/networking/ftp/java-ftp-file-download-tutorial-and-example

0

sql 또는 csv 파일은 ssh를 통해 시험해 볼 수 있습니다. 내가 옵션-1이 더 좋을 것이라고 생각

mysql -u root -p 

set global net_buffer_length=1000000; --Set network buffer length to a large byte number 

set global max_allowed_packet=1000000000; --Set maximum allowed packet size to a large byte number 

SET foreign_key_checks = 0; --Disable foreign key checking to avoid delays,errors and unwanted behaviour 

source file.sql --Import your sql dump file 

SET foreign_key_checks = 1; --Remember to enable foreign key checks when procedure is complete!