I have applied interim patches to the Oracle installations for Linux, Windows and Solaris, but only in the HP-UX, I have encountered the problem of hung processes. May be I am just lucky that I didn't encounter the error in other operating systems.
I was applying July CPU patch on 10.2.0.4 installation, when running the opatch napply, I came across the following error:
The following make actions have failed :
Re-link fails on target "client_sharedlib".
Re-link fails on target "client_sharedlib".
Also there were some warnings about the busy text files.
In this case, check the hung oracle process through this command and kill them:
prod:oracle:xxx ) ps -fu oracle|grep sqlplus
oracle 13694 4346 0 Aug 31 pts/3 0:00 sqlplus e4@prod
prod:oracle:xxx ) kill -9 13694
Re run the opatch, and it will go like a breeze, hopefully.
Exadata is the Ferrari of the technology world. It’s considered the technology for the select few, but everyone dreams about it. There is very little information available on the Internet right now about the architecture and the administration of Exadata, though it’s a huge subject in itself, which demand numerous high quality books, dedicated blogs, websites and special interest groups.
This blog post just mentions some of very important components of Exadata Storage Server, which are physical disks, cell disks, grid disks and ASM disks and their correspondence.
The Exadata Storage Server contains 12 physical disks.
There is one to one relationship between a physical disk and the cell disk. One physical disk corresponds to a single cell disk.
Then a Grid disk comprises of many cell disks.
And a Grid disk corresponds to one ASM disk.
An ASM diskgroup comprises of many ASM disks.
On the Exadata Storage Server, We can use cellcli command line utility in Exadata to see the information about physical disks, cell disks, grid disks and the cell.
The cellcli utility works from the root, celladmin and cellmonitor (read-only) users. The best practice is actually to run it from the last two less-privileged users, and not from the root user.
Now let’s have look at some of the disk management commands using cellcli utility.
1
[root@mycell-net0 ~]# cellcli
2
CellCLI: Release 11.2.1.3.1 - Production on Fri Oct 29 07:47:26 GMT 2010
3
4
Copyright (c) 2007, 2009, Oracle. All rights reserved.
5
Cell Efficiency Ratio: 140
Just to give you an idea about what cellcli has on offer, look at the output of the help command:
01
CellCLI> help
02
03
HELP [topic]
04
Available Topics:
05
ALTER
06
ALTER ALERTHISTORY
07
ALTER CELL
08
ALTER CELLDISK
09
ALTER GRIDDISK
10
ALTER IORMPLAN
11
ALTER LUN
12
ALTER THRESHOLD
13
ASSIGN KEY
14
CALIBRATE
15
CREATE
16
CREATE CELL
17
CREATE CELLDISK
18
CREATE FLASHCACHE
19
CREATE GRIDDISK
20
CREATE KEY
21
CREATE THRESHOLD
22
DESCRIBE
23
DROP
24
DROP ALERTHISTORY
25
DROP CELL
26
DROP CELLDISK
27
DROP FLASHCACHE
28
DROP GRIDDISK
29
DROP THRESHOLD
30
EXPORT CELLDISK
31
IMPORT CELLDISK
32
LIST
33
LIST ACTIVEREQUEST
34
LIST ALERTDEFINITION
35
LIST ALERTHISTORY
36
LIST CELL
37
LIST CELLDISK
38
LIST FLASHCACHE
39
LIST FLASHCACHECONTENT
40
LIST GRIDDISK
41
LIST IORMPLAN
42
LIST KEY
43
LIST LUN
44
LIST METRICCURRENT
45
LIST METRICDEFINITION
46
LIST METRICHISTORY
47
LIST PHYSICALDISK
48
LIST THRESHOLD
49
SET
50
SPOOL
51
START
Let’s see the output of some of the commands listed above:
01
CellCLI> list physicaldisk detail
02
03
name: [5:3:2:0]
04
diskType: FlashDisk
05
id: 00000200000000000000
06
luns: 1_2
07
makeModel: "MARVELL SD88SA02"
08
physicalFirmware: D20R
09
physicalInsertTime: 2010-10-04T21:05:46+00:00
10
physicalInterface: sas
11
physicalSerial: 0000000000000000000
12
physicalSize: 22.8880615234375G
13
slotNumber: "PCI Slot: 1; FDOM: 2"
14
status: normal
15
01
CellCLI> list cell detail
02
03
name: mycellnet0
04
bmcType: IPMI
05
cellVersion: OSS_11.2.0.1.0_LINUX.X64_100818.1
06
cpuCount: 16
07
fanCount: 12/12
08
fanStatus: normal
09
id: 0000X00000
10
interconnectCount: 3
11
interconnect1: bond0
12
iormBoost: 0.0
13
ipaddress1:
14
kernelVersion: 2.6.18-194.3.1.0.2.el5
15
makeModel: SUN MICROSYSTEMS SUN FIRE X4275 SERVER SAS
16
metricHistoryDays: 7
17
notificationMethod: snmp
18
notificationPolicy: critical,warning,clear
19
offloadEfficiency: 47,485.1
20
powerCount: 2/2
21
powerStatus: normal
22
smtpFrom:
23
smtpFromAddr:
24
smtpPort:
25
smtpServer:
26
smtpToAddr:
27
smtpUseSSL:
28
snmpSubscriber:
29
status: online
30
temperatureReading: 27.0
31
temperatureStatus: normal
32
upTime: 16 days, 14:01
33
cellsrvStatus: running
34
msStatus: running
35
rsStatus: running
36
01
CellCLI> list celldisk detail
02
03
name: FD_15_mycellnet0
04
comment:
05
creationTime: 2010-07-14T02:05:06+00:00
06
deviceName: /dev/sdy
07
devicePartition: /dev/sdy
08
diskType: FlashDisk
09
errorCount: 0
10
freeSpace: 0
11
id: 00000000-0000-0000-0000-000000000000
12
interleaving: none
13
lun: 5_3
14
size: 22.875G
15
status: normal
16
01
CellCLI> list griddisk detail
02
03
name: CD_15_mycellnet0
04
availableTo:
05
cellDisk: CD_15_mycellnet0
06
comment:
07
creationTime: 2010-07-14T02:12:55+00:00
08
diskType: FlashDisk
09
errorCount: 0
10
id: 00000000-0000-000-0000-000000000000
11
offset: 528.734375G
12
size: 29.125G
13
status: active
In the future posts, I will be touching the administration of celldisks, as how to perform operations like (import/export/create/drop/alter) on the celldisks.
The post was originally published by me at Pythian's Blog.
One of the most popular and in-demand software in the Pakistan is the Oracle database, Oracle development Tools, E-Business System, and lately the Oracle middleware products.
The quantity of Oracle professionals is increasing in Pakistan steadily. Quality is bit compromising, because many of the Oracle aspirants are confused as how to pursue their career. Given the wide range of Oracle technologies and limited training opportunities and very competitive small market, it becomes hard and frustrating for the fresh graduates to the beginner professionals to make the career decisions within Oracle technologies.
Students, fresh graduates and budding professionals think that getting certification is the surefire guaranteed way to get the job. That is not true. Certification looks good on your resume and it helps increasing your chances, but it is not a token for getting the job. This is one of the first misconception which needs to be addressed.
Secondly, don't make the decision just by fluke about getting certification. Becoming a DBA or Developer, or E-Business Consultant, or Middleware Professional is very important one and would go with your career. You should first determine your aptitude, market situation, the plus and negative attached to these pathways and then go about it. Discuss it with the existing developers, DBAs and other professionals. Ask from yourself and be honest, and only then choose the path. You must not try to be many things at a time. You can either be a full time DBA or a full time developer.
Now how to prepare for the certification. You need just three things to get prepared:
Reading Documentation from otn.oracle.com about the product in which you are getting certified. Downloading that product from the otn.oracle.com and practice like there is no tomorrow. Attending a course w.r.t that product from Oracle University
There is no need to waste your money on the institutes offering you courses for certifications just round the corner in flashy banners or advertisements on your local cable channel. They will waste your time and money and will pose like Oracle is something very complex and hard thing to learn. That is simply not true. Yes, there is no short cut, but it's a fun and rewarding field.
So, read the documentation again and again, practice what you read. Get the content of your certification and then again read about them and practice it. Visit the forums and the blogs. Ask questions, give answers, play around with the software and take it easy. And yes, Please avoid the dumps and other illegal things, because they will not get you anywhere in your career.
I have put some text files in a directory '/u01/network'
I want to create a ftp user which can just read the files in the network directory. The ftp user shouldn't be able to navigate or see any other directory outside of the network directory.
The user ftp_usr is the owner of /u01/network directory.
Yesterday, I concluded yet another of my courses in Urdu regarding Oracle Database Administration. It was a free course at the local study center of AIOU, and ran for 5 working days, 4 hours a day. The medium of course was Urdu language, and it went so smoothly.
The course covered the Oracle 11.1 on OEL 5, and encompassed installation, backup/recovery, monitoring and architecture. The course was intended for 8 people but in a pleasant surprise, more than 15 people turned up, and we had to switch to a bigger room.
Given the scarce resources, it was a huge success I reckon. I propped my laptop high on the rostrum, as there was no projector or multimedia and the attendees circled it. Their enthusiasm and interest for the Oracle was awe-inspiring and I myself learned a lot.
Looking forward conducting a similar course yet again due to numerous requests after Eid holidays.
Well, it's not yet publicly available, but if you are one of those lucky rare ones to have access to the Exadata, then you can find it at /usr/share/doc/oracle/Exadata, as Marc Fielding of Pythian graciously points out here. And yes he also has found that the documentation for the Exadata V1 is out for the public.
I was doing patching for a client and was at my first encounter with the HP-UX system. The patching failed due to the space shortage at the mount point. I tried to check the space through df -h and voila there was no such command.......
df -h is so natural with the Solaris and Linux, but why there is isn't so in the HP-UX and one has to calculate the KBs to get the GBs and TBs?
Please enlighten me if the latest versions of the HP-UX have that functionality.
Following is script from notes to generate the queries to resize the data files:
select 'alter database datafile'||' '''||file_name||''''||' resize '||round(highwater+2)||' '||'m'||';' from ( select /*+ rule */ a.tablespace_name, a.file_name, a.bytes/1024/1024 file_size_MB, (b.maximum+c.blocks-1)*d.db_block_size/1024/1024 highwater from dba_data_files a , (select file_id,max(block_id) maximum from dba_extents group by file_id) b, dba_extents c, (select value db_block_size from v$parameter where name='db_block_size') d where a.file_id= b.file_id and c.file_id = b.file_id and c.block_id = b.maximum order by a.tablespace_name,a.file_name);