Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Запросы, создающие и считывающие дамп-файл MySQL
 
 автор: amigo62   (02.12.2007 в 20:22)   письмо автору
 
 

Здравствуйте! Форумчане, нужна ваша подсказка:) Знакомый попросил написать скрипт, который запишет содержимое БД в файл и восстановит его на другом сервере, т.к. ребята переносят форум и присутствует какая-то несовместимость админ-панелей на хостах. Я знаю, что это выполняется парой команд MySQL, но не знаю, какими, и не встречал их в доступной мне документации. Прошу, подскажите:)

   
 
 автор: Faraon   (02.12.2007 в 21:32)   письмо автору
 
   для: amigo62   (02.12.2007 в 20:22)
 

А У вас есть PhpMyadmin? Можно и подругому в зависимости какие средства достуны.
Если есть PhpMyAdmin то можно через него.

   
 
 автор: Trianon   (02.12.2007 в 22:44)   письмо автору
 
   для: amigo62   (02.12.2007 в 20:22)
 

помимо phpMyAdmin дамп формируется вызовом утилиты mysqldump . Если, конечно, имеется доступ к исполнению команд у хостера, или (что совсем уж маловероятно) прямой доступ к серверу БД из интернета.

Описание этой утилиты доступно на сайте разработчика http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html ,
или российском сайте поддержки http://www.mysql.ru/docs/man/mysqldump.html

Кроме того есть много php-средств формирования дампов сторонних разработчиков.
Sypex dumper к примеру.

Утилитой, которая считывала и исполняла бы дамп, является command line client по имени mysql.

   
 
 автор: amigo62   (03.12.2007 в 14:30)   письмо автору
 
   для: Trianon   (02.12.2007 в 22:44)
 

Если есть PhpMyAdmin то можно через него.
А как через phpMyAdmin восстановить базу из дампа, и куда он кладет искомый файл?
дамп формируется вызовом утилиты mysqldump
Значит, все скрипты, переносящие базу в файле, не отправляют никаких спецзапросов, а работают с исполнением утилиты mysqldum, или я чего-то не понял:)?

   
 
 автор: ddhvvn   (03.12.2007 в 14:39)   письмо автору
 
   для: amigo62   (03.12.2007 в 14:30)
 

>А как через phpMyAdmin восстановить базу из дампа, и куда он кладет искомый файл?
Просто нужно выбрать "Импорт" и указать файл с дампом

>Значит, все скрипты, переносящие базу в файле, не отправляют никаких спецзапросов, а работают с исполнением утилиты mysqldum, или я чего-то не понял:)?
Да нет никаких спецзапросов, но и названную утилиту они вряд ли используют. Просто скрипт рекурсивно, так сказать, делает запрос к БД и записывает результаты в файл.

   
 
 автор: amigo62   (03.12.2007 в 17:31)   письмо автору
 
   для: ddhvvn   (03.12.2007 в 14:39)
 

Спасибо, все получилось. Просто у меня на локальном MyAdmin'e нет функции ИМПОРТ=)

   
 
 автор: amigo62   (04.12.2007 в 23:18)   письмо автору
 
   для: amigo62   (03.12.2007 в 17:31)
 

Help me!!:( слил дамп, а он весит 6 с половиной метров. PHPMyAdmin его не принимает. Что теперь с ним делать?

   
 
 автор: Trianon   (04.12.2007 в 23:22)   письмо автору
 
   для: amigo62   (04.12.2007 в 23:18)
 

phpMyAdmin нестарых версий позволяет снять дамп большой таблицы по частям в несколько заходов.

   
 
 автор: Faraon   (04.12.2007 в 23:52)   письмо автору
 
   для: Trianon   (04.12.2007 в 23:22)
 

Может это и не понадобится, смотря просто это локальная машина или хостинг

   
 
 автор: Trianon   (05.12.2007 в 00:15)   письмо автору
 
   для: Faraon   (04.12.2007 в 23:52)
 

внимательно читаем 02.12.2007 в 20:22
Это хостинГИ.

   
 
 автор: Faraon   (05.12.2007 в 00:23)   письмо автору
 
   для: Trianon   (05.12.2007 в 00:15)
 

Не надо кричать, уже ночь, вдруг разбудите кого. ;)

   
 
 автор: amigo62   (05.12.2007 в 10:45)   письмо автору
 
   для: Faraon   (05.12.2007 в 00:23)
 

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

   
 
 автор: Trianon   (05.12.2007 в 11:47)   письмо автору
 
   для: amigo62   (05.12.2007 в 10:45)
 


Дамп [nnn] записей начиная с [mmm] 

сразу под панелью "данные" окна экспорта конкретной таблицы

   
 
 автор: amigo62   (05.12.2007 в 14:49)   письмо автору
 
   для: Trianon   (05.12.2007 в 11:47)
 

А можно вручную разбить то что уже слито? Там 6 мегабайт, и качать приходится через GPRS (наверное, сами понимаете, что это значит=))

   
 
 автор: Faraon   (05.12.2007 в 14:56)   письмо автору
 
   для: amigo62   (05.12.2007 в 14:49)
 

Делайте дамп для каждой таблицы, или один дамп для нескольких таблиц

   
 
 автор: Thrasher   (05.12.2007 в 15:27)   письмо автору
 
   для: amigo62   (05.12.2007 в 14:49)
 

Можно. Если есть локальный phpMyAdmin разверните на нем базу из слитого дампа и сделайте новый дамп с разбивкой на части. Или вручную порежьте текстовый файл дампа на несколько файлов.

   
 
 автор: Trianon   (05.12.2007 в 15:44)   письмо автору
 
   для: amigo62   (05.12.2007 в 14:49)
 

Любым приличным текстовым редактором порезать дамп не составит труда.
FAR справится однозначно.

   
 
 автор: amigo62   (06.12.2007 в 12:59)   письмо автору
 
   для: Trianon   (05.12.2007 в 15:44)
 

Спасибо, так и сделаю! Только хочу уточнить детали: 1) каков максимальный размер одного фрагмента; 2) в тексте дампа имеются SQL- комментарии, phpMyAdmin использует их как некие инструкции при импорте, или можно их смело выкинуть, дабы уменьшить трафик (и не нужны ли какие-либо метки в начале иили в конце фрагмента)?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования