[mysql] MySQL의 명령 줄을 사용하여 SQL 파일을 가져 오려면 어떻게합니까?

에서 내 보낸 .sql파일이 있습니다 phpMyAdmin. 명령 줄을 사용하여 다른 서버로 가져오고 싶습니다.

나는이 윈도우 서버 2008 R2 설치를. 나는 배치 .sql상의 파일을 C 드라이브 , 나는이 명령을 시도

database_name < file.sql

그것은 작동하지 않습니다. 구문 오류가 발생합니다.

  • 문제없이이 파일을 가져 오려면 어떻게해야합니까?
  • 먼저 데이터베이스를 만들어야합니까?


답변

시험:

mysql -u username -p database_name < file.sql

MySQL 옵션을 확인하십시오 .

참고 -1 : SQL 파일의 전체 경로를 사용하는 것이 좋습니다 file.sql.

참고 -2 :-R--triggers원래 데이터베이스의 루틴 및 트리거를 유지하기 위해 및 사용하십시오 . 기본적으로 복사되지 않습니다.

참고 -3 mysql에서 (비어있는) 데이터베이스가 존재하지 않고 내 보낸 SQL에 포함되지 않은 경우 CREATE DATABASE(내보내기 --no-create-db또는 -n옵션으로) 가져 오기 전에 데이터베이스를 만들어야 할 수도 있습니다.


답변

mysqldump 의 일반적인 용도 는 전체 데이터베이스를 백업하는 것입니다.

shell> mysqldump db_name > backup-file.sql

다음과 같이 덤프 파일을 서버에 다시로드 할 수 있습니다.

유닉스

shell> mysql db_name < backup-file.sql

Windows 명령 프롬프트 에서도 동일 합니다.

mysql -p -u [user] [database] < backup-file.sql

PowerShell

C:\> cmd.exe /c "mysql -u root -p db_name < backup-file.sql"

MySQL 명령 줄

mysql> use db_name;
mysql> source backup-file.sql;


답변

대용량 파일을 가져 오는 데 걸리는 시간과 관련하여 가장 중요한 것은 MySQL의 기본 설정이입니다 autocommit = true. 파일을 가져 오기 전에 설정을 해제 한 다음 가져 오기가 gem처럼 작동하는지 확인해야합니다.

다음 작업을 수행하면됩니다.

mysql> use db_name;

mysql> SET autocommit=0 ; source the_sql_file.sql ; COMMIT ;


답변

모든 답변 중에서 위의 문제에 대해 이것이 가장 좋습니다.

 mysql> use db_name;
 mysql> source file_name.sql;


답변

이 명령을 사용하여 명령 행에서 SQL을 가져올 수 있습니다.

mysql -u username -p password db_name < file.sql

사용자 이름은 예를 들어, root및 암호입니다 password. 그리고 데이터베이스 이름은 bank이고 SQL 파일은 bank.sql입니다. 그런 다음 간단히 다음과 같이하십시오.

mysql -u root -p password bank < bank.sql

SQL 파일이 어디에 있는지 기억하십시오. SQL 파일이 Desktop폴더 / 디렉토리에있는 경우 데스크탑 디렉토리로 이동하여 다음과 같이 명령을 입력하십시오.

~ ? cd Desktop
~/Desktop ? mysql -u root -p password bank < bank.sql

그리고 Project디렉토리에 있고 SQL 파일이 Desktop디렉토리에있는 경우. Project디렉토리 에서 액세스하려면 다음과 같이하십시오.

~/Project ? mysql -u root -p password bank < ~/Desktop/bank.sql


답변

스키마로 가져 오는 가장 쉬운 방법 :

mysql에 로그인하고 아래 언급 명령을 발행하십시오.

mysql> use your_db_name;

mysql> source /opt/file.sql;


답변

데이터베이스가 이미있는 경우 다음을 사용하여 dump또는 sql파일 을 가져 오십시오 .

mysql -u username -p database_name < file.sql

MySQL에서 관련 데이터베이스 (비어 있음)를 만들 필요가 없다면 MySQL터미널이나 cmd에서 다음 명령을 실행하여 콘솔에 먼저 로그온하십시오.

mysql -u userName -p;

프롬프트가 표시되면 비밀번호를 제공하십시오.

다음으로 데이터베이스를 작성하여 사용하십시오.

mysql>create database yourDatabaseName;
mysql>use yourDatabaseName;

그런 다음 sql또는 dump파일을 데이터베이스로 가져옵니다.

mysql> source pathToYourSQLFile;

참고 : 터미널이 dump또는 sql파일이 있는 위치에 없으면 위의 상대 경로를 사용하십시오.