Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> дамп большой базы 
:(
    Опции темы
PROme2
Дата 28.8.2006, 07:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 4.1.2006

Репутация: нет
Всего: нет



нужно сделать дамп базы форума, весит 400мб, доступ к серверу с бд разрешен только с серверов хостера, а там стоит ограничение работы скрипта в 30 секунд... что можно сделать? может у кого есть какой скрипт, который по частям за несколько раз ее обработает и уложит в архивчик(и)? или может предложите иные пути решения проблемы?
PM MAIL   Вверх
rMaveric
Дата 28.8.2006, 08:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 18.7.2003

Репутация: нет
Всего: 6



Лучее из того что видел dumper.php
Не совсем кусками, но таблицами покрайнем мере грабить умеет.

А так в общем можешь сам написать. не такая уж и сложная задача.


--------------------
Моя благодарность не будет иметь границ. в определенных рамках конечно ;)
---
Веду IT блог
PM MAIL WWW ICQ   Вверх
Vaulter
Дата 28.8.2006, 08:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 3
Всего: 22



PROme2, SELECT INTO OUTFILE ? 


--------------------
PM MAIL WWW ICQ   Вверх
Mal Hack
Дата 28.8.2006, 08:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Дамп делаь надо средствами MySQL.
PM ICQ   Вверх
Bikutoru
Дата 28.8.2006, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлекающийся
**


Профиль
Группа: Участник
Сообщений: 522
Регистрация: 24.5.2005
Где: Москва

Репутация: 2
Всего: 22



А есть ли доступ к серверу, с которого доступна база, через SSH? Если да, то задача сводится к 
Код

mysqldump -uuser -ppassword Database

Если доступа нет, то становится ненамного сложнее
Код

<?php

system('mysqldump -uuser -ppassword Database > dumpfile.sql');

?>

Если это не укладывается в 30 секунд, то можноразбить дамп на несколько скриптов вида:
Код

<?php

system('mysqldump -uuser -ppassword Database Table1 Table2 Table3 > dumpfile-1.sql');

?>

Если таблиц много и не охота возиться с кучей скриптов, то вместо "тупого" "Table1 Table2 Table3" можно использовать
Код

SHOW TABLES FROM Database;

с обработкой его результатов...


Это сообщение отредактировал(а) Bikutoru - 28.8.2006, 16:41


--------------------
Человек, словно в зеркале мир — многолик, 
Он ничтожен — и он же безмерно велик!
Омар Хайям
PM   Вверх
PROme2
Дата 28.8.2006, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 4.1.2006

Репутация: нет
Всего: нет



Цитата(Bikutoru @ 28.8.2006,  16:40)
А есть ли доступ к серверу, с которого доступна база, через SSH? Если да, то задача сводится к 
Код

mysqldump -uuser -ppassword Database

SSH есть
можно подробней, плиз
Код

mysqldump -uuser -ppassword Database

куда будет помещен после этого дамп и как его можно будет скачать?
эта команда не удалит БД, просто сделает дамп?
PM MAIL   Вверх
-=Ustas=-
Дата 29.8.2006, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 17
Всего: 69



PROme2, дамп будет помещен в твою домашнюю директорию.
Правильнее будет такой синтаксис:
Код

mysqldump -u user -p your_database -r your_file.sql -Q --add-drop-table


И всё smile


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
Acraft
Дата 7.9.2006, 12:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 69
Регистрация: 19.4.2005

Репутация: нет
Всего: 2



mysqldump -u root1 –pPaSsWoRd1 db_name1 | mysql -u root2 -pPaSsWorD2 --host=10.10.111.111 -C db_name2

Копирует без всяких дампов на диске с сервера 1 на сервер 2 (если есть доступ к консоли).
На сервере 2 должна быть создана пустая (имена таблиц не должны пересекаться с копируемыми) база db_name2.

Добавлено @ 12:15 
а еще посмотри вот эту темку, может поможет:
http://phpclub.ru/talk/showthread.php?s=&a...ighlight=Acraft

У меня написан этот скрипт, но без set_time_limit(0); он врядли сделает то что тебе нужно.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.1122 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.