Домой Решение проблем Как экспортировать (скачивать) и импортировать (загружать) базы данных MySQL больших размеров? Импорт баз данных mysql.

Как экспортировать (скачивать) и импортировать (загружать) базы данных MySQL больших размеров? Импорт баз данных mysql.

Данная процедура подразумевает перенос данных из одной базы данных (А) в другую (Б). Как правило база данных Б находится на хостинге (или на Денвере), а база данных А, находится на компьютере пользователя и представляет из себя файл с расширением sql. У базы данных А есть еще одно название - Dump.

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

Импорт базы данных MySQL с помощью SSH

Этот способ используется достаточно редко, но мы его опишем. Для начала залейте БД из которой будет производится импорт на сервер хостинг-провайдера, где хранятся файлы вашего сайта. Далее для импорта базы данных используется команда:

mysql -uUSERNAME -pUSERPASSWORD DBNAME < DUMPFILENAME.sql

mysql --user=USERNAME --password=USERPASSWORD DBNAME < DUMPFILENAME.sql

Вместо слов написанных большими буквами подставляем:
USERNAME - имя пользователя базы данных, например uhosting_databaseuser;

USERPASSWORD - пароль пользователя БД, например Rjkweuik12;

DBNAME - имя базы данных, в которую будет производится импорт, например uhosting_databasename

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

При переносе сайта с локального сервера на хостинг, одной из обязательных процедур является экспорт/импорт БД (базы данных). Поэтому, в этой статье я попытаюсь, как можно более подробно описать процесс экспорта и импорта базы данных с локального сервера, то есть с веб-интерфейса PHPMyAdmin версии 3.2.3 на хостинг.

Первое, что нужно сделать, это запустить локальный сервер, в данном случает это Denwer. После запуска Denwer нужно открыть браузер и в браузерной строке прописать: «http://localhost/tools/phpmyadmin», после чего перед Вами откроется окно (Рис.1) с созданными ранее базами данных .

Рис.1

Далее нужно выбрать базу данных, которую мы будем экспортировать, в моем случае это БД с названием Mybd. Базу данных можно выбрать, кликнув по ней в левой части окна браузера, где написано «Please select a database» (Рис.2) .


Рис.2

После выбора нужной базы данных, откроется окно со структурой БД. В верхнем меню есть пункт «Export» с помощью которого, мы будем экспортировать БД на компьютер, чтобы потом импортировать её на хостинг. И так, переходим по пункту «Export» (Рис.3) .


Рис.3

В открывшемся окне нужно произвести некоторые измерения (Рис.4) , а именно: в блоке «Export» нужно выбрать все таблицы базы данных, нажав по пункту «Select All» и поставить галочку напротив пункта SQL , этот пункт отвечает за тип файла, который будет экспортирован. Также, необходимо поставить галочку напротив пункта «Save as file» , который обеспечит сохранение БД в файле. Остальные настройки менять не нужно, просто нажимаем кнопку «Go» .

Рис.4

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

Также, нужно сменить кодировку файла на UTF-8 без BOM, для изменения кодировки я использую текстовый редактор Notepad++ (Скачать ) . С помощью этой программы открываете файл базы данных и в меню «Кодировка» выбираете «Преобразовать в UTF-8 без BOM» (Рис.5) , после чего сохраняем и закрываем.


Рис.5

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

Если ваш дамп не намного превышает допустимый лимит, можно его разбить на несколько частей и импортировать в несколько заходов. Это оправдано если, к примеру, лимит составляет 2Мб, а ваша база имеет размер 5-10 Мб. Понятно, что «резать» базу весом 100Мб на 50 частей - процесс довольно трудоемкий и затратный в плане временнЫх ресурсов.

Существует несколько вариантов решения этой задачи.

Редактируем конфиг веб-сервера

На VDS/VPS особых проблем с этим не наблюдается, достаточно лишь подкорректировать конфиг. А именно, в php.ini увеличить допустимые максимальные значения для загружаемых на сервер файлов, максимальный размер для файлов передаваемых методом POST:

Post_max_size = 2000M upload_max_filesize = 2000M

Кроме этого, если ваша БД очень большая, следует увеличить максимально допустимое время выполнения скрипта.

Max_execution_time = 32000 max_input_time = 32000

И на всякий случай можно увеличить размер допустимого объема оперативной памяти:

Memory_limit = 512M

После внесения изменений, обязательно перезагрузите веб-сервер.

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

Sypex Dumper

Можно воспользоваться сторонним софтом. И первое приложение на которое стоит обратить внимание - это Sypex Dumper .

Впервые воспользовавшись им много лет назад и оценив все его возможности и достоинства, я могу смело повесить ему ярлык «Must Have». Sypex Dumper - серверное приложение на PHP не требующее установки. Его достаточно скопировать, к примеру, в корень вашего сайта в директорию sxd и вызвать его в браузере: http://Ваш_Сайт/sxd/. Стоит заметить, что предварительно в директорию backup следует поместить дамп вашей базы данных. После инициализации скрипта вы увидите панель авторизации для подключения к базе. Вводим свой логин и пароль. Хост и порт - опционально, только если они специфические.

После авторизации можно перейти непосредственно к иморту БД. В поле «База данных» будет выбрана БД к которой вы подключены, а в поле «Файл» вы увидите ранее загруженный вами дамп в директорию Backup.

Для большинства случаев никакие дополнительные настройки больше не нужны и можно смело запускать импорт, нажав на кнопку «Выполнить». Импорт, в зависимости от размера БД и вашей скорости соединения с Интернет может занять некоторое время. Во время импорта вы можете видеть какие именно таблицы импортируются в данный момент в базу. По завершению работы скрипта вы увидите лог выполнения. Он выглядит, примерно, так:

Вот, собственно, и все - база импортирована!

Консоль

Импорт через консоль рассматривать не будем. Я думаю, люди, пользующиеся консолью без меня знают как импортировать любую БД. А простым пользователям без специальной подготовки лучше туда не соваться. Так как выполнение некоторых команд может привести к серьезным последствиям, вплоть до полного падения сервера.

В заключение

Я не берусь утверждать, что Sydex Dumper - это единственное и правильное решение. Существуют и другие более элегантные способы, которые требуют от пользователя определенных знаний и соответствующие доступы к настройках сервера.

Но в условиях виртуального хостинга, Sydex Dumper, безусловно, будет вашим незаменимым помощником.

Подпишитесь на мой телеграм и первыми получайте новые материалы, в том числе которых нет на сайте.

В данной статье рассмотрим два вопроса - как можно осуществить импорт баз данных и как решить проблему с импортом больших баз данных с помощью изменений настроек в php.ini.

Как известно, резервное копирование данных - это гарантия того, что вы сможете восстановить свой сайт, если вдруг, в силу каких либо причин, работа сайта будет нарушена. Как восстановить сайт из резервной копии? Существует несколько способов, мы рассмотрим как можно осуществить импорт базы данных mysql в phpMyAdmin. Прежде чем начинать процесс импорта базы данных, нужно из базы данных, куда вы собираетесь импортировать файлы, удалить все таблицы.

Чтобы удалить таблицы, войдите на главную страницу phpMyAdmin и выполните следующие действия:


2 - нажмите Отметить все;
3 - выберите в выпадающем меню Удалить и нажмите ОК,

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

1 - выберите нужную базу данных;
2 - откройте вкладку Импорт в верхнем меню;
3 - через Обзор найдите резервную копию с базой данных и нажмите ОК.

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

Импорт больших баз данных mysql

Часто вебмастера сталкиваются с проблемой импорта больших баз данных mysql. Проблема связана с тем, что в PHPMyAdmin загрузка дампа базы данных ограничивается размером закачиваемого файла, который по умолчанию не должен превышать 2MB (2,048 КБ). При попытке загрузить дамп большой базы данных появляется сообщение об ошибке: «Вероятно, размер загружаемого файла слишком велик… » и т.д.

Рассмотрим один из способов импорта дампа большой базы данных. Предел размера импортируемого файла определяется конфигурацией PHP. Настройки конфигурации PHP прописаны в файле php.ini. Значит, для импорта больших баз данных нам потребуется в файле конфигурации php.ini изменить максимальный размер загружаемых файлов.

Где находится файл php.ini? Путь к файлу php.ini вы можете вычислить следующим образом:

  • Создайте файл info.php и поместите в него следующий код ;
  • Загрузите созданный файл в корневую папку сайта (www, public_html);
  • В адресную строку браузера введите адрес http://your_site/info.php;
  • В открывшемся окне найдите Loaded Configuration File, где и будет указан путь к файлу;

Для импорта большой базы данных mysql нужно изменить директивы php.ini в PHPMyAdmin.

Файл php.ini найден, теперь осталось его отредактировать, а точнее, изменить несколько директив в файле таким образом, как показано ниже:

Максимальное время (сек) для полной загрузки скрипта:
max_execution_time = 60
Максимальное время (сек) заданное для получения скриптом всех данных:
max_input_time = 90
Максимальный объем памяти, который разрешается использовать скрипту:
memory_limit = 128M
Максимальный допустимый размер загружаемых файлов:
upload_max_filesize = 200M
Максимальный размер передаваемых данных, который будет принимать PHP:
post_max_size = 180M

Изменив вышеперечисленные директивы в php.ini, мы получили возможность импортировать через PHPMyAdmin базы данных объемом до 180 М.

Для импорта дампа базы данных вы можете также воспользоваться бесплатной версией программы Sypex Dumper. Дампер оптимизирован для максимальной скорости работы, а также работы с базами данных объёмом около 800 мегабайт.

Когда Вы только начинаете создавать сайт, Вы его делаете, как правило, на локальном сервере. Когда он будет готов, его нужно будет перемещать на удалённый сервер. Скопировать файлы - это несложно, а вот как импортировать базу данных на удалённый сервер? Как раз о том, как сделать импорт базы данных в PHPMyAdmin , я Вам и объясню в этой статье.

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

Шаг 1

Первым делом нужно экспортировать базу данных с текущего местонахождения (в частности, локального сервера). Наша цель получить SQL-запрос нашей базы данных. Для этого надо сделать следующее:

Шаг 2

Вторым и последним шагом является выполнение SQL-запроса , который Вы скопировали, в PHPMyAdmin , который находится на сервере, куда Вам надо импортировать базу данных . Для этого выполните следующие действия:

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

Как видите, процесс экспортирования и импортирования базы данных в PHPMyAdmin упрощён до минимума, поэтому проблем с этим не будет.

Напоследок, хочется дать Вам ещё один совет. Дело в том, что очень часто бывает ситуация, когда нужно импортировать не всю базу данных , а, например, только одну таблицу. Тогда принцип абсолютно тот же самый, только при экспортировании Вам надо выбрать не только базу данных, но и таблицу для экспорта. А затем вновь в верхнем меню нажать на "Экспорт ". Дальше всё аналогично импорту баз данных .

Новое на сайте

>

Самое популярное