[MySql] 테이블 내용 복사하기(인덱스 키 추가하기)

테이블 A에 데이타가 엄청 많이 들어 있는경우 index 키를 추가하면 시간이 엄청 많이 걸린다.(몇시간 이상 걸리는 경우가 많음)


이런경우 

테이블 A의 Create Script로 B를 새로 생성하고 Index 키를 추가한다음 테이블 A의 내용을 테이블 B에 복사하는 과정을 거치면 바로바로 생성이 된다.(1초 이내 ^.^)

B를 다시 A로 대체해야 하는 경우 테이블 A를 삭제하고 테이블 B를 A로 이름을 변경하면 쉽게 해결된다.


step 1 : 복사할 칼럼을 일일이 타이핑하거나 칼럼 한개씩 복사 붙이기 하기보다는 아래처럼 해서 칼럼을 복사한다.

SELECT group_concat(column_name) FROM information_schema.columns WHERE table_schema = '데이타베이스 이름' AND table_name = '테이블 A'

복사한 칼럼을 ColumnComma라고 하면


step 2 : 쿼리를 이용하여 데이타를 복사한다.

INSERT INTO 테이블_B ( ColumnComma )

SELECT ColumnComma FROM 테이블_A


^.^
0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기
captcha
자동등록방지 숫자입력

웹개발

번호 제목 글쓴이 날짜 조회수
122 [Dart] Dart 문법 정리 최고관리자 09-09 24,845
121 [Flutter] absorbpointer-and-ignorepointer 최고관리자 09-08 24,167
120 [PHP] 타입선언 최고관리자 08-22 23,996
119 [PHP] error_level 셋팅과 실제 출력 최고관리자 08-21 24,100
118 [MySql] 타입지정시 괄호안의 숫자 최고관리자 08-18 24,131
117 [MySql] MySQL 최적의 데이터 타입 선택 방법 최고관리자 08-18 23,808
116 [MySql] 인덱스 조회시 주의 사항 최고관리자 08-18 23,813
115 [MySql] NOT NULL과 DEFAULT 를 동시에 쓸 필요가 있는가? 최고관리자 08-18 23,833
114 [Flutter] Row and Column 최고관리자 08-16 23,691
113 [Flutter] Linting 설정으로, 흔하게 실수할 수 있는 것을 build 전 방지하기. 최고관리자 08-16 23,856
112 [PHP] PHP 7.x PHP 8.x에서의 조건문 최고관리자 07-26 23,829
111 [JS] Webpack을 쓰는 이유 최고관리자 07-24 23,885
110 [Vue] Vue Router 최고관리자 07-22 23,763
109 [Vue] Vue.js 기본 원리 최고관리자 07-22 24,250
108 [MySql] 쿼리 결과를 합치는 union vs union all의 차이 최고관리자 07-10 23,777
107 [Vue] 일반적인 프로젝트의 구조에 대해 알아보자. 최고관리자 06-18 23,844
106 [JSP] vue등의 스크립트 분석을 위해 %태그 정도는 알자. 최고관리자 06-18 23,971
105 [MySql] 페이징(paging) 쿼리시 전체개수를 한번에 처리하는 방법 최고관리자 06-14 24,609
104 [MySql] Join vs Sub Query 비교 최고관리자 06-05 24,021
103 [SQL] SQL Join에 대한 이해 최고관리자 06-05 23,872