|
|
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Раз пошла такая пьянка! Спасибо за предыдущую помощь. Есть еще вопросик. Обещаю не приставать полгода если удастся все сделать нормально :) База Ora8.0.5, Win NT 4 SP6a. Имеем один инстанс. в нем две схемы которые интересует не свалить. Одна работает сама по себе и кроме дикой сегментации на одном тейблспейсе (типа 16) ничего там страшного не видно.. и поскольку аппликуха которая ее юзает за деньги куплена и никаких инструкций не дано как за ней следить то и трогать я ее не буду. тем более что оракл она использует под хранение конфига - не более того (ну у каждого свои вкусы). Вторая - использует два тейблспейса - под таблицы и мелкие PK (primary keys) и одно под индексы. оба занимают по 3Г примерно. первый спейс фрагментирован на 14. кроме того индексы стали заметно тормозить.. почитав глупую книжку и умный форум (этот) пришел к выводу что проще сделать полный экспорт/импорт со сжатием, предварительно удалив большие индексы и создав их впоследствии вручную типа CREATE INDEX (их всего 5 или 6): Код: plaintext 1. Вопрос 1 Достаточно этого что бы освежить статистику индексов и убрать фрагментацию? [мне нужны разумные изменения в базе при 100% надежности операций - т.к. я не админ и админа у нас нет и не будет и базу нельзя останавливать - я и так еду в 2ч ночи что бы этой х. заниматься и если что то пойдет не так - я не смогу ничего сделать т.к. понятия не имею как оно работает] Не произойдет ли какой то потери данных или юзеров или прав при exactly тех командах ? Т.е. после полной остановки использования оракла из вне и выдаче тех двух комманд - все должно заработать в точности так же как и работало плюс свежие индексы и (возможно) дефрагментированные спейсы. Правильно? Вопрос 2 Есть еще одна проблема которую точно надо решить но она связана с роллбэками что меня немного напрягает. т.к. прочитал тут много предупреждений про потерянные базы с уничтоженными роллбэками... есть тейблспейс ROLLBACK_DATA в нем 16 сегментов. макс.экстент - 5М. тейблспейс занимает 3Г. пространство на диске стало критичным недавно. мне крайне необходимо убрать эти 3Г в сад. 100М под роллбэки я так вижу мне вполне достаточно (тем более что 5М - было только у 7 сегментов). будет ли так любезно многоуважаемое оракл-сообщество привести точную последовательность операций для получения новых роллбэков в новом уменьшенном тейблспейс со 100% гарантией сохранности данных. база может быть остановлена на 2 часа спокойно. я перечитал предыдущие советы но они полезны админам которые знают о чем речь.. я же могу только скопировать предложения в SQL Plus или (что еще лучше) понажимать на определенную последовательность кнопок в Энтерпрайз Менеджере... Еще поставил Quest Certral но он мне кажется стремноватым для меня - боюсь чего то в базе поломать. (я догадываюсь что там на 10 минут работы типа создать новый тс в нем новые 16 сегментов потом перенаправить Оракл на них остальные удалить, но все должно быть сделано четко и без возможности ошибки, поэтому я пришел к вам за советом) вот такие дела. могу выставить бутылку коньяка в москве если кто то расскажет как ее поделить между всеми ответившими по справедливости. заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2003, 18:23 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Esli ispol'zuetsya enterprise manager - delai reorganizaz'iu svoix tablespace:: right click mouse ta tablespace i.. forward! II var. Exp/Imp samoe prostoe. Statistiky exportiruet/importiruet no potom lushe vsego sdelat' exec dbms_utility.analyze_database('COMPUTE'); ROLLBACKS:: ALTER ROLLBACK SEGMENT rbs_one SHRINK TO 50M; ALTER ROLLBACK SEGMENT rbs_one STORAGE (NEXT 1000 MAXEXTENTS 20); potom:: ALTER DATABASE DATAFILE 'path + name' RESIZE 10 M; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2003, 19:13 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
так. остановимся на экс/имп. т.к. я конечно жал на все кнопки прежде чем задать тут вопрос. я не нашел магической кнопки "Any key" или "Reorganize" как впрочем "Make me happy!" :) по второму вопросу. я дико пардонирую - но можно я переспрошу? правильно ли я понял. ALTER ROLLBACK SEGMENT rb1 SHRINK TO 50M; ALTER ROLLBACK SEGMENT rb1 STORAGE (NEXT 1000 MAXEXTENTS 20); ALTER DATABASE DATAFILE 'D:\orant\database\rbs1orcl.ora' RESIZE 10 M; создаст мне один роллбэк размером в 50М в датафайле в 10М? (rb1..rb16, D:\orant\database\rbs1orcl.ora - реальные имена сегментов и путь к датафайлу тейблспейса.). или я чего то не понимаю или где то очепятка.... хотелось бы получить 16 сегментов по 5М макс каждый (длина блока у меня 4К) в 100М датафайле. но все равно спасибо. уже есть над чем подумать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2003, 20:28 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
п.с. с удивлением обнаружил что всего 4 сегмента в онлайне. остальные оффлайн хотя я их не трогал... кто их вывел интересно в оффлайн? можно бабахнуть без риска оффлайновые сегменты или это не то что я думаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2003, 20:32 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
I ya dumau, cho imena Rollback segmentov (kotorie ostalis online) -- RBS1, RBS2, RBS3, i RBS4 (sozdautsya po umolchaniyu pri sozdanii default database) Basa kogda-libo perestartovivalas? Posle restarta basy v online ostautsya tolko RBS, kotorye propisany v init{SID}.ora Ostalnye nugno: 1) toge propisat v init{SID}.ora ili 2) perevodit v online rukami. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2003, 20:50 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
2Полуэкт ибн э-э-э..., ну, скажем, Полуэктович : по первому вопросу - набор команд уменьшит роллбэк до 50м, поменяет его параметы, а потом уменьшит размер датафайла до 10м. По второму вопросу - грохай, если они в оффлайне, значит, не используются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2003, 22:03 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Про это... же... рабочей схеме было сказано хранить все в пространстве ЮЗЕР... решил поменять сервер.. сделал экспорт базы .... создал другой екземпляр на новом сервере + спец. таб.пространоство для раб схемы... сказал скрипту: при создании раб. схемы, писать все её объекты в спец. таб. пространоство, запустил скрипт и сказал сервер - хорошо... делаю импорт... НО ! объекты пишутся не таб пространство новой схеым (как планировалось) а в пространсво ЮЗЕРЗ... где они лежали раньше... вроде логично, но как исправить ? Надо, что бы все объекты легли в нов. таб. пространство... ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 09:59 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Nado dat' new tablespace as default tablespace:: " Alter user ..... default tablespace ..." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 10:12 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Дык при создании указывалось пространство... и счас стоит дефолтом нужное пространство.. можно ли перенести обекты схемы из одного пространства в другое ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 10:52 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Postav' nenugnyi tablespace vremenno v offline or read only. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 11:50 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Саша Питерский епрст. не устраивай свалку... мне завтра в ночь пилить - если не сделаю - мне все мозги высосут. Тайгер - плиз разъясни все же... я же дерево. мы говорим про три разные вещи. тейблспейс, датафайл, роллбак сегменты. у меня 16 сегментов. они размером (согласно показаниям ЭМ) от 0.5М до 2.285М. Всего примерно 20М.... зато датафайл - 3Г. мне кажется что я что то не так объяснил и ты мне не совсем то советуешь.. зачем мне увеличивать первый сегмент до 50? если моя задача все уменьшить. почему именно первый сегмент? или ты по умолчанию имеешь ввиду что это надо делать для всех 16-ти? или первый у оракла какой то магический? заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 14:44 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
p.s. при тупой попытке в ЭМ написать датафайлу меньшее значение размера(100М напр.) получаем "ORA-03297: File contains 516 blocks of data beyond requested RESIZE value" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 14:53 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
А, ну так бы и сказал... Самый тупой вариант - сделай ещё один маленький таблеспейс, в нём сделай 1 роллбэк. Остальные сегменты сначала все в оффлайн, потом грохни. Если в этом датафайле больше нет никаких табличных сегментов, он станет пустым. resize его на требуемый объём. coalesce этот таблеспейс. Апосля создай в нём грохнутые ранее роллбэки, отключи и грохни маленький роллбэк, который создал вначале, а затем грохни лежащий под ним маленький таблеспейс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 15:45 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Да, и не забудь в pfile прописать роллбэки, если добавишь какие-то новые, а то при следующем перезапуске они будут в оффлайне. Естественно, для осуществления вышенаписанного останов базы не требуется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 15:50 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
ну вот.. началось.... я уже все сделал... а ты говоришь оно потом не запустится... я сделал новый сегмент, потом удалил старые, удалил и создал старый тейблспейс, сделал новые сегменты. теперь у меня показывает все сегменты забиты. я добавляю новые она их тут же забивает... хз... как узнать сколько и каких должно быть сегментов? получается они были заняты всего лишь на 20М только потому что никто им больше не давал что ли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 18:54 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
так что это за pfile ? мне что теперь перегрузить комп нельзя? все упадет? капец :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 18:55 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
самое смешное что я пересоздал старый тейблспейс (который жрал 3 гига) под тем же именем но создал ему новый датафайл... дык старый датафайл на 3Г не могу удалить.. пишет shared violation.... в ЭМ оракла его не видать.... хм? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 19:09 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Блин, молодёжь, что такое роллбэк знаете, а что такое pfile - не знаете. Куда катится этот мир? initSID.ora и есть pfile. Про необходимость объявления роллбэков чуть выше писал ShgGena. Удалять не надо было, resize же есть. Честно говоря, ты уже меня запутал, что и как делал. Давай медленно и по пунктам. Перегружать можно, но роллбэки, которых нет в pfile, будут после запуска в оффлайне, а если в pfile указан какой-либо несуществующий роллбэк, получишь ошибку при старте и база останется в mounted состоянии (т.е., не будет открыта). Про sharing violation - винда? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 20:01 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
"кагда ищо молад!! с гранатой в руке!!!!!"... был бы молод сам бы все на раз раскопал. повалял бы базу сам бы восстановил и вовсем разобрался за один день :)) а теперь вот приходится побираться :( мне ни как нельзя что бы база не запустилась!! я сделал вот что: 1. поискал фаром в директории orant и внутрь на существование строк типа "rb1", "rbs1orcl.ora", "ROLLBACK_DATA" - это имена рб сегмента, датафайла в системе и старого тейблспейса. не нашел!! т.е. у меня был догадка что пфайл - это иниторкл.ора, но мне надо было точно знать.. вобщем нигде у меня ролбэки не прописаны и не указаны. 2. создал н.тс (новый тейблспейс), в нем новый большой рб сегмент 3. убрал старые сегменты в офлайн. 4. удалил старые сегменты. 5. попытался удалить старый датафайл - она меня послала (хотя в с.тс уже ничего не было к тому времени). 6. я удалил с.тс полностью. все работало ок... 7. создал с.тс с тем же именем (думаю это побарабану) с новым датафайлом rbs4orcl.ora на 100М 8. вывел новый сегмент в офлайн 9. приложение упало так как это был последний сегмент (остальные я то грохнул уже ) 10. все забегали как ужаленные - это надо было видеть ) 11. я тихонечно накидал сегментов по 2.6М и несколько по 10М 12. все опять заработало. все 100М оказались заполненными. теперь вопрос - сколько этой скоти.е нужно роллбэков вообще? я сейчас дал ей на 120М... и все забиты (ну по крайней мере ЭМ показывает красненькие полоски на 99% во всех ролбэках. кстати есть еще какой то SYSROLL - он в офлайне с рождения - нафик он?) другой вопрос - надо ли что то писать в пфайл если там раньше ничего небыло. что делать если после перегрузки сервера база не смонтируется ?? на все провсе у меня будет 3 часа что бы решить задачу. и решить ее надо 100% ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 21:04 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
p.s. читал ГенуСгш.. много думал а скажи Тигра.. в офлайне окажутся ролбэки после рестарта .... чего? компа? или может мы про разные рестарты? может у оракла рестарт машины не приводит к рестарту инстанса и монитрованию базы? может он крутой? тогда выходит что база не рестартовала ни разу (так как я не умею этого делать - я про логин под интернал только вчера узнал - а базу я эту сделал 3 года назад. конкртено этот экземпляр работает месяцев 6-8 - перед этим был полный экспорт/импорт всвязи с переносом аппликухи на другой комп).. комп естественно рестартовал тысячу раз за эти полгода с лишним... так что делать? как говорилось в одной доброй детской сказке - Скажите пожалуйста - куда бежать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 21:13 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
see as addition information about rollback segments: \r /topic/20379 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 22:22 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Я б сказал, куда бежать, обидешься ведь По поводу расчёта размеров роллбаков - ссылку тебе дали, смотри вторую страницу. Плюс в литературе этот вопрос достаточно подробно освещён. По поводу того, что ты делал - датафайл просто так удалить нельзя. Если ты удаляешь таблеспейс, ты должен удалять таблеспейс, а не файл, под ним лежащий. Файл удаляется с диска руками после удаления таблеспейса. Для нормальной работы должен существовать и быть в онлайне по меньшей мере 1 несистемный роллбэк. В pfile пропиши все несистемные роллбэки, убережёшься от некоторых проблем. Почитай Concepts, чтобы не было вопросов навроде "переживёт ли инстанс перезапуск сервера". Ты, боюсь, пока не совсем понимаешь, что такое инстанс и с чем его едят. Переживёт перезапуск он только если винда уходит в hibernate (да и то не факт). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 22:49 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Гена - без обид. у тебя было краткое сообщение которое просто навеяло про старый анекдот про пейджер. я вовсе не имел ввиду ничего плохого... я почитал твою ссылку и понял что если оно у меня работало на 4-х сегментах по 2.5М то теперь на 120М тем более будет работать... я же честно признался что ни фига то я про оракл не знаю да и вообще... из того что написано было по ссылке абсолютно не соответствует моему представлению о транзакциях... т.к. в базу пишутся простые короткие инсерты с запуском малюсенького триггера. посколько все работает через одбц и я вижу всегда практически мгновенно результаты всех этих инсертов и триггеров - делаю вывод что там где то стоит аутокоммит и транзакции дальше одного инсерта нигде не хранятся. получается что длина самой длинной транзакции ну может 2-8К... поэтому объяснить что оно жрет ролбаки по 120 и еще просит я не знаю как.... Тайгер - я вообще не дба. просто мне надо решить эту задачу. тем более что уже все свершилось. сегменты я переудалил. так что если сервер вдруг ночью перегрузится и все ляжет будет очень крупный и неприятный скандал :( до площадки 3.5 часа ехать. пока я доеду потери будут приличные.... если можешь напиши просто пример строки из ораинит как прописывать эти ролбэки и в каком месте файла... я не дба. я мастер на все руки и соответсвенно не знаю толком ничего. но именно за это мне платят. если я начну делать что мне нравится - умру с голоду через 3 дня ;) я бы не подходил к нему на километр к этому ораклу. я понятия не имею где брать Concepts и поятие об инстанс имею пространное - это экземпляр сервисов НТ в системе.. о чем это говорит с точки зрения дба - я не знаю. как делать маунт базы - понятия не имею. и т.д... вот таки пироги. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2003, 23:18 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
V init{sid}.ora naydi choto vrode ukazannogo nige teksta: Код: plaintext 1. 2. 3. 4. 5. skoree vsego u tebya ukazana stroka : rollback_segments = ( RBS0, RBS1, RBS2, RBS3 ) poskolku nize - eto ya propisival dlya svoey bazi. dopishi v nee vse neobhodimye RBS, kotorye OBYAZANY BIT SOZDANY do togo, kak ti ih propishes v init{sid}.ora fail nahoditsiy : unix/linux --> $ORACLE_BASE/admin/sid/pfile win --> X:\orant\dbs ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2003, 00:15 |
|
||
|
Tablespace Magic!
|
|||
|---|---|---|---|
|
#18+
Ну если ты не ДБА, не надо браться за незнакомые и неочевидные задачи. Возьми это как правило. Concepts - это книжка из документации, смотри на docs.oracle.com и otn.oracle.com. Маст рид, так сказать, как и многое другое :) Инстанс, фактически, это набор процессов и структур памяти. На винде процесс один, oracle.exe, "внутри" него живут все оракловские процессы. Сервис в винде - всего лишь пусковой механизм. Инстанс подключается к БД, которая собой являет файлы на дисках. В процессе запуска можно выделить 4 основных состояния: 1. stopped - ничего нет, однако сервис на винде работает 2. nomounted - существует только инстанс, пока ни к чему не привязанный 3. mounted - инстанс ассоциирован с БД, однако не обслуживает подключения, запросы возможны только по fixed tables 4. opened - база открыта для запросов, полностью функционирует Роллбаки прописываются так, например: rollback_segments = (RBS00, RBS01, RBS02, RBS03, RBS04, RBS05, RBS06, RBS07, RBS08, RBS09, RBS10, RBS11, RBS12, RBS13, RBS14, RBS15, RBS16, RBS17, RBS18, RBS19, RBS_BIG00) Кстати, в шаблонном pfile вроде бы такого плана строчка есть, но закомментирована. Читай Concepts, там много интересного :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2003, 00:22 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=32111780&tid=1991688]: |
0ms |
get settings: |
5ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
| others: | 194ms |
| total: | 349ms |

| 0 / 0 |
