Feed on
Posts
Comments
Цък:

Напоследък съм влюбен в DataGuard Broker. Страшно полезен инструмент! Е, има си своите странности, все пак…

Днес тествах switcover при конфигурация от една primary, един physical и един logical standby. Предварително се подготвих с research на възможните бъгове и техните workarounds. За щастие сме на доста стабилна версия. Примерно една от грозните мотики е описана в note 761661.1. Абе убих си един ден ровене…

И все пак не бях съвсем изряден. Когато се засилих да прехвърлям, се случи следното:

DGMGRL> connect /
Connected.
DGMGRL> show configuration

Configuration
Name: My_guard
Enabled: YES
Protection Mode: MaxPerformance
Fast-Start Failover: DISABLED
Databases:
mydb_prim - Primary database
mydb_lsby - Logical standby database
mydb_psby - Physical standby database

Current status for “My_guard”:
SUCCESS

DGMGRL> switchover to mydb_psby
Performing switchover NOW, please wait…
Operation requires shutdown of instance “mydb” on database “mydb_prim”
Shutting down instance “mydb”…
ORA-01031: insufficient privileges

You are no longer connected to ORACLE
Please connect again.
Unable to shut down instance “mydb”
You must shut down instance “mydb” manually
Operation requires shutdown of instance “mydb” on database “mydb_psby”
You must shut down instance “mydb” manually
Operation requires startup of instance “mydb” on database “mydb_prim”
You must start instance “mydb” manually
Operation requires startup of instance “mydb” on database “mydb_psby”
You must start instance “mydb” manually
Switchover succeeded, new primary is “mydb_psby”

После нещата са леееко омазани, но се оправят с рестарт на mydb_prim (до MOUNT) и на mydb_psby.

Сега, не че е голяма драма, даже може да се каже, че всичко е ОК, нещата се оправят лесно. Ама все пак ми стана чудно какво не му уйдисва. Нали уж всичко правя като по книгите. Пък и, да си кажа честно, не можах да открия паричната за това гърмежче в Metalink My Oracle Support. Може би защото само се чудят какви бози да правят по визията, а така и не му оправиха search-а.

И все пак, да е жив и здрав чичко гугъл, решение се намери тук. Оказва се, че за връзка към брокера трябва да се използва connect sys/password, вместо connect /. Иди ги разбери.

DGMGRL> connect sys
Password:
Connected.
DGMGRL> show configuration

Configuration
Name: My_guard
Enabled: YES
Protection Mode: MaxPerformance
Fast-Start Failover: DISABLED
Databases:
mydb_prim - Physical standby database
mydb_lsby - Logical standby database
mydb_psby - Primary database

Current status for “My_guard”:
SUCCESS

DGMGRL> switcover to mydb_prim
Unrecognized command “switcover”, try “help”
DGMGRL> switchover to mydb_prim
Performing switchover NOW, please wait…
Operation requires shutdown of instance “mydb” on database “mydb_psby”
Shutting down instance “mydb”…
ORA-01109: database not open

Database dismounted.
ORACLE instance shut down.
Operation requires shutdown of instance “mydb” on database “mydb_prim”
Shutting down instance “mydb”…
ORA-01109: database not open

Database dismounted.
ORACLE instance shut down.
Operation requires startup of instance “mydb” on database “mydb_psby”
Starting instance “mydb”…
ORACLE instance started.
Database mounted.
Operation requires startup of instance “mydb” on database “mydb_prim”
Starting instance “mydb”…
ORACLE instance started.
Database mounted.
Switchover succeeded, new primary is “mydb_prim”
DGMGRL> show configuration

Configuration
Name: My_guard
Enabled: YES
Protection Mode: MaxPerformance
Fast-Start Failover: DISABLED
Databases:
mydb_prim - Primary database
mydb_lsby - Logical standby database
mydb_psby - Physical standby database

Current status for “My_guard”:
SUCCESS

А сега си представете ако не е брокера, колко къртовски труд е това. Първо направи еди-какво-си на едната база, после на другата, да не забравяме пренастройването на логическта… Вместо 5 минути отива на към 25, ако е добра предварителната подготовка.
Абе едва ли вече ще пусна Data Guard без Broker.

Цък:

- Извинете, господине, Вие как влязохте?
Превключвам от режим “дълбоко замислен за лични проблеми” на по-комуникативен. Преценявам ситуацията, все още леко отнесен. “Хм, странна работа, да ме спира проверка на ескалатора. И не ме ли видя, че съм с карта…
- Ми с картата си влязох. Защо? - отговарям леко торснато. Тази вечер не съм в учтиво настроение. Напоследък твърде много неща ме дърпат на много страни. Като започнем от една кифла…
- Ами Вие влязохте с моя билет… - леко сърдито, настъпателно.
Отне ми известно време да възстановя в главата си последните 60 секунди. Влязох в подлеза, насочих се към бариерите, през които се влиза за метрото. Даа… имаше там един, който се опитваше да си вкара билета в едната бариера, а да мине през тази вляво от нея. Аз го финтирах още по-вляво, лепвайки картата си от правилната за тази бариера страна… Май е точно този…
- Не е вярно. Имам си карта, влязох с нея… - започвам да се обяснявам, но той ме прекъсва, повишавайки тон:
- Не! Вие влязохте с моя билет. Заради Вас трябваше да прескачам… - усещам как се набира. На мен също не ми е до учтивости.
- Глупости. Имам си карта. А Вие обърнете внимание, че билета се вкарва с лявата ръка и се минава вдясно то него.
То като се замислиш, наистина не е много логично. Да си вкарваш билета с лявата ръка. Ама някой умник така го е измислил, виновен ли съм?
Вече слизаме от ескалатора, долу на перона. Моя опонент продължава да набира инерция:
- Не е вярно! Не е така. Вие влязохте с моя билет! Писна ми от тарикати! За това сме на тоя хал! Е*аси държавата, е*аси хората!
- Не е така - все още се опитвам да обясня, но вече съм доста афектиран - Аз минавам тук всеки ден и знам как се минава. Освен това си имам карта. Но това не Ви пречи да ме обвинявате, без да знаете какво е станало…
- Не е така…
- МИНАВА СЕ ВДЯСНО! Аман от хора, които си мислят, че знаят всичко. И когато сгрешат, все друг им е виновен. “За това сме на този хал”, нали? “Е*аси държавата”, нали?
Не мисля, че го убедих. И един час да му обяснявам, няма да ми повярва. За щастие той пътува в обратна посока.

P.S. Благодарение на Иван открих, че хората наистина се замислят по въпроса от коя страна да се слага билетчето. Но май няма единно мнение.

Цък:

Щастлив и доволен абонат на Нет1 - вече повече от година. Обаче имам чувството, че вече сме им много (абонатите) и занапред ще ставаме по-малко щастливи и по-малко доволни…

Инцидента, който се случи, не е страшен. Но показва отношение, организация, и фирмена култура.

Случи се така, че в петък късно вечерта кабелната ми изчезна. Като един възпитан българин, аз си позатраях - бяхме на маса, и без това телевизора е само фон. Пък и до сега когато е прекъсвала кабелната, се е оправяла до няколко минути.

Да, ама минутите взеха да стават повечко, отиде към половин час. И аз взеха да си мисля - ми то е късно вечер, може и да не знаят за проблема, никой де не се е обадил. Те би трябвало да си наблюдават мрежата, ама я да взема да звънна…

Намерих им телефона от сайта, звънна и попаднах на някакво гласово меню. Естествено, последното предложение беше “За да се свържете с оператор, натиснете Х”. Натиснах аз Х и с изненада чух нещо от сорта на “Запишете съобщение след сигнала. Оставете телефон за обратна връзка. Ще ви се обадим” WTF?!?.

Поех дълбоко въздух и се приготвих да кажа чисто и ясно какъв ми е проблема (повече от половин час нямам кабелна, да му бера лайката…). Обаче след сигнала чух още по-интересен текст: “The user’s mailbox cannot accept more messages”

Е тук вече ми прикипя. Но единствената друга връзка беше e-mail адреса support@net1.bg . На който написах какъв, аджеба, ми е проблема, от кой блок им пиша и да вземат да си оправят ши*ания кабел най-после. Споменах и колко дилетантско е това с препълняната кутия на някакъв телефонен секретар.

* * *

Така и не дочаках отговор по мейла. На сутринта, за щастие, всичко си беше наред.

* * *

Днес, около 60 часа по-късно получих един e-mail без никакъв subject, в който пише:

Ще Ви помоля да ни изпратите,пълния адрес
за да проверим.
Не сте само Вие абонат в този блок.

НЕТ 1

Това окончателно затвърди мнението ми за професионализма при обслужването на клиенти в НЕТ1. Но не съм притеснен - едногодишния ми договор вече изтече…

10.2.0.5 is out

Цък:

Забелязах, че вече има 10.2.0.5 за Linux x86 и Linux x86-64. Patchset 8202632.

Да ние честит новия пачсет!

Цък:

Най-после, 12 дена след крайния срок, получих ценната хартийка, на която пише:

Няма задължения

Какъв е извода? Държавния служител само викане го оправя. Културното поведение, търпението и позитивизма не са препоръчителни.

А как ми олекна, че (поне за сега) няма да се налага пак да ходя повече в НАП… Колко малко му трябва на човек, да се почувства щастлив :)

Цък:

Ето слайдовете от моята презентация в петък на сбирката на БГПО. Ще бъдат качени и на сайта на БГПО.

Моля, не забравяйте да попълните feedback формите. И който има снимки… споделете ги :)

Цък:

26 Април Днес пак ходих в НАП. Естествено, удостоверението още не беше готово. Но този път, по ваш съвет, вдигнах скандал. Виках, и то доста; накарах ги да се чувстват зле, и то доста.

Разбрах, че все пак след посещението ми в четвъртък са се обадили до Габрово да питата какво става (1 седмица след крайния срок, мърди!). От там са им казали, че удостоверението е изпратено, но не се знае кога.

Опитаха се да ме убедят, че не са виновни. Не ме интересува. Навиках се.

Но не ми олекна.

Предупредих ги, че утре ще ходя пак да им викам, и искам среща с шефа им. Едва ли ще си размърдат бюрократясалите задници, но все пак други заплахи не ми хрумнаха.

НАП-ън

Цък:

31 Март Трябва ми “Удостоверение за наличие или липса на задължение” по чл. 87, ал.6 от ДОПК. Чудя се дали мога да си го извадя от София, или трябва да се разхождам до Габрово?
Обадих се на телефона на НАП - 0700 18 700. Там една учтива служителка ми обясни, че мога да си го извадя от Габрово за 7 календарни дни, а от всеки друг клон на НАП - за 14. Да се чуди човек не работят ли с една система. И за какво изобщо им трябват толкова много дни за да разпечатат една проста справка… Не, няма “експресен” вариант.
Все пак си отбелязвам приятния факт, че услугата е безплатна. Няма такса от, примерно, 50 стотинки (и 2-3-4 лева за банков превод).

1 Април Мислих, смятах. Не мога да се доставя до Габрово в работно време днес. Все пак и аз съм на работа. Най-бързо мога да се озова в Габрово (в работен ден) на 6 април, което означава да си взема удостоверението на 13-14 април. Означава и да си пусна 2 пъти отпуск по един ден. А ако го пусна още днес в близкия клон, ще пристигне на 15-ти.
Отидох в най-близкия НАП. Късметлия съм - на 100 метра от офиса е.
Опитвам се да се издигна над бюрократичната надменност на лелките. Усмихвам се, учтиво им попълвам формуляра, предавам го и пожелавам приятен ден.

15 Април Отидох да си взема удостоверението. Изненада - не било готово! Лошо, Седларов… Но нали съм позитивист, радвам се, е не приех варианта с отпуски и пътуване по няколко стотин километра. Ще изчакам. Дадоха ми телефон, да се обаждам да проверявам. Няма смисъл - по-лесно ми е да се разходя 100 метра и да проверя лично, хем да ми почиват малко очите…
Пожелах им приятен ден. С усмивка и т.н.

19 Април Е вече не може да не е готово. Отивам в любимият си клон на НАП. За щастие за получаване на удостоверения няма опашка. В момента, в който си изтегля билетче - веднага ме канят да вляза. Обаче… хм, ами още го няма. Моля? След 18 дена? Ами да, то тогава нали бяха празници… То има и едно от Пловдив, което закъснява…
Запазвам учтивия и ведър тон, макар от вътре да ми кипи. Вероятно проблема не е точно в тези лелки. Не че те видимо се счупват от работа, ама… Пожелавам им приятен ден и излизам.

22 Април Нещата вече стават спешни. Стоварих се пак в НАПа. Вече и моя оптимизъм е на привършване, така че не смея да се надявам много.
И с право. Удостоверението все още не е пристигнало. След 21 дена!?!
Може ли да се е загубило и никога да не пристигне? Не, няма начин. То идва с вътрешна поща.
Почувствах как учтивата ми черупка се пропуква. За миг си да си представих лелките в един голям и горещ казан. С катран. После се овладях - вероятността те да са виновни е относително малка.
…Спешно ли ви е? Ха! Добре че действах от рано. Естествено, че вече е спешно!
Ами ще се обадим в Габрово да проверим кога са го пратили. Оставете ни телефон. Защо чак сега? До тук с доброто отношение. Ама съм търпелив, а? От това си патя…

(Продължението: 2, 3)

Анти-кризисни

Цък:

Събрали са се разните министри, със синдикати и работодатели, да мислят. И мислили те дни и нощи, и са решили - има криза. Трябват мерки.

И ето, дни и седмици мъдруват, ала на края сал една велика мярка ще излезе - и те я отделиха специално, че даже май не са се доразбрали и за нея. За туй говорят, 59+1 са мерките. Не са 60, а 59+1.

Каква е тази мярка тъй специална? Таз мярка важна се оказва: когато се разболееш, първите 2 дни ти се изплащат от работодателя. И после има един трети ден за пост с молитва, през който никой не ти плаща - чай ще пиеш. Ако преминеш изпитанието кратко, то значи си достатъчно безценен, за да си заслужава и държава, в която данъци, осигуровки плащаш, да ти повърне нещо и да започне да ти плаща.

Така решиха, щото много тарикати се извъдили: със болничния, вместо платен отпуск, за да източат свежи кинти от държавата. И тъй се чува два-три дена, но подир туй настана друга приказка.

Работодателите, като се видяха в тясно, и като знаят най-добре за тез тарикатлъци, предложиха ни друго. Предложиха да се обърне схемата и вместо третия, през първи ден да е пием само чайче. Тъй всеки ще се чувства някак задължен да ходи да се труди, дори и да не е в кондиция. Защото тук ден-два, там друг… заплатката стремглаво намалява.

Правителството се заслуша, и ни каза, че може и така да стане. Зер простия работник като мене няма глас в тристранката. Че синдикати знаят само да полайват, ама и гледат да не се разсърди някой, че те са най-зависими от другите и нямат власт освен властта на блъфа. Пък и е важно много следното: да не погледне някой и към обичните им топли придобитъци, че те и без това са паразитна структура. Ако не ги държи закона и търпи работодателя, направо са умрели.

Но породи се в мен идея друга. Аман от недовършени реформи, предложени и одобрени от страхливи хора. Нали се знае, има криза. И трябва спешно да се съберат пари в бюджета. Та се зачудих… Не може ли като се разболея, на първий ден да давам аз пари на шефа си, за да потръгне бизнеса; на втория и трети ден да давам надник на държавата, че тя и без това го е закършила. И ако жив съм след това, да ме оставят да си се лекувам и да рушветчийствам с к’вото е останало. Така ще има и пари за бизнеса, и за бюджетните лапачи!

* * *

Но минаха и други мерки през ушите на народа. Понеже много нагли майки вдигали си доходите преди раждане, че даже месеци преди да се заченат, така източват касата; за туй държавата подхвърли, да се пресмята майчинството върху 2 до 3 години.

Сега ще кажа тази мярка как не се прие. Защото твърда е ръка правителствена, а тази мярка беше твърде мека, за да зачене, че и да роди голяма полза.

Предвид че доста дами раждат в уиниврситета или пък малко подир туй, преди да имат кариера и развитие, предлагам да се смятат за заплата всичките години след десетата. Да вземем средно от стипендии и джобните от вкъщи; да ги пресметнем с първите, най-малките заплати, така че ако някой е решил, че се е закрепил и може да роди, да си помисли пак.

И други мерки мога да предложа.
Обаче свърши ми ракията.

DataGuard закачка

Цък:

Записвам си да не забравя.

Проблем: боркера мрънка, че нещо не му е на кеф:

  1. DGMGRL> show configuration
  2.  
  3. Configuration
  4.   Name:                DG_DEV
  5.   Enabled:             YES
  6.   Protection Mode:     MaxPerformance
  7.   Fast-Start Failover: DISABLED
  8.   Databases:
  9.     prim  - Primary database
  10.     stb1 - Logical standby database
  11.     stb2 - Physical standby database
  12.  
  13. Current status for "DG_DEV":
  14. Warning: ORA-16608: one or more databases have warnings

Проблема… хм, не че става ясен, ама поне долу-горе се вижда от Primary базата:

  1. DGMGRL> show database prim
  2.  
  3. Database
  4.   Name:            prim
  5.   Role:            PRIMARY
  6.   Enabled:         YES
  7.   Intended State:  ONLINE
  8.   Instance(s):
  9.     prim
  10.  
  11. Current status for "prim":
  12. Warning: ORA-16801: redo transport-related property is inconsistent with database setting

Това съобщение, всъщност, никак не е по-ясно от предишното. Отново свободния превод е “абе бачкам, ама нещо не ми е съвсем на таман”. Ама поне с пооглеждане в google за точно тая грешка се вижда, че има някаква разлика от зададените в конфигурацията опции и реални действащите. С още малко въображение се намира и как са попитам “добре, де, какво точно не ти е на кеф?”:

  1. DGMGRL> show instance prim 'InconsistentLogXptProps';
  2. INCONSISTENT LOG TRANSPORT PROPERTIES
  3.    INSTANCE_NAME         STANDBY_NAME        PROPERTY_NAME         MEMORY_VALUE         BROKER_VALUE
  4.            prim                stb1             LogXptMode       (missing SRLs)                ASYNC

Ахааа… и малко опит да имаш с DataGuard, научава се неписаното правило, че STLs означава standby redo logs. Значи на stb1 няма точно такива. Правим ги на бързо:

  1. ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 110 SIZE 50M
  2.                                            ,GROUP 111 SIZE 50M
  3.                                            ,GROUP 112 SIZE 50M;

Следващия въпрос към брокера е “сега уйдисва ли ти всичко?

  1.  show configuration
  2.  
  3. Configuration
  4.   Name:                DG_DEV
  5.   Enabled:             YES
  6.   Protection Mode:     MaxPerformance
  7.   Fast-Start Failover: DISABLED
  8.   Databases:
  9.     prim  - Primary database
  10.     stb1 - Logical standby database
  11.     stb2 - Physical standby database
  12.  
  13. Current status for "DG_DEV":
  14. Warning: ORA-16608: one or more databases have warnings

Оф, пак ми намира кусури! Хайде да видим сега пък какво не му харесва:

  1. DGMGRL> show database stb1
  2.  
  3. Database
  4.   Name:            stb1
  5.   Role:            LOGICAL STANDBY
  6.   Enabled:         YES
  7.   Intended State:  ONLINE
  8.   Instance(s):
  9.     lintgr
  10.  
  11. Current status for "stb1":
  12. Warning: ORA-16826: apply service state is inconsistent with the DelayMins property

Тук грешката е ясна. Според документацията, тази грешка означава:

Cause

This warning was caused by one of the following reasons:

- The apply service was started without specifying the real-time apply option or without the NODELAY option when the DelayMins property was set to zero.

- The apply service was started with the real-time apply option or with the NODELAY option when the DelayMins property was set to a value greater than zero.

Action

Reenable the standby database to allow the broker to restart the apply service with the apply options that are consistent with the specified value of the DelayMins property.

Много ясно - standby базата е пусната, когато е нямало SRLs. След добавянето, Apply-я трябва да се пусне отново, за да захапе с NODELAY.

  1. DGMGRL> disable database stb1
  2. Disabled.
  3. DGMGRL> enable database stb1
  4. Enabled.
  5. DGMGRL> show configuration
  6.  
  7. Configuration
  8.   Name:                DG_DEV
  9.   Enabled:             YES
  10.   Protection Mode:     MaxPerformance
  11.   Fast-Start Failover: DISABLED
  12.   Databases:
  13.     prim  - Primary database
  14.     stb1 - Logical standby database
  15.     stb2 - Physical standby database
  16.  
  17. Current status for "DG_DEV":
  18. SUCCESS

Ей, най-после всичко му е наред! Сега вече мога да го чупя…

« Newer Posts - Older Posts »