05/26: Oracle > Performance check
select sql_text, executions from v$sql where cpu_time > 20000;
select * from v$session where machine = ‘xxxx’ and logon_time > sysdate - 1;
select sid, ctime from v$lock where block > 0;
select
oracle_username
os_user_name,
locked_mode,
object_name,
object_type
from
v$locked_object a,dba_objects b
where
a.object_id = b.object_id
select s.sid, p.spid, s.status,s.process,s.osuser, a.sql_text, p.program
from
v$session s, v$sqlarea a, v$process p
where
s.sql_hash_value=a.hash_value
and s.sql_address=a.address
and s.paddr=p.addr
and s.status='ACTIVE';
The views are owned by the SYS user. You can query $V$FIXED_TABLE to see all the view names.Read consistency is not guaranteed.
More complicated example:
Oracle Session I/O
New Performance Views to Identify Problem SQL
select * from v$session where machine = ‘xxxx’ and logon_time > sysdate - 1;
select sid, ctime from v$lock where block > 0;
select
oracle_username
os_user_name,
locked_mode,
object_name,
object_type
from
v$locked_object a,dba_objects b
where
a.object_id = b.object_id
select s.sid, p.spid, s.status,s.process,s.osuser, a.sql_text, p.program
from
v$session s, v$sqlarea a, v$process p
where
s.sql_hash_value=a.hash_value
and s.sql_address=a.address
and s.paddr=p.addr
and s.status='ACTIVE';
The views are owned by the SYS user. You can query $V$FIXED_TABLE to see all the view names.Read consistency is not guaranteed.
More complicated example:
Oracle Session I/O
New Performance Views to Identify Problem SQL
worka: Ubuntu enable ipv4 forwarding
cat /proc/sys/net/ipv4/ip_forward
or
sysctl net | grep ip_forward
0=disabled
1=enabled
So add this to the /etc/sysctl.conf file
net.ipv4.ip_forward=1
cat /proc/sys/net/ipv4/ip_forward
or
sysctl net | grep ip_forward
0=disabled
1=enabled
So add this to the /etc/sysctl.conf file
net.ipv4.ip_forward=1
05/23: Linux > Ubuntu ブート順を変更する
05/23: Windows > XP Mounting ISO
05/19: Linux > network
05/19: Linux > routing
IPマスカレードでルータにする -ipchains-
"FORWARD_IPV4=yes" となっていればOKだ。
また、kernel 2.4 以降の場合は下記の部分にも注意。
/etc/sysctl.conf の net.ipv4.ip_forward = 0 を 1 に変更する。
さて、これで準備が整った。
実際にIPマスカレードを有効にするには・・・
#ipchains -P forward DENY
#ipchains -A forward -s 192.168.1.0/24 -d 0.0.0.0/0 -j MASQ
とする。
"FORWARD_IPV4=yes" となっていればOKだ。
また、kernel 2.4 以降の場合は下記の部分にも注意。
/etc/sysctl.conf の net.ipv4.ip_forward = 0 を 1 に変更する。
さて、これで準備が整った。
実際にIPマスカレードを有効にするには・・・
#ipchains -P forward DENY
#ipchains -A forward -s 192.168.1.0/24 -d 0.0.0.0/0 -j MASQ
とする。
05/12: Oracle > timeout
ORA-12170: TNS: Connect timeout occurred tips
/u01/app/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora
/u01/app/oracle/product/10.2.0/db_1/network/log
Redhat/FedoraのIP設定ファイル
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/route-eth0
/etc/host.conf
/etc/nsswitch.conf
/etc/hosts
/etc/resolv.conf
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/route-eth0
/etc/host.conf
/etc/nsswitch.conf
/etc/hosts
/etc/resolv.conf
05/03: Java > Process size check
•Linux: ps -p -o `cmd vsz'
•Win: perfmon
システムのクラッシュ
Windows
Windows ツールの perfmon を使用して、PrivateBytes プロセス カウンタを記録します。JVM プロセスで予約された仮想メモリの量に関する情報を収集してください。次の手順に従います。
1. [管理ツール] の [パフォーマンス モニタ] を開きます。
2. [+] をクリックして [カウンタの追加] ダイアログ ボックスを開きます。
3. [パフォーマンス オブジェクト] ドロップダウン リストを開いて [Process] をクリックします。
4. [Process] のリストから [Private Bytes] のカウンタを選択します。
5. 監視するプロセスを選択して [追加] をクリックします。
Linux
仮想メモリの使用状況を、一定の間隔で記録するためのスクリプトを作成します。以下に例を示します。
top -b -n 10 > virtualmemory.log
このスクリプトは 10 秒おきに「top」を実行し、そのデータを virtualmemory.log ファイルに記録します。実行中の全プロセスの仮想メモリ使用量が、このファイルの VIRT 列に記録されます。現在の状態だけを確認するには、top と入力して〔Shift〕+〔M〕を押し、出力をメモリ使用量でソートします。これで、通常は JVM プロセスが出力の一番上に並びます。
Virtualmemory.log のような記録を作成すると、JRockit JVM プロセスによってメモリ使用量が実際に増加していることを確認でき、それを BEA サポートに証拠として提示できるので便利です。
•Win: perfmon
システムのクラッシュ
Windows
Windows ツールの perfmon を使用して、PrivateBytes プロセス カウンタを記録します。JVM プロセスで予約された仮想メモリの量に関する情報を収集してください。次の手順に従います。
1. [管理ツール] の [パフォーマンス モニタ] を開きます。
2. [+] をクリックして [カウンタの追加] ダイアログ ボックスを開きます。
3. [パフォーマンス オブジェクト] ドロップダウン リストを開いて [Process] をクリックします。
4. [Process] のリストから [Private Bytes] のカウンタを選択します。
5. 監視するプロセスを選択して [追加] をクリックします。
Linux
仮想メモリの使用状況を、一定の間隔で記録するためのスクリプトを作成します。以下に例を示します。
top -b -n 10 > virtualmemory.log
このスクリプトは 10 秒おきに「top」を実行し、そのデータを virtualmemory.log ファイルに記録します。実行中の全プロセスの仮想メモリ使用量が、このファイルの VIRT 列に記録されます。現在の状態だけを確認するには、top と入力して〔Shift〕+〔M〕を押し、出力をメモリ使用量でソートします。これで、通常は JVM プロセスが出力の一番上に並びます。
Virtualmemory.log のような記録を作成すると、JRockit JVM プロセスによってメモリ使用量が実際に増加していることを確認でき、それを BEA サポートに証拠として提示できるので便利です。
05/03: Java > Heap
How to fix "java.lang.OutOfMemoryError: unable to create new native thread"
For Java 1.5 I get the following results assuming that the OS reserves about 120MB:
1.5GB allocated to JVM: (2GB-1.5Gb-120MB)/(1MB) = ~380 threads
1.0GB allocated to JVM: (2GB-1.0Gb-120MB)/(1MB) = ~880 threads
Java 1.4 uses 256kb for the thread stack which lets you create a lot more threads:
1.5GB allocated to JVM: ~1520 threads
1.0GB allocated to JVM: ~3520 threads
For Java 1.5 I get the following results assuming that the OS reserves about 120MB:
1.5GB allocated to JVM: (2GB-1.5Gb-120MB)/(1MB) = ~380 threads
1.0GB allocated to JVM: (2GB-1.0Gb-120MB)/(1MB) = ~880 threads
Java 1.4 uses 256kb for the thread stack which lets you create a lot more threads:
1.5GB allocated to JVM: ~1520 threads
1.0GB allocated to JVM: ~3520 threads