|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
Здравствуйте. у дурачков новый вопрос. Есть база работающая под Sybase SQL Anywhere 5.5.04. В течение нескольких лет на базу ставятся обновления (процедуры, фунции и т.п.) + идет дофига записей (абстрактная касса в продуктовом магазине). База раздувается до 400 и более мегабайт. Как правильно удалить записи из базы (чеки, их содержание...) не трогая структуру самой базы (остались функции, триггеры и т.п.) ? Т.е. простой запрос delete from "DBA"."TableName" данные удаляет, но размер базы как был большим, так и остается. Сделать unload base нет возможности, по причине того, что не известно какие вообще обновления накатывались и когда. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2012, 11:47 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
Kr0t_byЗдравствуйте. у дурачков новый вопрос. Есть база работающая под Sybase SQL Anywhere 5.5.04. В течение нескольких лет на базу ставятся обновления (процедуры, фунции и т.п.) + идет дофига записей (абстрактная касса в продуктовом магазине). База раздувается до 400 и более мегабайт. Как правильно удалить записи из базы (чеки, их содержание...) не трогая структуру самой базы (остались функции, триггеры и т.п.) ? Т.е. простой запрос delete from "DBA"."TableName" данные удаляет, но размер базы как был большим, так и остается. Сделать unload base нет возможности, по причине того, что не известно какие вообще обновления накатывались и когда. Дык утилита unload позволяет выгружать не только данные, но и саму структуру, можно как вместе, а можно и отдельно. Кроме того, можно с ее помощью просто выгрузить не трогая боевую базу. Непонятна сама постановка вопроса на тему обновлений, хотелось бы почетче узнать, что автор имел ввиду... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2012, 13:46 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
18.12.2012 12:47, Kr0t_by пишет: > Здравствуйте. у дурачков новый вопрос. Когда же вас, наконец, выпрут и возьмут нормальных спецов... > Есть база работающая под Sybase SQL Anywhere 5.5.04. > В течение нескольких лет на базу ставятся обновления (процедуры, фунции > и т.п.) + идет дофига записей (абстрактная касса в продуктовом > магазине). База раздувается до 400 и более мегабайт. А зачем эти экзерсисы при нынешних размерах жёстких дисков? Уже 10 лет назад БД такого размера не впечатляла. > Как правильно удалить записи из базы (чеки, их содержание...) не трогая > структуру самой базы (остались функции, триггеры и т.п.) ? Unload-reload. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2012, 15:05 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
Sergey Orlov, обновления, это sql файлы, с помощью которых вносятся изменения в БД (сделать в столбце А таблицы Б длинну поля такой-то, добавить в БД процедуру такую-то). а про unload что-то я и вправду сморозил. ведь ни кто не мешает мне сделать Unload strucure only, а потом взять ЛЮБУЮ пустую базу и в неё уже залить эту структуру. (т.е. если в пустой базе поле=20 символов, а в исходной рабочей=10, то после перезаливки у меня будет таки 10 символов - свеже залитые данные потрут исходные). спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2012, 15:10 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
upd. не прокатило. размер поля остался как в пустой базе. в общем будем пытаться шевелить межушным нервом. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2012, 15:44 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
Kr0t_byupd. не прокатило. размер поля остался как в пустой базе. в общем будем пытаться шевелить межушным нервом. Вы транзакции то закрыли? После применения sql-скрипта, если посмотреть через централ длина поля поменялась или нет... Все равно не могу понять, у меня к примеру все хоккей... Что-то вы делаете не так или не то... И еще в моем понимании, пустая база это база без структуры и данных... Если вы в пустую базу зальете структура, то это будет база без данных, а если вы туда будете заливать данные через input/load без применения alter ... либо delete/create, то структура не изменится... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2012, 16:31 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
Sergey Orlov, буду пытаться понять что я делаю не так. спасибо. скорее всего проблема была в моем непонимании понятия "пустая база". для меня это была база без данных, но со структурой. через утилиту создал просто новую базу, в неё загрузил структуру. всё залилось (правильный размер поля и т.п). хоть и с руганью (но это уже детали). ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2012, 16:47 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
18.12.2012 17:47, Kr0t_by пишет: > скорее всего проблема была в моем непонимании понятия "пустая база". для > меня это была база без данных, но со структурой. Нужно ввести понятия "совсем пустая база" (то, что делает DBINIT) и "не совсем пустая база" (со структурой, но без данных) :). Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2012, 11:13 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
Не понимаю понятия "пустая база данных"... БД никогда не "пустая". Там есть триггеры, внутренние процедуры и т.д. Я лично применяю в такой ситуации термин "чистая" БД. Т.е. БД без пользовательских данных (наполнения пользовательских таблиц). Лучший способ перестройки БД (очистки): 1. unload. 2. затем ручная корректировка (очистка) содержимого нужных таблиц (файлов .dat). Этот пункт следует выполнять очень аккуратно. 3. Потом dbinit и reload. Все вместе это называется rebuild... Очистку можно и через delete делать, но не всегда это надежно, потому что можно просто забыть почистить некоторые таблицы, а то и триггеры могут не дать этого сделать нормально. Чисто ИМХО (из опыта более 10-летней работы с SA 5.5)... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2012, 14:53 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
d7i, в принципе п 1-3 и делаются. думал, что проще как-то тупо через delete сделать. Но у меня после delete from размер базы наоборот увеличивается. (взял таблицу, грохнул 50 тыс записей, а размер + n мегабайт стал) но будем делать по правильному, а не как хочется. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2012, 11:56 |
|
как нормально почистить базу в ASA 5.5
|
|||
---|---|---|---|
#18+
Kr0t_by, Вы, главное п.2 сделайте вручную. Я всегда так готовлю "чистую" БД. Для редактирования файлов .dat использую Far (его внутренний редактор). Немножко утомительно (если таблиц много), но надежно. Если нужна пустая таблица, просто удаляю соотв. файл .dat и создаю пустой (нулевой длины) новый. Все редактировние делается довольно быстро, если предварительно выписать из файла reload.sql номера файлов, подлежащих редактированию (очистке). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2012, 18:37 |
|
|
start [/forum/topic.php?fid=55&fpage=13&tid=2010027]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
74ms |
get topic data: |
14ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 269ms |
total: | 453ms |
0 / 0 |