
작업하다가 삽질로 9시간을 보내면서 이건 기억해야겠다는 생각으로 적는다.
lightsail로 배포해놓은 내 상점 데이터들을 토대로 이제 수집한 상점 정보들을 넣으려는데...
나의 mysql은 일단 docker에 있다
나는 컨테이너에 대한 이해도가 굉장히 부족하기 때문에 많은 고난에 부딪혔는데... 그중 하나가 mysql load가 존나게 안 된다는거다
docker exec -it mysqldb mysql -u root -p로 시도
1-1. 기존 로컬 파일에 있는 데이터가 담긴 csv 파일을 docker로 카피시킨 뒤에 이동
docker cp /path/local/your/com/data.csv
1-2. 로컬 루트를 기반으로 mysql 접속해서 데이터 load
docker exec -it <your container sql ID> bash
mysql -u root -p
password : <your password> blind
1-3. 데이터베이스 선택
show databases;
use databases ;
show tables;
# 테이블 확인후에
LOAD DATA INFILE '/your/path/data.csv' INTO TABLE hirestaurant_restaurant
FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 1 ROWS
넣어준다
근데 ... ㅅㅂ ...

확인해보니까 load data는 보안정책상 문제가 많아서 내가 자체적으로 설정을 해줘야한단다....
난 귀찮은거 질색이니까 원큐에 해결가능한 방법을 찾다가...
# 1차적으로 contain sql이 담긴 bash 디렉토리에 data.csv를 복사해줌
docker cp path/your/docker/root <your container sql name>:path/your/bash dir/root/data.csv
# 복사 완료

완성되면 저렇게 완료가 뜬다
그 다음에
## bash 들어와서
mysql -u admin -p -h <local ip> --local-infile
로 넣어주면 된다 보통 local ip는 127.0 .. 뭐시기로 시작하는 것들이니 참고하시고
나는 이 블로그들 보면서 참고했음
https://ttoj.github.io/study/db/intro/MySQL-csv-import/
https://leezzangmin.tistory.com/33

query OK 에 행 수가 적혀 나오는거면 완료가 된거다
진짜 9시간동안 개삽질했더니 개발자하기가 정말 싫어진다...

그래도 저를 구원해주신 두 블로거님께 만나시면 삼천배 드리겠습니다
