병신 삽질 : 2일 ㅎㅎ
구름 ide 에서
리눅스 서버와 10기가 저장공간 지원해주기 때문에...
그곳에 DB를 저장해놓고 싶어졌다 ㅋ
1. 집(윈도우, mysql 8.x) 에서 data export ==> *.sql 파일 생성 (약 1기가)
2. 병원에서 노트북으로, 구름ide 오랜만에 접속,
예전에 mysql 포트포워딩 해놓은 설정이 안 바뀌고 잘 유지되고 있었음.
mysql workbench 로 data import 시도.
3. collate error 만남 --;;
0000 line 에서 collate utf8mb4_0900_ai_ci 에러라는데...
메모장으로 sql 파일 열어볼까 시도. 파일이 커서 안 열림. 다른 텍스트에디터 사용하면 열어서 내용 볼 수 있겠지만...
디비 개발자답게... 명령어질로 해결하고 싶었음.
폭풍 검색질로, 테이블의 collate 변경하는 방법은 찾아냄 ㅋ
show table status;
alter table `000020_01min` collate 'utf8mb4_0900_ai_ci';
drop procedure if exists updatetable;
delimiter $$
create procedure updatetable()
begin
declare done boolean default false;
declare nm_table char(255);
declare cur cursor for
select table_name
from information_schema.tables
where table_schema='stock_backup'
and table_type='BASE TABLE';
declare continue handler for not found set done=true;
open cur;
my_loop : loop
fetch cur into nm_table;
if done then
leave my_loop;
end if;
set foreign_key_checks=0;
set @stmt = concat('alter table ','`',nm_table,'`',' collate utf8mb4_general_ci;');
prepare stmt1 from @stmt;
execute stmt1;
deallocate prepare stmt1;
set foreign_key_checks=1;
end loop;
close cur;
end$$
delimiter ;
call updatetable();
show table status;
4. import 재시도 해봤으나,,, 이번에는 collation_connection 에러 --;
export 할 때, 테이블(base table)과 뷰(view) 함께 export 되는거였고...
3번 alter table 로 테이블 콜레이트는 변경했으나... 뷰의 collation_connection 을 변경해야 하는데...
alter view 등등 sql 명령어로 변경 가능할까 해서 신나게 검색해봤는데... 나는 못 찾겠음 ㅜㅜ
set collation_connection='utf8mb4_general_ci';
이 명령어로는 이제부터의 세팅을 바꾸는 것이기에...(즉, 지금부터 생성하는 뷰들은,,, 콜레이션커넥션이 이걸로 생성됨)
그러나 이미 만들어진 뷰의 콜레이션커넥션 바꾸는 법은 못 찾았음.
5. export 하면서 만들었던, 즉 import 할 *.sql 파일을 직접 열서서,
_0900_ai_ --> _general_
로 모두 변경해주면 에러없이 5.X mysql 에서 import 가능함.
sql 명령어질로 view collation_connection 변경하고 싶었으나... 이젠 나를 놔줄 때가 된 듯. 이틀 삽질 ㅋ
6. 1기가 넘는 대용량 텍스트 파일... 예전 회사에서 사용하던 acroedit 사용하면 잘 열리는 것은 알지만...
새로운 프로그램 한 번 찾아볼까 하여 검색... liquid studio 의 large text editor(?) 라는 것을 추천하는 양반이 있길래, 설치하여 열어봤음. 로딩시간 1초?도 안 걸림... 헉... 좋은 세상이군 ㅎㅎ
요새 파이썬 프로그래머 놀이중이라, 파이참에서 열어볼까 생각하다가... 파이참 프로그램이 좀 무거운 느낌이 있는 터라... 시도 조차 안 해봤었지... liquid studio로 열어보고난 후, 그냥 속는 셈치고 열어보자 생각.
먹통 되면... 프로그램 종료할 각오로.
그런데 왠걸.... 파이참에서도 바로 눈앞에 열림 ㅋ
1기가 넘는 텍스트 파일 무리없이 열림. ㅎ ㅓ ㅎ ㅓ. 근데... read-only mode 라고 하는구만 --;; 어쩐지 ㅋ
1기가 sql문 mysql에서는 응답없음 으로 안 열림. 오래 기다리면 열릴는지는 모르겠음 ㅋ
요약
1. 난 귀찮다. -->
텍스트에디터로 확장자 sql파일 열어서 일괄 변경한 후 import
_0900_ai_ --> _general_
2. sql 반복문 연습 겸, sql 명령어 익히고 싶다. -->
sql 명령어질로 base table들은 다 바꾸고...
텍스트에디터질로 view들의 collation_connection 바꿈.
3. 이틀동안 병신 개삽질 잘 했네 ㅋ
'개발자 놀이 > 병신 삽질 - 주식 매매 프로그램 (Python)' 카테고리의 다른 글
[구름ide] mysql 서버 에러 (the partition with /var/lib/mysql is too full!) + linux 파일 삭제 (0) | 2024.01.04 |
---|---|
[mysql] MySQL80 서비스가 로컬 컴퓨터에서 시작했다가 중지되었습니다... 오류 해결 (0) | 2023.12.30 |
키움 open api 업종코드 / 호가 가격단위(tick size) (0) | 2023.11.14 |
[python] pycharm 단축키 (0) | 2023.10.18 |
[Python] PyQt5 설치시 SSL/TLS 에러 (0) | 2023.10.17 |