<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>nORA</title>
	<atom:link href="http://nora.ptrk.org/feed" rel="self" type="application/rss+xml" />
	<link>http://nora.ptrk.org</link>
	<description>oraklowy notatnik</description>
	<lastBuildDate>Tue, 29 Sep 2009 11:39:50 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>CRS, AIX i problem z VLAN-em</title>
		<link>http://nora.ptrk.org/33</link>
		<comments>http://nora.ptrk.org/33#comments</comments>
		<pubDate>Thu, 24 Sep 2009 09:33:40 +0000</pubDate>
		<dc:creator>ptrk</dc:creator>
				<category><![CDATA[Notki]]></category>
		<category><![CDATA[aix]]></category>
		<category><![CDATA[CRS]]></category>
		<category><![CDATA[racgvip]]></category>
		<category><![CDATA[vip]]></category>
		<category><![CDATA[vlan]]></category>

		<guid isPermaLink="false">http://nora.ptrk.org/?p=33</guid>
		<description><![CDATA[Jeśli instalujecie CRS na AIX-a 5.3 i występuje problem ze startem VIP z podobnego powodu:
&#62; IsIfAlive: /usr/bin/entstat -d en7 failed. Return = 1 (host=rs04a13)
&#62; checkIf: end for if=en7
&#62; Invalid parameters, or  failed to bring up VIP (host=rs04a13)
oznacza to iż prawdopodobnie korzystacie z VLAN-u, z którym skrypt racgvip nie może sobie poradzić.
Rozwiązaniem jest podmiana jednej [...]]]></description>
			<content:encoded><![CDATA[<p>Jeśli instalujecie CRS na AIX-a 5.3 i występuje problem ze startem VIP z podobnego powodu:</p>
<pre>&gt; IsIfAlive: /usr/bin/entstat -d en7 failed. Return = 1 (host=rs04a13)
&gt; checkIf: end for if=en7
&gt; Invalid parameters, or  failed to bring up VIP (host=rs04a13)</pre>
<p>oznacza to iż prawdopodobnie korzystacie z VLAN-u, z którym skrypt racgvip nie może sobie poradzić.</p>
<p>Rozwiązaniem jest podmiana jednej linijki w $CRS_HOME/bin/racgvip:</p>
<p>z:</p>
<div>
<pre style="font-size: 9pt; color: #000000; direction: ltr;">$ENTSTAT -d $_IF | $GREP -iEq  '.*lan.*state.*:.*operational.*|
.*link.*status.*:.*up.*|.*port.*operational.*state.*:.*up.*'</pre>
</div>
<div>
<div style="font-size: 9pt; color: #000000; direction: ltr;">na</div>
</div>
<div>
<div>
<pre style="font-size: 9pt; color: #000000; direction: ltr;">$ENTSTAT  -d $_IF | $GREP -iEq  '.*lan.*state.*:.*operational.*|
.*link.*status.*:.*up.*|.*port.*operational.*state.*:.*up.*|Driver Flags: Up'</pre>
</div>
</div>
<p>Należy pamiętać by wprowadzać tą zmianę po każdym patchowaniu CRS-a gdyż plik racgvip jest wówczas nadpisywany.</p>
]]></content:encoded>
			<wfw:commentRss>http://nora.ptrk.org/33/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ukryte parametry ( _* )</title>
		<link>http://nora.ptrk.org/8</link>
		<comments>http://nora.ptrk.org/8#comments</comments>
		<pubDate>Wed, 23 Sep 2009 19:16:13 +0000</pubDate>
		<dc:creator>ptrk</dc:creator>
				<category><![CDATA[Skrypty]]></category>
		<category><![CDATA[parametr]]></category>
		<category><![CDATA[skrypt]]></category>
		<category><![CDATA[strojenie]]></category>

		<guid isPermaLink="false">http://nora.ptrk.org/?p=8</guid>
		<description><![CDATA[Czasem przy tuningu lub troubleshooting-u trzeba zainteresować się wartościami ukrytych parametrów. Niestety Oracle (celowo) nam tego nie ułatwia. Poprzez &#8220;show parameter X&#8221; znajdziemy jedynie te, których wartość ustawiliśmy na inną niż domyślna (więc w większości przypadków i tak znamy ich ustawienia). Poniższy skrypt może okazać się pomocny w poszukiwaniu tych &#8220;zaginionych&#8221;. Linię z &#8220;like&#8221; można [...]]]></description>
			<content:encoded><![CDATA[<p>Czasem przy tuningu lub troubleshooting-u trzeba zainteresować się wartościami ukrytych parametrów. Niestety Oracle (celowo) nam tego nie ułatwia. Poprzez &#8220;show parameter X&#8221; znajdziemy jedynie te, których wartość ustawiliśmy na inną niż domyślna (więc w większości przypadków i tak znamy ich ustawienia). Poniższy skrypt może okazać się pomocny w poszukiwaniu tych &#8220;zaginionych&#8221;. Linię z &#8220;like&#8221; można dostosować pod kątem poszukiwań określonych parametrów.</p>
<pre>col parameter for a48
col value_session for a24
col value_instance for a24
select a.ksppinm parameter, b.ksppstvl value_session,
       c.ksppstvl value_instance
  from x$ksppi a, x$ksppcv b, x$ksppsv c
 where a.indx = b.indx and a.indx = c.indx
   and substr(ksppinm,1,1)='_'
   and ksppinm like '%%'
order by a.ksppinm;</pre>
]]></content:encoded>
			<wfw:commentRss>http://nora.ptrk.org/8/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Liczba przełączeń redo w przedziale godzin i dni</title>
		<link>http://nora.ptrk.org/6</link>
		<comments>http://nora.ptrk.org/6#comments</comments>
		<pubDate>Tue, 22 Sep 2009 17:43:26 +0000</pubDate>
		<dc:creator>ptrk</dc:creator>
				<category><![CDATA[Skrypty]]></category>
		<category><![CDATA[redo]]></category>
		<category><![CDATA[skrypt]]></category>

		<guid isPermaLink="false">http://nora.ptrk.org/?p=6</guid>
		<description><![CDATA[Skrypt do przedstawienia historii przełączeń redologów w kolejnych godzinach i dniach. Przydatna rzecz choćby do planowania strategii backupów lub jako przegląd aktywności bazy.
set cmds on
col date for a15; col total for 99999; col h00 for 999; col h01 for 999
col h02 for 999; col h03 for 999; col h04 for 999; col h05 for 999
col [...]]]></description>
			<content:encoded><![CDATA[<p>Skrypt do przedstawienia historii przełączeń redologów w kolejnych godzinach i dniach. Przydatna rzecz choćby do planowania strategii backupów lub jako przegląd aktywności bazy.</p>
<pre>set cmds on
col date for a15; col total for 99999; col h00 for 999; col h01 for 999
col h02 for 999; col h03 for 999; col h04 for 999; col h05 for 999
col h06 for 999; col h07 for 999; col h08 for 999; col h09 for 999
col h10 for 999; col h11 for 999; col h12 for 999; col h13 for 999
col h14 for 999; col h15 for 999; col h16 for 999; col h17 for 999
col h18 for 999; col h19 for 999; col h20 for 999; col h21 for 999
col h22 for 999; col h23 for 999; col h24 for 999; col mb for 999,999

select  to_char(first_time, 'yyyy-mm-dd Dy') "date",
        sum(blocks*block_size)/1024/1024 "MB",
        count(1) "total",
        sum(decode(to_char(first_time, 'hh24'),'00',1,0)) "h00",
        sum(decode(to_char(first_time, 'hh24'),'01',1,0)) "h01",
        sum(decode(to_char(first_time, 'hh24'),'02',1,0)) "h02",
        sum(decode(to_char(first_time, 'hh24'),'03',1,0)) "h03",
        sum(decode(to_char(first_time, 'hh24'),'04',1,0)) "h04",
        sum(decode(to_char(first_time, 'hh24'),'05',1,0)) "h05",
        sum(decode(to_char(first_time, 'hh24'),'06',1,0)) "h06",
        sum(decode(to_char(first_time, 'hh24'),'07',1,0)) "h07",
        sum(decode(to_char(first_time, 'hh24'),'08',1,0)) "h08",
        sum(decode(to_char(first_time, 'hh24'),'09',1,0)) "h09",
        sum(decode(to_char(first_time, 'hh24'),'10',1,0)) "h10",
        sum(decode(to_char(first_time, 'hh24'),'11',1,0)) "h11",
        sum(decode(to_char(first_time, 'hh24'),'12',1,0)) "h12",
        sum(decode(to_char(first_time, 'hh24'),'13',1,0)) "h13",
        sum(decode(to_char(first_time, 'hh24'),'14',1,0)) "h14",
        sum(decode(to_char(first_time, 'hh24'),'15',1,0)) "h15",
        sum(decode(to_char(first_time, 'hh24'),'16',1,0)) "h16",
        sum(decode(to_char(first_time, 'hh24'),'17',1,0)) "h17",
        sum(decode(to_char(first_time, 'hh24'),'18',1,0)) "h18",
        sum(decode(to_char(first_time, 'hh24'),'19',1,0)) "h19",
        sum(decode(to_char(first_time, 'hh24'),'20',1,0)) "h20",
        sum(decode(to_char(first_time, 'hh24'),'21',1,0)) "h21",
        sum(decode(to_char(first_time, 'hh24'),'22',1,0)) "h22",
        sum(decode(to_char(first_time, 'hh24'),'23',1,0)) "h23"
from    v$archived_log
group by to_char(first_time, 'yyyy-mm-dd Dy')
order by 1;</pre>
]]></content:encoded>
			<wfw:commentRss>http://nora.ptrk.org/6/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Migracja bazy do ASM</title>
		<link>http://nora.ptrk.org/3</link>
		<comments>http://nora.ptrk.org/3#comments</comments>
		<pubDate>Sat, 19 Sep 2009 21:02:49 +0000</pubDate>
		<dc:creator>ptrk</dc:creator>
				<category><![CDATA[Notki]]></category>
		<category><![CDATA[10g]]></category>
		<category><![CDATA[asm]]></category>
		<category><![CDATA[rman]]></category>

		<guid isPermaLink="false">http://nora.ptrk.org/?p=3</guid>
		<description><![CDATA[1. Przeniesienie control file do ASM. W tym celu zmieniamy parametr w init.ora tak, by wskazywał na nową lokalizację w ASM:
control_files='+DG_DATA/control01.ctl'
&#8230;gdzie  DG_DATA jest nazwą diskgroup-y
2. Uruchomienie instancji w trybie nomount:
SQL&#62; startup nomount
3. Następnie z konsoli RMAN-a należy skopiować control file ze starej lokalizacji do ASM:
RMAN&#62; connect target
RMAN&#62; restore controlfile from  '/ora_u10/oradata/ctl/control01.ctl';
&#8230;gdzie &#8220;/ora_u10&#8230;&#8221; jest [...]]]></description>
			<content:encoded><![CDATA[<p>1. Przeniesienie control file do ASM. W tym celu zmieniamy parametr w init.ora tak, by wskazywał na nową lokalizację w ASM:</p>
<pre>control_files='+DG_DATA/control01.ctl'</pre>
<p>&#8230;gdzie  DG_DATA jest nazwą diskgroup-y</p>
<p>2. Uruchomienie instancji w trybie nomount:</p>
<pre>SQL&gt; startup nomount</pre>
<p>3. Następnie z konsoli RMAN-a należy skopiować control file ze starej lokalizacji do ASM:</p>
<pre>RMAN&gt; connect target
RMAN&gt; restore controlfile from  '/ora_u10/oradata/ctl/control01.ctl';</pre>
<p>&#8230;gdzie &#8220;/ora_u10&#8230;&#8221; jest poprzednią lokalizacją cf.</p>
<p>4. Zamontowanie bazy</p>
<pre>RMAN&gt; alter database mount;</pre>
<p>5. Teraz można skopiować pliki danych a następnie przełączyć bazę na kopie:</p>
<pre>RMAN&gt; backup as copy database format '+DG_DATA';
RMAN&gt; switch database to copy;</pre>
<p>6. Przeniesienie tempfile-a:</p>
<pre>RMAN&gt; run {
set newname for tempfile 1 to '+DG_DATA';
switch tempfile all;
}</pre>
<p>7. Otwarcie bazy danych</p>
<pre>RMAN&gt; alter database open</pre>
<p>8. Ostatnim krokiem jest utworzenie nowych redologów w ASM</p>
<pre>SQL&gt; alter database add logfile member '+DG_DATA' to group 1;
SQL&gt; alter database add logfile member '+DG_DATA' to group 2;
SQL&gt; alter database add logfile member '+DG_DATA' to group 3;</pre>
<p>Należy zdropować &#8220;stare&#8221; redologi (przy którymś logu konieczne będzie przełączenie, gdyż dropowane logi muszą mieć stan &lt;&gt; &#8220;CURRENT&#8221;:</p>
<pre>SQL&gt; alter database drop logfile member '/ora_u10/oradata/redo_12.dbf';
SQL&gt; alter system switch logfile;
SQL&gt; alter database drop logfile member '/ora_u10/oradata/redo_22.dbf';
SQL&gt; alter system switch logfile;</pre>
<p>.</p>
]]></content:encoded>
			<wfw:commentRss>http://nora.ptrk.org/3/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
