ORACLE 10 g学習ノート(四)
1.CPUリソースを最も消費するSQL文をリアルタイムで問い合わせる
2. dblink
3.正規表現
例
4.Unix基本コマンド
例
1. top spid
2. ID, ,sqlID :
select sid,serial#,machine,username,program,sql_hash_value,sql_id,
to_char(logon_time,'yyyy/mm/dd hh24:mi:ss') as login_time from v$session
where paddr in (select addr from v$process where spid in ('5648612','256523'));
3. sql_id hash_value , v$sqlarea sql
select sql_text
from v$sqltext_with_newlines
where hash_value = &hash_value
order by piece;
select * from v$sql where sql_id=''
2. dblink
create database link ORC
connect to SUNCPS identified by "123456"
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.6.1.36)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)';
3.正規表現
1) REGEXP_LIKE : LIKE
2) REGEXP_INSTR : INSTR :
3) REGEXP_SUBSTR : SUBSTR :
4) REGEXP_REPLACE : REPLACE
‘%’ ‘_’。
'^' , , 。
'$' 。 RegExp Multiline , $ 'n' 'r'。
'.' n 。
'?' 。
'+' 。
'*' 。
'|' 。 '^([a-z]+|[0-9]+)$' 。
'( )' 。
'[]' 。
'{m,n}' ,m=< <=n,'{m}' m ,'{m,}' m 。
num num, num 。 。
:
[[:alpha:]] 。
[[:digit:]] 。
[[:alnum:]] 。
[[:space:]] 。
[[:upper:]] 。
[[:lower:]] 。
[[:punct:]] 。
[[:xdigit:]] 16 , [0-9a-fA-F]。
1.
2. (), (?:), (?=), []
3. *, +, ?, {n}, {n,}, {n,m}
4. ^, $, anymetacharacter
5. | “ ”
例
、REGEXP_LIKE
/* Formatted on 2009/11/11 19:03 (Formatter Plus v4.8.8) */
SELECT *
FROM scott.emp
WHERE REGEXP_LIKE (ename, '^a{1,3}');
SELECT *
FROM scott.emp
WHERE REGEXP_LIKE (ename, 'a{1,2}');
SELECT *
FROM scott.emp
WHERE REGEXP_LIKE (ename, '^a.*e$');
SELECT *
FROM scott.emp
WHERE REGEXP_LIKE (ename, '^[[:lower:]]|[[:digit:]]');
SELECT *
FROM scott.emp
WHERE REGEXP_LIKE (ename, '^[[:lower:]]');
SELECT sal
FROM scott.emp
WHERE REGEXP_LIKE (sal, '[^[:digit:]]');
SELECT sal
FROM scott.emp
WHERE REGEXP_LIKE (sal, '^[^[:digit:]]');
、REGEXP_INSTR
/* Formatted on 2009/11/11 19:03 (Formatter Plus v4.8.8) */
SELECT REGEXP_INSTR (ename, '[[:digit:]]$')
FROM scott.emp;
SELECT REGEXP_INSTR (mc, '[[:digit:]]+$')
FROM scott.emp;
SELECT REGEXP_INSTR ('The price is $400.', '$[[:digit:]]+')
FROM DUAL;
SELECT REGEXP_INSTR ('onetwothree', '[^[[:lower:]]]')
FROM DUAL;
SELECT REGEXP_INSTR (',,,,,', '[^,]*')
FROM DUAL;
SELECT REGEXP_INSTR (',,,,,', '[^,]')
FROM DUAL;
、REGEXP_SUBSTR
/* Formatted on 2009/11/11 19:04 (Formatter Plus v4.8.8) */
SELECT REGEXP_SUBSTR (ename, '[a-z]+')
FROM scott.emp;
SELECT REGEXP_SUBSTR (sal, '[0-9]+')
FROM scott.emp;
SELECT REGEXP_SUBSTR ('aababcde', '^a.*b')
FROM DUAL;
、REGEXP_REPLACE
/* Formatted on 2009/11/11 19:06 (Formatter Plus v4.8.8) */
SELECT REGEXP_REPLACE ('Joe Smith', '(){2,}', ',') AS rx_replace
FROM DUAL;
SELECT REGEXP_REPLACE ('aa bb cc', '(.*) (.*) (.*)', '3, 2, 1')
FROM DUAL;
4.Unix基本コマンド
ps--
grep--
mailx-- mail
cat--
cut--
awk--
df--
例
1. :
$ ps -ef| grep smon
2. :
$ ps -ef grep listener grep -v grep
(grep -i , grep -i listener, , listener , )
$ ps -ef|grep -i listener
3. Oracle
$ df -k | grep /data
4. alter.log :
$ cat alert_PPRD10.log | wc -l
$ more alert_PPRD10.log | wc -l
5. alert.log Oracle :
$ grep ORA-* alert.log
6. CRONTAB
crontab :
0-59
0-23
1-31
1 - 12
0 - 6, with 0 = Sunday
7. Unix Shell
crontab , : Crontab -e
crontab , : Crontab -l
0 4 * * 5 /dba/admin/analyze_table.ksh
30 3 * * 3,6 /dba/admin/hotbackup.ksh /dev/null 2>&1
, 5 4:00am 。 3:00a.m. 。