Archive for the ‘Best practice’ Category

Kako se to NE radi i kako se to radi

Saturday, April 4th, 2009

Prije nekih tjedan dana sam imao za zadatak migrirati Oracle 9.2.0.6.0 (Solaris 64-bit) bazu na verziju Oracle 10.2.0.4.0 (Linux 32-bit) i za način migracije sam odabrao export/import. Baza koju sam trebao migrirati nije bila prevelika, te bi sama migracija trajala oko sat vremena. Kako bi ta akcija trajala što kraće odlučio ...

Logički model baze podataka za ankete

Wednesday, March 25th, 2009

  Ankete koje imaju ‘multiple choice’ pitanja su danas veome česte. Na svako pitanje nudi se N opcija od kojih učesnik ankete bira jednu. Broj opcija može biti različit od pitanja do pitanja. Neka pitanja zahtevaju jednostavni Da/Ne odgovor, a neka mogu imati i desetak opcija.   Najjednostavniji način da se dođe do ...

Kontinuirani i eksponencijalni rast baze: negativne nuspojave i posljedice

Monday, March 16th, 2009

Svakim danom u svakom pogledu Oracle baza sve više raste. Jedan od velikih razloga za brigu svakog administratora Oracle baza podataka... "Zašto!?" - pitate se... Paaaa... krenimo prvo sa malom retrospektivom: 2005. veličina naše glavne Oracle baze je iznosila oko 170 GB 2006. je porasla na 280 GB 2007. se veličina baze popela na 410 GB 2008. je premašila 650 ...

Control file datoteka koruptirana - kako otvoriti bazu?

Thursday, March 12th, 2009

Pozdrav svima! Prvo da se samo ukratko predstavim. Moje ime je Marko Šutić i radim kao Oracle DBA u jednoj telekomunikacijskoj tvrtci u Hrvatskoj. Prihvatio sam Dejanov poziv da se pridružim ekipi na blogu i sudjelujem sa vlastitim tekstovima Oracle tematike. Nadam se da će moji tekstovi biti zanimljivi i čitljivi, ...

Oracle SQL & PL/SQL: standard kodiranja (coding standards)

Tuesday, March 10th, 2009

Naletih na jedan odličan tekst, koji prilično detaljno objašnjava najpraktičnije načine kodiranja u SQL i PL/SQL. Link: Oracle SQL & PL/SQL coding standards Ja sam muku mučio sa nekoliko Oracle programera, jer se nisu pridržavali firminog internog standarda pri kodiranju. Neki su lijeni da otkucaju nekoliko slova više, a jedan je čak namjerno ...

Oracle DataPump, MetaData Backup & Source code backup (incl. DDL)

Wednesday, January 7th, 2009

Sigurno ste već nekoliko puta bili u idućoj situaciji (a ako niste, onda ćete kad-tad biti ;-) ): - razvijate neku aplikaciju na development serveru (nazovimo ga testdb), na kojem se za testnu bazu ne vrši backup - database administrator svakih mjesec-dva mora bazu osvježiti, tako što obriše postojeću testnu/razvojnu bazu (testdb) i na ...

Ankete i testovi

Thursday, September 25th, 2008

 Automatska obrada podataka pocela je kada je gospodin po imenu Herman Hollerith za potrebe americke vlade obradio prikupljene podatke o popisu stanovnistva. Tada jos nije bilo kompjutera, sve se desava davne 1890. godine.  Gospodin Hollerith je zatim osnovao firmu pod imenom Inetrnational Business Machines, dobro nam poznati IBM. Za ljubitelje istorije, ...

Oracle sekvence u RAC bazi

Tuesday, September 9th, 2008

Pošto aktivno nadgledam bazu (RAC baza sa dvije instance), primijetio sam u određenim situacijama učestala "usporenja", odnosno "wait events", koja su se odnosila isključivo na RAC i interkonekciju između RAC instanci. Prvo da vas smorim suhoparnom teorijom, pa ću detaljno pojasniti "problem" i dati rješenje...

Uskrs

Tuesday, September 2nd, 2008

Pronasao sam kod za izracunavanje Uskrsa, po pravoslavnom i po katolickom kalendaru. Izvor: http://www.tek-tips.com/faqs.cfm?fid=5075 Pravoslavni: CREATE FUNCTION dbo.OEaster (@Yr as int) RETURNS datetime AS  -- SELECT dbo.OEaster(2007) BEGIN    Declare @I int, @J int, @Metonic int, @EMo int, @EDay int, @LeapAdj int    Set @LeapAdj=@Yr/100-@Yr/400-2    Set @Metonic=@Yr % 19    Set @I=(19*@Metonic+15) % 30    Set @J=(@Yr+@Yr/4+@I) % 7    Set @EMo=3+(@I-@J+40)/44    ...

NULLS, LEFT JOIN, EXISTS i NOT IN

Friday, July 4th, 2008

Kada zelimo da uporedimo dve tabele A i B, i da pokazemo koji su redovi prisutni u A, a nema ih u B (Accessov 'unmatched query'), to generalno mozemo da uradimo na nekoliko nacina. Mozemo da upotrebimo LEFT JOIN, mozemo da upotrebimo NOT IN ili NOT EXISTS. Da li su ...