Cómo importar una sola tabla a la base de datos mysql usando la línea de comando


141

Había importado con éxito una base de datos usando la línea de comando, pero ahora mi área de dolor es cómo importar una sola tabla con sus datos a la base de datos existente usando la línea de comando.


3
exportar una sola tabla e importar
Shakti Singh

3
Vea también esta pregunta duplicada: stackoverflow.com/q/1013852/385571 con sus respuestas más relevantes
MattBianco

Respuestas:


317

Linux:

En línea de comando

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

pon tu tabla en example.sql

Importar / Exportar para una sola tabla:

  1. Exportar esquema de tabla

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

    Esto creará un archivo nombrado example.sqlen la ruta mencionada y escribirá el create tablecomando sql para crear la tabla tableName.

  2. Importar datos a la tabla

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

    Este comando necesita un archivo sql que contenga datos en forma de insertdeclaraciones para la tabla tableName. insertSe ejecutarán todas las declaraciones y se cargarán los datos.


2
se perdió el -u;) mysqldump -u nombre de usuario -p databasename tableName> ruta / ejemplo.sql
Kazmin

2
Para importar no necesita usar mysql dump. mysql -u username -p databasename tableName <ruta / ejemplo.sql Debería hacer su trabajo
Prabhakar Undurthi

8
El tableNamenombre no es necesario para todas las versiones de MySQL y produce errores, por lo que es posible que deba omitirlo.
mchar

1
Estaba recibiendo un error de sintaxis hasta que me di cuenta de que estaba en bash y no mysql al ejecutar.
Christia

2
Esto funcionaría solo si tengo acceso a la base de datos desde la cual puedo exportar una tabla específica. Sin embargo, si tengo un volcado completo de la base de datos y quiero seleccionar las tablas para importar, esta solución no funcionará. La publicación vinculada ¿Puedo restaurar una sola tabla desde un archivo mysql mysqldump completo? aborda ese problema.
codeforester

34

Exportar:

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

Importar :

Base de datos completa :

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

Mesa individual :

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


12

Importar la tabla individual

Para importar una sola tabla a una base de datos existente, usaría el siguiente comando:

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

Nota: es mejor utilizar la ruta completa del archivo sql tableName.sql


5

Línea de comando

Importar / Exportar para una sola tabla:

Exportar esquema de tabla

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

Esto creará un archivo llamado test.sql y creará el comando table sql para crear la tabla nombre_tabla.

Importar datos a la tabla

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

Asegúrese de que su archivo test.sql esté en el mismo directorio, si no navega por la ruta y luego ejecute el comando.


3
No necesita especificar el nombre de la tabla en la línea de comando, ya que el archivo SQL exportado tiene la llamada relevante para crear la tabla. Todo lo que necesita es mysql -u your_user_name -p database_name < test.sql.
Michael De Silva

1
Aquí hay un ejemplo de una tabla exportada, `22 DROP TABLE IF EXISTS account_product_prices; 23 / *! 40101 SET @saved_cs_client = @@ character_set_client /; 24 / ! 40101 SET character_set_client = utf8 * /; 25 CREAR TABLA account_product_prices(`
Michael De Silva

5

En primer lugar, inicie sesión en su base de datos y verifique si la tabla de la base de datos que desea importar no está disponible en su base de datos.

Si está disponible, elimine la tabla con el comando. De lo contrario, arrojará un error al importar la tabla.

DROP TABLE Table_Name;

Luego, vaya a la carpeta en la que tiene el .sqlarchivo para importar y ejecute el siguiente comando desde su terminal

mysql -u username -p  databasename  < yourtable.sql

El terminal le pedirá que ingrese la contraseña. Ingrese y verifique la base de datos.


4

Funciona correctamente ...

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

tenga en cuenta que el archivo .sql especificó su base de datos actual.


2

Podemos importar una sola tabla usando CMD de la siguiente manera:

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

2

Si ya tiene la tabla deseada en su base de datos, primero elimínela y luego ejecute el siguiente comando:

 mysql -u username -p  databasename  < yourtable.sql

2

De servidor a local (Exportando)

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;

De local a servidor (Importando)

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

2
Para principiantes, tenga en cuenta que debe operar desde la terminal que no está dentro del mysql después de presionar el comando, le pedirá la contraseña db_password
Venkatesh Kakalwar

2

También está funcionando. En forma de comando

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

2
  • Sería una combinación de EXPORT INTO OUTFILEyLOAD DATA INFILE

  • Necesita exportar esa única tabla con EXPORT INTO OUTFILE, esto exportará los datos de la tabla a un archivo. Puede importar esa tabla en particular usandoLOAD DATA INFILE

  • Consulte doc1 , doc2


1

puede hacerlo en el comando mysql en lugar del comando linux.
1.Inicie sesión en mysql.
2.explica esto en el comando mysql:
use DATABASE_NAME;
SET autocommit=0 ; source ABSOLUTE_PATH/TABLE_SQL_FILE.sql ; COMMIT ;


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

1
Si bien este fragmento de código es bienvenido y puede proporcionar algo de ayuda, mejoraría mucho si incluyera una explicación de cómo y por qué esto resuelve el problema. ¡Recuerde que está respondiendo la pregunta para los lectores en el futuro, no solo la persona que pregunta ahora! Por favor, editar su respuesta para agregar explicación y dar una indicación de lo que se aplican limitaciones y supuestos.
Toby Speight


0

El uso de una base de datos temporal podría ser una solución dependiendo del tamaño de la base de datos.

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

0

Para importar una tabla a la base de datos, si la tabla ya existe, agregue esta línea en su archivo sql DROP TABLE IF EXIST 'table_name'y ejecute el comando mysql -u username -p database_name < import_sql_file.sql. Verifique la ruta del archivo sql antes de ejecutar el comando.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.