database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 29931 게시물 읽기
No. 29931
디비 백업후 복구작업중에 있습니다. 에러좀 봐주세요!!
작성자
임두환(puterlik)
작성일
2011-03-09 09:38
조회수
13,799

다른 사이트에도 올렸는데 답변이 없어서 카피 페이스트 했습니다.!!!

안녕하세요 mysql 4.0.26버전을 사용하고 있습니다. 디비 마이그레이션을 할려고 디비를 통으로

백업 받았습니다. 4.0에서 4.1로 마이그하고 이상없음을 확인후 5.5버전으로 마이그할려고합니다.

통으로 받은 디비가 DB.sql입니다. 700메가가 좀 넘습니다. 이것을 콘솔에서

mysql -u root -p <DB.sql하면 패스워드를 딱 치면 넘어가고 화면이 움직이지 않습니다.

실제로는 쿼리는 도는것 같은데요 쿼리가 도는것을 콘솔상에서 보고싶은데 옵션이 있나요?


또다른 질문하나입니다. 복구시 에러가 발생했는데요 Error 1050 at line 34883: Table
'columns_priv' already exists 이렇게 나옵니다. DB.sql이 파일이 700메가가 넘기에

편집을 할수가 없네요 또한 4.0.26 디비를 설치할때 mysql 데이터베이스가 생성되는데

이것을 지우고 제실행하면 또 안되잔아요 'columns_priv'이거 mysql 에 존재하기때문에

에러가 난다는것 알겠고 존재하지만 무시하고 덮어쓰겠다 이런 옵션이 따로 있는지 알고

싶습니다. 고수님들 알려주세요!!!

이 글에 대한 댓글이 총 7건 있습니다.

1.

> mysql -u root -p < db.sql &

과 같이 & 기호를 입력하여 백그라운드로 실행되도록 하고, mysql client를 통해 서버에 접속하신 후, SHOW PROCESSLIST 명령을 통해 현재 수행중인 쿼리를 확인하실 수 있습니다. 

700메가 정도면 적은 용량이기 때문에, 금방 끝나리라 예상되긴 합니다.

 

복원이 지나치게 오래 걸리는 이유가 과도한 인덱스 때문일 수도 있는데, 만약 ALTER TABLE [table] DISABLE KEYS 가 적용되어 있지 않은 SQL dump라면, 이를 적용하여 복원 속도를 개선할 수 있습니다.

ALTER TABLE ... DISABLE KEYS 에 대한 링크 : http://dev.mysql.com/doc/refman/5.1/en/alter-table.html 에서 DISABLE KEYS를 검색.

 

 

2.

데이터베이스 백업시에 --all-databases 옵션을 사용하신 탓에 기본 데이터베이스인 mysql을 같이 백업하신 것으로 보입니다.

기본 데이터베이스로 mysql 데이터베이스가 존재하기 때문에, 이름을 바꿔 복원하는 것을 시도해보세요.

 

mysql DB의 백업 영역에 다음과 같은 문구가 있습니다. (mysqldump 버전이나 서버 환경에 따라 문구는 다를 수 있습니다. )

CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysql` /*!40100 DEFAULT CHARACTER SET latin1 */;
 
USE `mysql`;
 
여기서 mysql 문자열을 mysql_old 등으로 치환하신 후에 작업하시면 문제가 없을 것 같습니다.

박현우(lqez)님이 2011-03-09 17:16에 작성한 댓글입니다.

-f 옵션 넣어서 실행하시고

 

--max_allowed_packet=1024M 도 넣어서 실행하세요

 

mysql -u root -p -f --max_allowed_packey=1024M < db.sql &

민족님이 2011-03-10 01:48에 작성한 댓글입니다. Edit

 

 

쿼리 확인

 

 

./bin/mysqladmin -uroot -p -i 5 processlist | |grep Query

민족님이 2011-03-10 01:48에 작성한 댓글입니다. Edit

박현우(lqez)님 민족님 말씀감사합니다. 우선 다른문제보다는 박현우님께서 말씀하신 2번에서

걸리는게 있습니다. 맞습니다. 백업할때 -all-databaes 옵션을 준거같습니다. 그런데 이름을 바꿔 복원한다는

뜻을 이해못하겠습니다. 백업한 파일이 700메가가 넘는데 편집을 못하는데 하라는 말씀이신지

 

아니면 기본데이터베이스인 mysql디비를 mysql_old로 변경해서 하라는 것인지요 <<-이것을 말씀하신듯한데

mysql디비를 mysql_old로 변경하면 리스타트가 안되는데 어떻게 하라는건지요 답변기다리겠습니다.

 

임두환(puterlik)님이 2011-03-10 10:32에 작성한 댓글입니다.

아래와 같이 진행하시면 700MB보다 더 커도 할 수 있습니다.

> cat DB.sql | sed -e 's/`mysql`/`mysql_old`/g' > DB_new.sql

 

텍스트 에디터로 직접하면, 사람이 놓치는 부분도 있고, 그렇게 큰 파일을 잘 열어주는 에디터도 없을 것이라 생각합니다.

박현우(lqez)님이 2011-03-10 16:28에 작성한 댓글입니다.

리눅스 서버가 아니네요 윈도우입니다. 아!!어떻게 하나요!!!

 

임두환(puterlik)님이 2011-03-11 17:43에 작성한 댓글입니다.
이 댓글은 2011-03-11 17:44에 마지막으로 수정되었습니다.

정말 중요한 데이터라면 리눅스/유닉스로 옮겨 진행하시거나, 아니면 cygwin 등을 설치하셔도 되겠습니다.

요즘엔 0.7GiB 옮기는 건 별로 어려운 일이 아닐꺼라 생각됩니다만.

 

윈도우에서 굳이 진행하시고자 한다면, ultraedit 등은 큰 파일을 잘 열어주는 것으로 알고 있습니다.

아래의 팁을 참고하세요.

http://www.ultraedit.com/support/tutorials_power_tips/ultraedit/large_file_handling.html

박현우(lqez)님이 2011-03-19 00:07에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
29935MySQL 클러스터 추가 질문드립니다. [4]
궁금
2011-03-11
8961
29934MySQL 클러스터 관련 질문 드려요. ㅠ [2]
궁금
2011-03-09
8792
29932mysql cluster 사용을 고민해 보면서.. [4]
humble
2011-03-09
9598
29931디비 백업후 복구작업중에 있습니다. 에러좀 봐주세요!! [7]
임두환
2011-03-09
13799
29930mysql password() 함수의 결과가 old_password()의 결과로 나옵니다. [2]
김영범
2011-03-08
8523
29929디비 설계에 대해서 [4]
김인수
2011-03-07
9751
29928.mysql_history에 대해서 [1]
김태경
2011-03-06
10296
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다