it-swarm-ko.tech

sql.gz 파일을 데이터베이스에 어떻게로드합니까? (가져 오기)

Gzip으로 압축 된 SQL 파일을 mysql로 ​​직접 가져 오려고합니다. 이것이 올바른 방법입니까?

mysql -uroot -ppassword mydb > myfile.sql.gz
165
Alex
zcat /path/to/file.sql.gz | mysql -u 'root' -p your_database

>mysqlstdout 명령 출력을 myfile.sql.gz 이것은 아마도 당신이 원하는 것이 아닐 것입니다. 또한이 명령은 MySQL 사용자 "root"의 비밀번호를 묻습니다.

262
joschi

Sql.gz 파일을 가져 오는 동안 진행률 표시 줄을 표시하려면 pv를 다운로드하고 다음을 사용하십시오.

pv mydump.sql.gz | gunzip | mysql -u root -p <database name>

CentOS/RHEL에서 yum install pv.

데비안/우분투에서 apt-get install pv.

MAC에서 brew install pv

86
Banjer

가장 간단한 방법은 가져 오기 전에 데이터베이스 파일의 압축을 푸는 것입니다. @ Prof. Moriarty 에서 언급했듯이 명령에서 암호를 지정하지 않아야합니다 (암호를 묻는 메시지가 표시됨). webcheatsheet 에서 가져온이 명령은 데이터베이스의 압축을 풀고 한 번에 가져옵니다.

gunzip < myfile.sql.gz | mysql -u root -p mydb
56
icc97

zcat에서 오류가 발생하면 오류 메시지에 추가 접미사 .Z 다음 https://stackoverflow.com/questions/296717/zcat-wont-unzip-files-properly 에 설명 된대로 gzcat를 대신 사용해보십시오.

15

MacOS에서는 다음을 사용했습니다.

zcat < [Database].sql.gz | mysql -u root -p [Database Name in MySQL]

비밀번호를 입력하십시오.

5
Qasim

또한 SQL 파일에 USE 문이 있는지 확인하십시오. 명령 행에서 데이터베이스를 지정한다고해서 SQL 파일 내에 다른 대상이 지정된 경우 데이터가 종료되는 것은 아닙니다.

4
ikso

bzip2 압축 파일 (.sql.bz2)의 경우 다음을 사용하십시오.

bzcat <file> | mysql -u <user> -p <database>

OR

pv <file> | bunzip2 | mysql -u <user> -p <database>

진행률 표시 줄을 볼 수 있습니다.

1
TimSparrow

당신이 사용할 수있는 -c, --stdout, --to-stdoutgunzip 명령 옵션

예를 들면 다음과 같습니다.

gunzip -c file.sql.gz | mysql -u root -p database
0
Ali Jazayeri

.sql.qz 명령으로 내보내려면 :-

mysqldump -u username -p 데이터베이스 | gzip> database.sql.gz

.sql.qz 파일 명령을 가져 오려면 다음을 수행하십시오.

gunzip <database.sql.gz | mysql -u usrname -p 새로운 데이터베이스

셰일 쉬 타파

0
Shailesh Thapa