[mysql] MySQL에서 SQL 스크립트를 실행하는 방법은 무엇입니까?

MySQL에서 SQL 쿼리가 포함 된 텍스트 파일을 실행하고 싶습니다.

나는 달리기를 시도 source /Desktop/test.sql하고 오류를 받았다.

mysql>. \ home \ sivakumar \ Desktop \ test.sql 오류 : ‘\ home \ sivakumar \ Desktop \ test.sql’파일을 열지 못했습니다 : 오류 : 2

내가 뭘 잘못하고 있는지에 대한 아이디어가 있습니까?



답변

MySQL 명령 줄에 mysql>있는 경우 SQL 파일을로 선언해야합니다 source.

mysql> source \home\user\Desktop\test.sql;


답변

많은 옵션이 있습니다.

  • MySQL 명령 행 클라이언트를 사용하십시오. mysql -h hostname -u user database < path/to/test.sql
  • MySQL GUI 도구를 설치하고 SQL 파일을 연 다음 실행하십시오.
  • 웹 서버를 통해 데이터베이스를 사용할 수있는 경우 phpmysql을 사용하십시오.

답변

다음 명령을 사용하여 텍스트 파일로 작성된 mysql 문을 실행할 수 있습니다.

mysql -u yourusername -p yourpassword yourdatabase < text_file

데이터베이스가 아직 생성되지 않은 경우 먼저 다음을 사용하여 mysql에 로그인하십시오.

mysql -u yourusername -p yourpassword yourdatabase

그때:

mysql>CREATE DATABASE a_new_database_name

그때:

mysql -u yourusername -p yourpassword a_new_database_name < text_file

그렇게해야합니다!

자세한 정보는 여기 : http://dev.mysql.com/doc/refman/5.0/en/mysql-batch-commands.html


답변

가장 좋아하는 옵션은 다음과 같습니다.

 mysql --user="username" --database="databasename" --password="yourpassword" < "filepath"

“”로 문자열을 묶을 때 잘못된 경로와 공백으로 인한 실수를 피하고 아마도 내가 경험하지 못한 문자에 대한 더 많은 문제를 피하기 때문에이 방법을 사용합니다.


@elcuco 주석을 사용하면이 명령을 [space]와 함께 사용하여 bash에 기록에 저장하지 말라고 명령하면 대부분의 bash에서 즉시 작동합니다.

여전히 명령을 기록에 저장하는 경우 다음 솔루션을 확인하십시오.

기록에 보관하지 않고 명령 실행


추가 보안 편집

추가 안전을 위해 다음 명령을 사용하고 명령 행 입력에 비밀번호를 입력하십시오.

mysql --user="username" --database="databasename" -p < "filepath"


답변

모든 최고의 답변이 좋습니다. 그러나 다만 만일 누군가가 원격 서버에 텍스트 파일에서 쿼리를 실행하고자 AND , 당신은이 작업을 수행 할 수 있습니다 (대신 콘솔에 표시의) 파일에 결과를 저장 :

mysql -u yourusername -p yourpassword yourdatabase < query_file > results_file

이것이 누군가를 돕기를 바랍니다.


답변

.sql 파일의 경로를 다음과 같이 지정하십시오.

source c:/dump/SQL/file_name.sql;

이미지 참조 :


답변

나는이 답변을 찾기 위해 여기에 왔으며, 여기에 내가 가장 잘 맞는 것을 발견했습니다. 참고 Ubuntu 16.xx를 사용하고 있습니다.

  1. 다음을 사용하여 mysql에 액세스하십시오.

mysql -u <your_user> - p

  1. mysql 프롬프트에서 다음을 입력하십시오.

source file_name.sql

도움이 되었기를 바랍니다.