-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathasmd.sql
More file actions
220 lines (193 loc) · 6.37 KB
/
asmd.sql
File metadata and controls
220 lines (193 loc) · 6.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
SET LINES 1000 FEED OFF
COL PATH FORMAT A30
COL LABEL FORMAT A20
COL GROUP_NUMBER FORMAT 99 HEAD "G#"
COL VOLUME_NUMBER FORMAT 99 HEAD "V#"
COL NUM_VOL FORMAT 99 HEAD "V#"
COL DISK_NUMBER FORMAT 99 HEAD "D#"
COL FILE_NUMBER FORMAT 999 HEAD "F#"
COL FS_NAME FORMAT A30
COL MOUNTPATH FORMAT A30
COL VOLUME_DEVICE FORMAT A30
COL FAILGROUP FORMAT A14 HEAD FGROUP
COL COMPATIBILITY FORMAT A12
COL DATABASE_COMPATIBILITY FORMAT A12
COL FILE_NAME FORMAT A34
COL FILE_TYPE FORMAT A20
COL GROUP_NAME FORMAT A17
COL DISK_NAME FORMAT A28 HEAD DISK_NAME
COL LABEL_NAME FORMAT A28 HEAD LABEL_NAME
COL VOLUME_NAME FORMAT A20 HEAD VOLUME_NAME
COL VOTING FORMAT A6
COL INSTANCE FORMAT A12
COL DB_CLIENT FORMAT A12
COL SOFTWARE FORMAT A12
COL COMPATIBLE FORMAT A12
COL COMPATIBLE_ASM FORMAT A11 HEAD "COMPATIBLE|ASM"
COL COMPATIBLE_RDBMS FORMAT A11 HEAD "COMPATIBLE|RDBMS"
COL COMPATIBLE_ADVM FORMAT A11 HEAD "COMPATIBLE|ADVM"
COL REPAIR_TIME FORMAT A7 HEAD "REPAIR|TIME"
PROMPT
PROMPT ===============> ASM DISKGROUPS
-- sql original
SELECT
GROUP_NUMBER
,NAME GROUP_NAME
,STATE
,TYPE
,ROUND(TOTAL_MB/1024) TOTAL_GB
,ROUND(FREE_MB/1024) FREE_GB
,ROUND(COLD_USED_MB/1024) COLD_USED_GB
,ROUND(USABLE_FILE_MB/1024) USABLE_GB
,SECTOR_SIZE
,BLOCK_SIZE
,ALLOCATION_UNIT_SIZE
,REQUIRED_MIRROR_FREE_MB
,OFFLINE_DISKS
,COMPATIBILITY
,DATABASE_COMPATIBILITY
,VOTING_FILES
FROM V$ASM_DISKGROUP
ORDER BY 1
.
-- nova visão - flavio
SELECT
D.GROUP_NUMBER
,D.NAME GROUP_NAME
,CASE D.STATE WHEN 'CONNECTED' THEN 'MOUNTED' ELSE D.STATE END STATE
,D.TYPE
,ROUND(D.TOTAL_MB/1024) OS_TOTAL_GB
,ROUND(D.TOTAL_MB/1024/(CASE TYPE WHEN 'EXTERN' THEN 1 WHEN 'NORMAL' THEN 2 ELSE 3 END)) TOTAL_GB
,ROUND(D.COLD_USED_MB/1024/(CASE TYPE WHEN 'EXTERN' THEN 1 WHEN 'NORMAL' THEN 2 ELSE 3 END)) USED_GB
,ROUND(D.FREE_MB/1024/(CASE TYPE WHEN 'EXTERN' THEN 1 WHEN 'NORMAL' THEN 2 ELSE 3 END)) FREE_GB
,ROUND(D.REQUIRED_MIRROR_FREE_MB/1024/(CASE TYPE WHEN 'EXTERN' THEN 1 WHEN 'NORMAL' THEN 2 ELSE 3 END)) MIRROR_GB
,ROUND(D.USABLE_FILE_MB/1024) USABLE_GB
,(SELECT VALUE FROM V$ASM_ATTRIBUTE A WHERE D.GROUP_NUMBER = A.GROUP_NUMBER AND NAME = 'disk_repair_time' ) REPAIR_TIME
,(SELECT VALUE FROM V$ASM_ATTRIBUTE A WHERE D.GROUP_NUMBER = A.GROUP_NUMBER AND NAME = 'compatible.asm' ) COMPATIBLE_ASM
,(SELECT VALUE FROM V$ASM_ATTRIBUTE A WHERE D.GROUP_NUMBER = A.GROUP_NUMBER AND NAME = 'compatible.rdbms' ) COMPATIBLE_RDBMS
,(SELECT VALUE FROM V$ASM_ATTRIBUTE A WHERE D.GROUP_NUMBER = A.GROUP_NUMBER AND NAME = 'compatible.advm' ) COMPATIBLE_ADVM
FROM V$ASM_DISKGROUP D
ORDER BY 1
/
PROMPT
PROMPT ===============> ASM VOLUMES
SELECT
GROUP_NUMBER
,VOLUME_NUMBER
,VOLUME_NAME
,ROUND(SIZE_MB/1024) SIZE_GB
,VOLUME_DEVICE
,MOUNTPATH
,STATE
,REDUNDANCY
,STRIPE_COLUMNS
,STRIPE_WIDTH_K
,COMPOUND_INDEX
,FILE_NUMBER
,INCARNATION
,DRL_FILE_NUMBER
,RESIZE_UNIT_MB
,USAGE
FROM V$ASM_VOLUME
/
PROMPT
PROMPT ===============> ASM FILESYSTEMS
SELECT
NUM_VOL
,FS_NAME
,AVAILABLE_TIME
,BLOCK_SIZE
,STATE
,CORRUPT
,ROUND(TOTAL_SIZE/1024) SIZE_GB
,ROUND(TOTAL_FREE/1024) FREE_GB
,TOTAL_SNAP_SPACE_USAGE
FROM V$ASM_FILESYSTEM
/
PROMPT
PROMPT ===============> ASM CLIENTS
SELECT
dg.name GROUP_NAME
,SUBSTR(c.instance_name,1,12) AS instance
,rpad(c.db_name,12,' ') DB_CLIENT
,SUBSTR(c.SOFTWARE_VERSION,1,12) AS software
,SUBSTR(c.COMPATIBLE_VERSION,1,12) AS compatible
FROM V$ASM_DISKGROUP dg
JOIN V$ASM_CLIENT c ON (dg.group_number = c.group_number)
/
PROMPT
PROMPT ===============> ASM DISKS
SELECT
D.GROUP_NUMBER
,D.HEADER_STATUS ST_HEADER
,( SELECT G.NAME FROM V$ASM_DISKGROUP G WHERE G.GROUP_NUMBER = D.GROUP_NUMBER ) GROUP_NAME
,D.DISK_NUMBER
,D.NAME DISK_NAME
--,D.LABEL LABEL_NAME
,D.PATH
,D.FAILGROUP
,ROUND(D.OS_MB/1024) OS_GB
,ROUND(D.FREE_MB/1024) USABLE_GB
,D.MODE_STATUS ST_MODE
,D.FAILGROUP_TYPE
,RPAD(CASE WHEN D.VOTING_FILE = 'Y' THEN 'YES' ELSE 'no' END,6, ' ' ) VOTING
,D.STATE
,D.READS
,D.WRITES
,D.READ_TIME
,D.WRITE_TIME
,D.SECTOR_SIZE
,D.REDUNDANCY
,D.CREATE_DATE
,D.MOUNT_DATE
FROM V$ASM_DISK D
ORDER BY GROUP_NUMBER, DISK_NUMBER
/
PROMPT
PROMPT ===============> ASM FILES
SELECT
A.GROUP_NUMBER
,( SELECT G.NAME FROM V$ASM_DISKGROUP G WHERE G.GROUP_NUMBER = A.GROUP_NUMBER ) GROUP_NAME
,A.FILE_NUMBER
,F.TYPE FILE_TYPE
,A.NAME FILE_NAME
,ROUND(F.BYTES/1024/1024) SIZE_MB
,ROUND(F.SPACE/1024/1024) SPACE_MB
,F.PERMISSIONS
,F.BLOCK_SIZE
,F.BLOCKS
,F.REDUNDANCY
,F.STRIPED
,F.CREATION_DATE
,F.MODIFICATION_DATE
,F.PRIMARY_REGION
,F.MIRROR_REGION
,A.ALIAS_INDEX
,A.ALIAS_INCARNATION
,A.SYSTEM_CREATED
,A.ALIAS_DIRECTORY
,A.FILE_INCARNATION
FROM V$ASM_FILE F
JOIN V$ASM_ALIAS A
ON ( A.GROUP_NUMBER = F.GROUP_NUMBER AND A.FILE_NUMBER = F.FILE_NUMBER AND A.FILE_INCARNATION = F.INCARNATION )
WHERE A.SYSTEM_CREATED = 'Y'
ORDER BY 1, 3
.
PROMPT
PROMPT ===============> ASM OPERATIONS
SELECT * FROM GV$ASM_OPERATION;
PROMPT
SET LINES 300 PAGES 300
COL PATH FORMAT A30
COL LABEL FORMAT A30
SELECT GROUP_NUMBER, NAME, STATE FROM V$ASM_DISKGROUP
ORDER BY GROUP_NUMBER
.
SET LINES 300 PAGES 300
COL LABEL_PATH FORMAT A40
SELECT NVl(LABEL, 'PATH:' || PATH ) LABEL_PATH, CREATE_DATE, MOUNT_DATE, DISK_NUMBER, MOUNT_STATUS
, HEADER_STATUS, MODE_STATUS, STATE, FAILGROUP_TYPE
FROM V$ASM_DISK
--WHERE GROUP_NUMBER = 0
ORDER BY GROUP_NUMBER, HEADER_STATUS
.