Linux mysql import dump

How can I import a database with MySQL from terminal?

Note: If you are on windows then you will have to cd (change directory) to your MySQL/bin directory inside the CMD before executing the command.

+1 except for you shouldn’t pass your password as CLI parameter. Rather just specify -p option and enter it manually after prompt.

mysql -u username -h hostname -ppassword databasename < filename.sql for remote host from the terminal

if you are already inside mysql command prompt (mysql>), then simply type source full_path_of_file (note: select database by command USE DATABASE_NAME before import).

@Pekka웃, If we use source , we can see the informational messages («rows affected») and error messages. But using your solution, How do we see the messages using < filename.sql ?

Preferable way for windows:

@NabeelKhan Most SQL statements require a ; at the end of the statement, but there are a few exceptions, including USE and SOURCE .

I wonder if this performs faster than piping the file in (like in the accepted answer). My suspicion is yes.

-p — to prompt the Password

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

You can also provide password preceded by -p but for the security reasons it is not suggestible. The password will appear on the command itself rather masked.

mysql -u username -p database_name < /path/to/file.sql 
mysql> use db_name; mysql> source backup-file.sql 
 mysql -u root -p eg:- mysql -u shabeer -p 

After That Create a Database

 mysql> create database "Name"; eg:- create database INVESTOR; 

Then Select That New Database "INVESTOR"

Select the path of sql file from machine

 mysql> source /home/shabeer/Desktop/new_file.sql; 

Then press enter and wait for some times if it's all executed then

enter image description here

mysql -uroot -p --default-character-set=utf8 database_name 
mysql -uroot -p1234; use databasename; source /path/filename.sql 

Below command is working on ubuntu 16.04, I am not sure it is working or not other Linux platforms.

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

Example : mysqldump -u root -p max_development > max_development.sql

Import SQL file:

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

Note SQL file should exist same directory

I usually use this command to load my SQL data when divided in files with names : 000-tableA.sql, 001-tableB.sql, 002-tableC.sql.

for anyvar in *.sql; do /mysql -u -p  < $anyvar; done 

How to load from command line

  1. First create a database or use an existing database. In my case, I am using an existing database
  2. Load the database by giving = ClassicModels in my case and using the operator < give the path to the database = sakila-data.sql
  3. By running show tables, I get the list of tables as you can see.

Note : In my case I got an error 1062, because I am trying to load the same thing again.

mysql -u username -ppassword dbname < /path/file-name.sql 
mysql -u root -proot product < /home/myPC/Downloads/tbl_product.sql 

After struggling for sometime I found the information in https://tommcfarlin.com/importing-a-large-database/

Читайте также:  Linux get file contents

    Connect to Mysql (let's use root for both username and password):

3 Import the source code, lets say the file is called mySource.sql and it is in a folder called mySoureDb under the profile of a user called myUser:

source /Users/myUser/mySourceDB/mySource.sql 
  1. Open the MySQL Command Line Client and type in your password
  2. Change to the database you want to use for importing the .sql file data into. Do this by typing:

If you are using sakila-db from mysql website, It's very easy on the Linux platform just follow the below-mentioned steps, After downloading the zip file of sakila-db, extract it. Now you will have two files, one is sakila-schema.sql and the other one is sakila-data.sql.

  1. Open terminal
  2. Enter command mysql -u root -p < sakila-schema.sql
  3. Enter command mysql -u root -p < sakila-data.sql
  4. Now enter command mysql -u root -p and enter your password, now you have entered into mysql system with default database.
  5. To use sakila database, use this command use sakila;
  6. To see tables in sakila-db, use show tables command

Please take care that extracted files are present in home directory.

Источник

Импорт и экспорт баз данных MySQL и MariaDB

При работе с данными очень важно уметь импортировать и экспортировать базы данных. Дампы данных можно использовать для резервного копирования и восстановления БД, что позволяет в случае необходимости получить доступ к одной из предыдущих версий данных или переместить их на новый сервер или среду разработки.

Дампы MySQL и MariaDB очень просты в работе. Это руководство научит вас экспортировать и импортировать базы данных с помощью дампа MySQL или MariaDB.

Требования

  • Сервер Linux.
  • Предварительно установленная система управления базами данных MySQL или MariaDB.
  • База данных и пользователь СУБД.

Экспорт данных

Консольная утилита mysqldump позволяет экспортировать данные в текстовый файл SQL, который можно легко переместить. Для этого вам понадобится имя БД, а также учётные данные пользователя, у которого есть как минимум право на чтение БД.

Чтобы экспортировать БД, используйте такую команду:

mysqldump -u username -p database_name > data-dump.sql

  • username – имя пользователя БД;
  • database_name – имя БД, которую нужно экспортировать;
  • data-dump.sql – файл в текущем каталоге, в который будут экспортированы данные.

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

Файл дампа MySQL должен начинаться примерно так:

-- MySQL dump 10.13 Distrib 5.7.16, for Linux (x86_64)
--
-- Host: localhost Database: database_name
-- ------------------------------------------------------
-- Server version 5.7.16-0ubuntu0.16.04.1

Если во время экспорта данных произошла ошибка, утилита mysqldump сообщит вам о ней.

Импорт данных

Чтобы импортировать дамп, нужно создать новую БД MySQL или MariaDB, в которую будут перемещены данные из дампа.

Войдите как root или другой пользователь с расширенными привилегиями.

Эта команда откроет командную оболочку MySQL. Создайте новую БД, например, new_database.

CREATE DATABASE new_database;

На экране появится вывод, подтверждающий, что БД была создана:

Query OK, 1 row affected (0.00 sec)

Закройте оболочку MySQL (CTRL+D). С помощью обычной командной строки импортируйте дамп:

Читайте также:  Alt linux настройка dns сервера

mysql -u username -p new_database < data-dump.sql

  • username – имя пользователя, у которого есть доступ к БД.
  • newdatabase – имя новой БД.
  • data-dump.sql – имя дампа, который нужно импортировать.

В случае успешного выполнения команды вывод не отображается на экране. Если во время выполнения возникла какая-либо ошибка, mysql выведет их в терминал. Чтобы убедиться, что данные импортированы успешно, войдите в оболочку MySQL и проверьте БД. Для этого можно использовать:

USE new_database;
SHOW TABLES;

Заключение

Теперь вы умеете перемещать данные MySQL и MariaDB с помощью дампа. Утилита mysqldump имеет множество дополнительных параметров, при помощи которых можно настраивать дампы; подробнее об этом – в официальной документации mysqldump.

Источник

Как импортировать и экспортировать базы данных в MySQL и MariaDB

Эта статья в первую очередь рассчитана на новичков в администрировании, для тех, кто хочет научиться самостоятельно производить импорт и экспорт баз данных. Зачем вам может это понадобиться? Допустим, вы хотите самостоятельно сделать бэкап, чтобы в дальнейшем при необходимости восстановить определенную версию базы данных. Или вам нужно сделать перенос сайта на другой сервер либо в другую среду разработки. В общем, причин может быть множество, поэтому понимание того, как сначала сделать, а потом импортировать резервную копию, лишним не будет.

Для того, чтобы выполнить все дальнейшие действия, у вас должны быть:

а) доступ к серверу на базе Linux, на котором работает MySQL/MariaDB;
б) название базы данных и данные доступа к ней.

Используем консоль

Для того, чтобы произвести экспорт, мы будем использовать утилиту mysqldump. При помощи нее осуществляется работа с текстовыми файлами базы данных. Итак, вы должны знать название базы данных, а также иметь доступ (логин и пароль) к аккаунту, который имеет, по крайней мере, доступ read only (только для чтения).

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

mysqldump -u имя_пользователя -p название_БД > data-dump.sql

в которой нужно ввести имя пользователя с необходимым доступом, название нужной вам базы данных, а также data-dump.sql – файл в текущей директории, куда будут сохранены данные.

После ввода этой команды вы не увидите никакого вывода на экране, однако вы можете проверить содержимое файла data-dump.sql для того, чтобы убедиться, что теперь он является резервной копией вашей базы данных.

Содержимое файла должно выглядеть примерно так, как показано ниже. В документе будет указано название базы данных (в данном случае MySQL), ее название и другие данные.

-- MySQL dump 10.13 Distrib 5.7.16, for Linux (x86_64) -- -- Host: localhost Database: database_name -- ------------------------------------------------------ -- Server version 5.7.16-0ubuntu0.16.04.1

Если во время процесса экспорта будут какие-нибудь ошибки, утилита mysqldump выведет на экран сообщение о них.

Для того, чтобы импортировать существующий файл в MySQL или MariaDB, вам нужно начать с создания новой базы данных. Именно в нее вы затем загрузите содержимое резервной копии.

Сначала подключитесь к базе данных в качестве root-пользователя (либо другого пользователя, который сможет создать новую базу данных):

После того, как вы подключились к консоли MySQL, создайте новую базу данных (в данном случае new_database):

mysql> CREATE DATABASE new_database;

После этого на экране появился следующий вывод:

Output Query OK, 1 row affected (0.00 sec)

Теперь для выхода из консоли MySQL нажмите CTRL+D. Далее переходите к самому импорту. Сделать это можно, введя вот такую команду:

$ mysql -u имя_пользователя -p new_database < data-dump.sql

Команда очень похожа на команду экспорта, вам нужно ввести имя пользователя, название новой базы данных, куда вы будете импортировать данные (в качестве примера new_database), и название самого файла, который вы собираетесь импортировать (data-dump.sql).

Читайте также:  Linux nvidia нет разрешения

Если команда выполнена корректно, то никакого вывода на экране вы не увидите; на экране могут отобразиться только сообщения о каких-то ошибках. Как и в случае с экспортом, проверить, точно ли все прошло успешно, вы можете путем подключения к MySQL и просмотра данных. Сделать это можно, к примеру, используя команды USE и SHOW. Команда use определяет, какая база данных будет использоваться в дальнейших запросах. Введите:

И тогда при всех последующих запросах в данном сеансе автоматически будет использоваться эта база данных. Данную установку можно изменить, использовав команду use с названием другой базы данных.

Что касается команды show, то она используется для того, чтобы посмотреть информацию о самих базах данных, о таблицах, столбцах, которые они содержат, а также о состоянии сервера.

Допустим, нам нужно посмотреть, список таблиц в базе. Для этого вводим:

Хотите увидеть список столбцов в какой-то определенной таблице? Используйте команду SHOW COLUMNS FROM и название нужно вам таблицы:

SHOW COLUMNS FROM название_таблицы

Статистику по работе сервера можно получить в ответ на команду:

Используем phpMyAdmin

Экспорт и импорт баз данных можно также делать через phpMyAdmin. В общем и целом, пожалуй, это даже более простой путь, чем использование консоли.

Зайдите в phpMyAdmin и выберите базу данных, с которых вы хотите работать.

Далее выберите вкладку «Экспорт» и, в зависимости от своих предпочтений, быстрый или обычный метод экспорта. Второй подойдет для тех, кто хочет самостоятельно выставить все настройки.

Как импортировать и экспортировать базы данных в MySQL и MariaDB

После внесения нужных изменений нажмите «Вперед» и выберите, куда хотите поместить созданный файл. Все, экспорт базы данных был успешно выполнен.

Выполнить импорт базы данных тоже совсем несложно. Как и в предыдущем случае, в списке слева выберите нужную вам базу данных, а затем перейдите во вкладку «Импорт».

Импорт баз данных

Выберите файл для импорта на вашем компьютере и проверьте настройки. Скорее всего, они подойдут для импортирования вашего файла, но при желании их можно изменить. Нажмите кнопку «Вперед» - и будет выполнен импорт файла. Вы увидите надпись вроде такой:

Импорт успешно завершён, выполнено 32 запроса.

Ниже в красной рамке могут идти сообщения о возникших ошибках (например, о дублировании).

В списке слева вы можете выбрать базу данных, с которой работали, и посмотреть имеющиеся файлы, а также их содержимое (и изменить их).

Заключение

Выбор подходящего метода экспорта и импорта баз данных зависит только от вас и ваших предпочтений – кому-то проще работать в консоли, а для кого-то понятнее phpMyAdmin. Главное, нужно регулярно делать бэкапы, в том числе и ваших баз данных.

Кстати, полезную информацию о базах данных я также нашел в Справочном центре Timeweb.

Источник

Оцените статью
Adblock
detector