Как импортировать базу данных с MySQL из терминала?

Как импортировать базу данных с mysql из терминала?

Я не могу найти точный синтаксис.

15 ответов


предполагая, что вы находитесь на консоли Linux или Windows:

запрос пароля:

mysql -u <username> -p <databasename> < <filename.sql>

введите пароль напрямую (не безопасно):

mysql -u <username> -p<PlainPassword> <databasename> < <filename.sql>

пример:

mysql -u root -p wp_users < wp_users.sql

mysql -u root -pPassword123 wp_users < wp_users.sql

Читайте также:

4.5.1.5. Выполнение инструкций SQL из текстового файла


Примечание: если вы находитесь на Windows, то вам придется cd (изменить каталог) в каталог MySQL/bin внутри CMD раньше выполнение команды.


предпочтительный способ для windows:

  1. Откройте консоль и запустите интерактивный режим MySQL

  2. use <name_of_your_database>;

  3. source <path_of_your_.sql>


mysql -u <username> -p <database name> < <dump file path>

-u на имя

-p - для запроса пароля

mysql -u root -p mydb < /home/db_backup.sql

иначе вы можете передать пароль, предшествующий-p, но по соображениям безопасности он не внушается


Из Терминала:

mysql -uroot -p --default-character-set=utf8 database_name </database_path/database.sql

в терминальном типе

mysql -uroot -p1234; use databasename; source /path/filename.sql

обычно я использую эту команду для загрузки данных SQL при разделении на файлы с именами: 000-tableA.в SQL, 001-таблице tableb.sql, 002-tableC.язык SQL.

for anyvar in *.sql; do <path to your bin>/mysql -u<username> -p<password>  <database name> < $anyvar; done

хорошо работает на оболочке OSX.


mysql -u username -ppassword dbname < /path/file-name.sql

пример

mysql -u root -proot product < /home/myPC/Downloads/tbl_product.sql

используйте это из терминала


  1. откройте клиент командной строки MySQL и введите свой пароль

  2. изменить базу данных, которую вы хотите использовать для импорта .sql-файл данные. Сделайте это, набрав:

    USE your_database_name
    
  3. теперь найдите .sql-файл, который вы хотите выполнить.
    Если файл находится в главном локальном каталоге диска C: и .имя файла сценария sql -currentSqlTable.sql, вы должны ввести следующее:

    \. C:\currentSqlTable.sql
    

    и нажмите Enter для выполнения файла сценария SQL.


How to load from command line

объяснение:

  1. сначала создайте базу данных или используйте существующую базу данных. В моем случае я использую существующую базу данных

  2. загрузите базу данных, предоставив <name of database> = ClassicModels в моем случае и с помощью оператора < дайте путь к database = sakila-data.sql

  3. запустив show tables, я получаю список таблиц, как вы можете видеть.

Примечание: В моем случае I получил ошибка 1062, потому что я пытаюсь снова загрузить то же самое.


Если вы используете sakila-db с веб-сайта mysql, Его очень легко на платформе Linux просто выполните следующие действия, после загрузки zip-файла sakila-db, извлеките его. Теперь у вас будет два файла, один из них у sakila-схемы.в SQL и у sakila-данных.в SQL.


  1. открыть терминал
  2. введите команду mysql-u root-p
  3. введите команду mysql-u root-p
  4. теперь введите команду в mysql -u в корень -п и введите свой пароль, Теперь вы вошли в систему MySQL с по умолчанию

после борьбы за некоторое время я нашел информацию в https://tommcfarlin.com/importing-a-large-database/

  1. подключение к Mysql (давайте использовать root для имени пользователя и пароля):

    mysql -uroot -proot
    
  2. подключение к базе данных (скажем, она называется emptyDatabase (ваш должен получить сообщение с подтверждением):

    connect emptyDatabase
    

3 импортируйте исходный код, скажем, файл называется mySource.язык SQL и он находится в папке mySoureDb под профилем пользователя myUser:

source /Users/myUser/mySourceDB/mySource.sql

ниже команда работает на ubuntu 16.04, я не уверен, что она работает или нет других платформ Linux.

экспорт файла SQL:

$ mysqldump -u [user_name] -p [database_name] < [database_name.sql]  

пример: mysqldump-u root-p max_development > max_development.в SQL

импорт файла SQL:

$ mysqldump -u [user_name] -p [database_name] > [file_name.sql]

Example: mysqldump -u root -p max_production < max_development.sql

Примечание SQL-файл должен существовать в том же каталоге


непосредственно из var/www / html

mysql -u username -p database_name < /path/to/file.sql

изнутри mysql:

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

в Ubuntu, от MySQL monitor, вы уже использовали этот синтаксис:

mysql> use <dbname> - >Оператор USE сообщает MySQL использовать dbname в качестве базы данных по умолчанию для последующих заявлениях

mysql> source <file-path>

:

mysql> use phonebook;

mysql> source /tmp/phonebook.sql;

важно: убедитесь, что файл sql находится в каталоге mysql доступ нравится /tmp


перед запуском команд на терминале вы должны убедиться, что у Вас установлен MySQL на вашем терминале.

для его установки можно использовать следующую команду:

sudo apt-get update
sudo apt-get install mysql-server

эталонная здесь.

после этого вы можете использовать следующие команды для импорта базы данных:

mysql -u <username> -p <databasename> < <filename.sql>