如何使用命令行将单个表导入mysql数据库

时间:2011-03-22 06:27:33

标签: mysql import

我已经使用命令行成功导入了数据库,但现在我的痛苦领域是如何使用命令行将单个表及其数据导入现有数据库。

19 个答案:

答案 0 :(得分:272)

Linux:

在命令行中

 mysql -u username -p  databasename  < path/example.sql

将你的表放在example.sql

单表导入/导出:

  1. 导出表架构

    mysqldump -u username -p databasename tableName > path/example.sql
    

    这将在所提到的路径上创建一个名为example.sql的文件,并编写create table sql命令来创建表tableName

  2. 将数据导入表格

    mysql -u username -p databasename < path/example.sql
    

    此命令需要一个sql文件,其中包含表insert的{​​{1}}语句形式的数据。将执行所有tableName语句并加载数据。

答案 1 :(得分:29)

导出:

mysqldump --user=root databasename > whole.database.sql
mysqldump --user=root databasename onlySingleTableName > single.table.sql

导入

整个数据库

mysql --user=root wholedatabase < whole.database.sql

单个表格

mysql --user=root databasename < single.table.sql

答案 2 :(得分:21)

如果您可以选择重新导出数据,则所有这些选项都可以。

但是,如果您需要使用现有的SQL文件,并使用其中的特定表,然后使用this perl script in the TimeSheet blog,则可以将表提取到单独的SQL文件,然后导入它。

答案 3 :(得分:11)

导入单一表

要将单个表导入现有数据库,您可以使用以下命令:

mysql -u username -p -D database_name < tableName.sql

注意:最好使用sql文件的完整路径tableName.sql

答案 4 :(得分:4)

命令行

单表导入/导出:

导出表架构

 -> mysqldump -u your_user_name -p your_database_name table_name > test.sql

这将创建一个名为test.sql的文件,并创建table sql命令来创建table table_name。

将数据导入表格

 -> mysql -u your_user_name -p database_name table_name < test.sql

确保您的test.sql文件位于同一目录中,如果不在该路径中导航,则运行该命令。

答案 5 :(得分:3)

它正常工作......

C:\>mysql>bin>mysql -u USERNAME DB_NAME < tableNameFile.sql

请注意.sql文件指定了您当前的数据库..

答案 6 :(得分:2)

首先,登录到您的数据库并检查您要导入的数据库表是否在数据库上不可用。

如果可用,请使用命令删除表。否则,导入表时将引发错误。

DROP TABLE Table_Name;

然后,移至您拥有.sql文件的文件夹,并从终端上运行以下命令

mysql -u username -p  databasename  < yourtable.sql

终端将要求您输入密码。输入它并检查数据库。

答案 7 :(得分:1)

  • 它将是EXPORT INTO OUTFILELOAD DATA INFILE的组合

  • 您需要使用EXPORT INTO OUTFILE导出该单个表,这会将表数据导出到文件中。您可以使用LOAD DATA INFILE

  • 导入该特定表格
  • 参考doc1doc2

答案 8 :(得分:1)

也是它的工作。在命令表格

cd C:\wamp\bin\mysql\mysql5.5.8\bin //hit enter
mysql -u -p databasename //-u=root,-p=blank

答案 9 :(得分:1)

我们可以使用CMD导入单个表格,如下所示:

D:\wamp\bin\mysql\mysql5.5.24\bin>mysql -h hostname -u username -p passowrd databasename < filepath

答案 10 :(得分:1)

如果您处于SQL转储的密码中,并且需要一个表,请执行以下操作:

sed -n '/-- Table structure for table `'TableNameTo_GrabHere'`/,/-- Table/{ /^--.*$/d;p }' dump_file_to_extract_from.sql > table_name_here.sql

然后将您从上面提取的表导入所需的数据库

答案 11 :(得分:1)

如果数据库中已经有了所需的表,请先将其删除,然后运行以下命令:

 mysql -u username -p  databasename  < yourtable.sql

答案 12 :(得分:0)

首先备份你的两个数据库,第2步选择你想要导出的表,现在选择导出按钮现在下载sql文件现在你必须导入到另一个数据库只需选择数据库然后导入sql文件...简单并且很容易。

答案 13 :(得分:0)

要将表导入数据库,如果表已经存在,则将此行添加到sql文件df.shape[0]中,然后运行命令DROP TABLE IF EXIST 'table_name'。 在执行命令之前,请验证sql文件路径。

答案 14 :(得分:0)

使用临时数据库可能是一个解决方案,具体取决于数据库的大小。

mysql -u [username] -p -e "create database tempdb"
mysql -u [username] -p tempdb < db.sql
mysqldump -u [username] -p tempdb _table_to_import_ > table_to_import.sql
mysql -u [username] -p maindb < table_to_import.sql

答案 15 :(得分:0)

from flaskext.mysql import MySQL
mysql = MySQL()
mysql.init_app(app)

答案 16 :(得分:0)

从服务器到本地(导出)

mysqldump -u username -p db_name table_name > path/filename.sql;
mysqldump -u root -p remotelab welcome_ulink > 
/home_local/ladmin/kakalwar/base/welcome_ulink.sql;

从本地到服务器(导入)

mysql -u username -p -D databasename < path/x/y/z/welcome_queue.sql
mysql -u root -p -D remotelab < 
/home_local/ladmin/kakalwar/instant_status/db_04_12/welcome_queue.sql

答案 17 :(得分:0)

mysql -u root -p -D dbname < tablename.sql

答案 18 :(得分:0)

你可以用mysql命令代替linux命令 1.登录你的mysql 2.在mysql命令中执行此操作:
use DATABASE_NAME;
SET autocommit=0 ; source ABSOLUTE_PATH/TABLE_SQL_FILE.sql ; COMMIT ;