Importing an SQL file using the command line in MySQL
Start your free 7-days trial now!
We can import an SQL file using the command line in MySQL using the following command:
mysql -u username -p database_name < file_name.sql
Where:
username
is your MySQL username.database_name
is the name of the database you would like to import the file to.file_name
is the name of the sql file you would like to import. It is best practice to include the full file path.
If the database_name
that you specify does not yet exist, then you will have to create it first if your SQL file does not contain a CREATE DATABASE
statement. Learn more about how to create a database here.
Example
Consider we have the following table students
residing within the people
database:
student_id | fname | lname | day_enrolled | age | username |
---|---|---|---|---|---|
1 | Sky | Towner | 2015-12-03 | 17 | stowner1 |
2 | Ben | Davis | 2016-04-20 | 19 | bdavis2 |
3 | Travis | Apple | 2018-08-14 | 18 | tapple3 |
4 | Arthur | David | 2016-04-01 | 16 | adavid4 |
5 | Benjamin | Town | 2014-01-01 | 17 | btown5 |
The above sample table can be created using the code here.
To import an SQL file test.sql
that contains the SQL statement SELECT * FROM students;
to database people
:
mysql -u root -p people < /Users/Bob/test.sql
student_id fname lname day_enrolled age username1 Sky Towner 2015-12-03 17 stowner12 Ben Davis 2016-04-20 19 bdavis23 Travis Apple 2018-08-14 18 tapple34 Arthur David 2016-04-01 16 adavid45 Benjamin Town 2014-01-01 17 btown5
On running the command and inputting our password, we can see that the SQL code within the test.sql
file is executed returning the contents of the students
table within the people
database.