powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / востановление таблицы в БД
11 сообщений из 11, страница 1 из 1
востановление таблицы в БД
    #38334885
forward12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.
Иногда из БД исчезает таблица, иногда парочку. Сильно прожорливые скрипты, иногда БД не вытягивает все запросы и старая таблица удаляется а новая не успевает появится. И так и не появляется.
Вобщем написал скрипт и повешал его на крон.
ЧТобы скрипт востанавливал таблицу.
Но получилась другая проблема, скрипт в таблицу добавляет дубликаты. Т.е. каждый день вставляет одно и тоже.
Хотя внутри скрипта стоит проверка содержимого таблицы.
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
	try {
	$sth = $db->prepare("select count(cod) from mytable"); 
	
	$sth->execute();
	$row = $sth->fetch();
	$x=$row[0];
	echo $x;


} catch (Exception $e) {
    echo $e->getMessage(); //выведет либо сообщение об ошибке подключения, либо об ошибке выбора

}

if (strlen($x)>0) die();
if (strlen($x)==0)
				{
				echo "no table<br>";
	$sth = $db->prepare("CREATE TABLE `mytable` ")
	$sth->execute();
	//################################################			
	$sth = $db->prepare(" insert into mytable");
	$sth->execute();
	echo "<br>data inserted<br>";
				}


Вот код, мускульный запросы упрощенны
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38334902
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
forward12Иногда из БД исчезает таблица, иногда парочку. Сильно прожорливые скрипты, иногда БД не вытягивает все запросы и старая таблица удаляется а новая не успевает появится.Эт с чего вдруг таблицы исчезают и с чего должны появиться?
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38334997
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сама по себе чтоль исчезает? Бывает конечно, таблицы в mysql ломаются сами по себе, но REPAIR TABLE всегда помогал, а чтоб сама исчезла и появилась - не видел :)
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38335160
forward12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там скрипт работает, который парочку таблиц удаляет каждый день. А потом создает их заново на основе свежих данных.
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38335212
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А никак нельзя сделать очистку таблиц вместо удаления?

PS: Движок MyISAM? Могу предположить что таблицы очень большие, запрос на удаление проходит, но файловая система еще не успела удалить файлы к моменту создания таблиц. Ну и возникает ошибка при создании. Возможно, пауза в несколько секунд поможет.

PPS: Может быть будет более правильным перенести топик в профильный форум по MySQL?
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38335419
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
forward12Там скрипт работает, который парочку таблиц удаляет каждый день. А потом создает их заново на основе свежих данных.
Может будет проще переименовать старые таблицы, создать новые и залить данные, в конце скрипта удалить все ненужные таблицы.
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38336115
forward12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleА никак нельзя сделать очистку таблиц вместо удаления?

PS: Движок MyISAM? Могу предположить что таблицы очень большие, запрос на удаление проходит, но файловая система еще не успела удалить файлы к моменту создания таблиц. Ну и возникает ошибка при создании. Возможно, пауза в несколько секунд поможет.

PPS: Может быть будет более правильным перенести топик в профильный форум по MySQL?
Движек MyISAM, таблицы действительно большие. В общей сложности во всех таблицах 2 ГБ.
Файловая система действительно глючит. Просто не хочу оригинальный скрипт на перл переписовать. Там кода достаточно много.
Вот и создал свой компактный пхп скрипт чтобы постанавливать отдельную таблицу.
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38336194
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
forward12Просто не хочу оригинальный скрипт на перл переписовать. Там кода достаточно много.Проблемно заменить два запроса на один или добавить строчку с паузой?
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38336201
INSERT IGNORE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторНо получилась другая проблема, скрипт в таблицу добавляет дубликаты. Т.е. каждый день вставляет одно и тоже.
http://ekimoff.ru/214/

P.S. хотя, рекомендую прислушаться к предыдущим советам!
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38336202
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя, может быть, два запроса на два - очистка таблицы и оптимизация
...
Рейтинг: 0 / 0
востановление таблицы в БД
    #38338889
forward12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем за ответы. Уже 4 дня подряд скрипт работает нормально.
как я понял нагрузка на сервер упала или еще какие факторы повлияли на работу БД. Теперь колизий уже нет.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / востановление таблицы в БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]