December 4, 2008, 12:39 am
php등에서 리눅스 서버로 업로드 하고 나면 보통 /tmp 디렉토리에 올라가는데 해당 파일에서 MySQL로 LOAD DATA INFILE을 시도 할 경우 에러가 나게 될 가능성이 있으니 혹시라도.. 업로드 파일을 바로 사용할 경우에는 DB 사용자의 권한을 체크!
use mysql;
select * from user;
하면 유저들 정보가 주욱 다 나오는데 해당 권한들 중에서 import시 사용되는 유저의 file_priv 의 권한을 Y로 바꾸고 flush를 합시다 🙂
Tags:
database,
db,
File Upload,
file_priv,
import,
Linux,
load data infile,
MySQL,
php,
Web,
권한,
데이터베이스,
리눅스,
웹,
임포트,
파일 업로드 Category:
-ㅂ- |
2 Comments
September 20, 2008, 6:00 am
작업 하다보면 txt파일 또는 csv등의 파일들을 DB에 넣어야 할 경우가 많은데 phpmyadmin 을 쓰지 않는 이상 쿼리로 모든 것을 해야하니 이번에 작업 하나 한 김에 또 잊기전에-_- 기록 남겨놓기 🙂
쿼리를 이렇게 날립시다
mysql > LOAD DATA INFILE ‘/경로/파일이름.txt’ INTO TABLE ‘테이블’ FIELDS TERMINATED BY ‘\t’ LINES TERMINATED BY ‘\n’ (필드1, 필드2);
이렇게 하면 /경로/파일이름.txt가 ‘테이블’ 이라는 이름의 테이블로 입력 되는데 필드1, 필드2 라는 이름의 필드들에 해당 값이 import 됨
에러가 나와도 진행을 하기 위해서 필드 뒤에 IGNORE 1 LINES 명령어를 넣어주면 됨
작업 좀 편하게 합시다~ 🙂
mysql 로그인 도 귀찮은 경우에는
$> mysql -uroot -p -e “LOAD DATA INFILE ‘/경로/파일이름.txt’ INTO TABLE ‘테이블’ FIELDS TERMINATED BY ‘\t’ LINES TERMINATED BY ‘\n’ (필드1, 필드2);”
이렇게 처리를 해주면 로그인을 한 화면에서 다시 붙여넣기를 하지 않아도 자알 들어감..
Tags:
csv,
database,
flat file,
import,
Linux,
load data,
MySQL,
phpmyadmin,
txt,
Windows,
불러오기,
텍스트파일 Category:
-ㅂ- |
Comment