DROP DATABASE можно ли востановить?

seosniks
На сайте с 13.08.2007
Offline
389
813

Хотел удлить таблицу, но каким то образом снес базу данных, жена своим пылесосом отвлекла.

База была на локальной машине.

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

Есть ли возможность вернуть базу? Резерва я не делал. Правда есть копия этой базы аж 3 экземпляра но там нет изменений за 2 дня

:(

jpg 86306.jpg
[umka]
На сайте с 25.05.2008
Offline
456
#1

Если у вас виндовс, попробуйте какими-нибудь прогами, типа undelete, восстановить файлы таблиц.

Если они ещё не успели перезаписаться.

Лог в помощь!
B
На сайте с 25.02.2009
Offline
68
#2

Если бы просто таблицы - то да, до вызова optimize table все записи сохраняются в таблице и есть какие то инструменты для востанавления средствами мускула, в случае бд не понятно: если мускул удалил файлы бд, то средствами файловой системы попытаться востановить файлы, либо еще как то, вобщем гемора выше крыши

Бесплатная CMS LitePublisher это блог, вики, тикет система, голосование (http://litepublisher.ru/) на высокой скорости с минимум памяти
seosniks
На сайте с 13.08.2007
Offline
389
#3

В общем востановил все заново.

Щас вот хочу понять как можно скачать файл до 20 мегабайт

с другого сайта себе в базу,

Скачать не проблема, проблема втом что идет нагрузка при скачивании.

Самый простой способ скачать

$r=fopen("$link",'r');

while($str=fgets($r,5024))

{

}

Но нагрузка большая выходит.

Подскажите пожалуйста можно ли скачать файл частями.

например по 1000 строк за раз.

[umka]
На сайте с 25.05.2008
Offline
456
#4

Нагрузка от скачивания 20-мб файла?! 😮

Не верю. Даже если скачивать чанками всего по 1 байту.

В любом случае, если врапер позволяет открывать url-ы, можно попробовать так:

copy('http://somesite.ru/dump.sql','dump.sql');

или

file_put_contents('dump.sql',file_get_contents('http://somesite.ru/dump.sql'));

B
На сайте с 25.02.2009
Offline
68
#5

20Мб... если сранный wordpress жрет от 32Мб на страницу, да и вообще то в шеле есть команда wget, и чтобы вообще не ело памяти то while eof fget - не рассматривался. Право дело, вначале не хтел отвечать - неужели вам трудно почитать учебник по php?

seosniks
На сайте с 13.08.2007
Offline
389
#6
blogolet:
20Мб... если сранный wordpress жрет от 32Мб на страницу, да и вообще то в шеле есть команда wget, и чтобы вообще не ело памяти то while eof fget - не рассматривался. Право дело, вначале не хтел отвечать - неужели вам трудно почитать учебник по php?

Gричем тут шелл? Мне надо с помощью PHP

залить файл в базу, вот как залить правильно, потому как файл содержит 50 000 строк.

каждую строку заливать insert это будет нагрузка.

insert into table_name (id, val) values(1,1);

insert into table_name (id, val) values(1,2);
insert into table_name (id, val) values(1,3);

Но можно выполнить один запрос:

i

nsert into table_name (id, val) values(1,1),(1,2),(1,3),…(1,n)
и так далее, но я почему то не смог так сделать. Выдает ошибку.

Я в sql не очень разбираюсь

$r=fopen("Ссылка на другой сайт  где берем файл",'r'); 

while($str=fgets($r,1024))
{
$sql= "INSERT INTO `d` VALUES ('', '$str', '', '', '', '', '', '')";
mysql_query($sql) or die(mysql_error());

}
fclose($r);

как сделать более правильно, чтоб массово загнать все строки

Вариант 10 скачать файл на свой хостинг, и затем залить в базу, либо сразу заливать.

Нагрузка именно из за INSERT

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий