Go Premium for a chance to win a PS4. Enter to Win


Getting upgrade progress information

Posted on 2006-07-06
Medium Priority
Last Modified: 2012-08-13
Hi all,

I am upgrading a database from 8i to 9i running under Solaris.  The database is about 50GB and I want to know what the process is doing instead of just trusting the progress bar, which seems to get stuck for long periods of times without any changes.

Is there anything that can tell me what the upgrade is doing?  I really need to monitor that the upgrade is progressing and it is not stuck in a loop or something.

Many thanks,

Question by:fidoly
LVL 19

Expert Comment

ID: 17054642
Is there any log file when you do the upgrade? you could possibly see the log file.

LVL 16

Expert Comment

ID: 17056190
Using monotoring tools check CPU and disk activities.

vmstat for CPU, memory utilization , and disk-I/O
iostat to determine if there is a disk bottleneck
netstat to monitor critical network activity
sar, or system activity reporter is most useful for capacity planning and trend analysis

LVL 48

Accepted Solution

schwertner earned 2000 total points
ID: 17056475
The disk activity is the most important sign what happens.
You have to use the monitoring tools of Solaris.

Most Common OS Commands and Utilities for Sun Solaris


             The Solaris operating system provides many system
             monitoring tools. Several, mostly used and sometimes
             misunderstood utilities, will be explained.


           The most common used utilities:

                1) ps -ef
                2) vmstat
                3) sar
                4) mpstat
                5) netstat
                6) nfsstat
                7) adb

1) ps -ef

  The most common and quick view of process information is the "ps" command
  By using this command you can identify processes using resources to narrow down
  the ones causing problems.
  It gives a high level summary of the status of processes and as many options.
  Good for setting OS priorities

          NOTE: the BSD version of PS (/usr/ucb/ps) produces the
                best performance related data compared to the "top" command.
                Actually, when using "top" the top process is actually the "top"
                process itself.
        $ /usr/ucb/ps -aux

        USER       PID %CPU %MEM   SZ  RSS TT       S    START  TIME COMMAND

        root     21573  7.6  0.5 1608 1392 pts/3    O 14:38:47  0:01 /usr/ucb/ps -aux

        root         3  1.2  0.0    0    0 ?        S   Feb 24 802:00 fsflush

        rsupport 20510  0.1 20.69351255744 ?        S   Apr 12  1:35 ora_ckpt_R815

        root         0  0.0  0.0    0    0 ?        T   Feb 24  0:01 sched

        root         1  0.0  0.1 1312  272 ?        S   Feb 24  1:22 /etc/init -

        root         2  0.0  0.0    0    0 ?        S   Feb 24  0:01 pageout

2) vmstat

      The vmstat (virtual memory statistics) focuses mainly on CPU and memory.
      It has 5 different reports, including one on limited disk activity.
      vmstat is similar to sar.
      Covers: process, interrupt, CPU cache, CPU activity, virtual memory
              and swapping.

      $ vmstat 2
      procs     memory            page            disk          faults      cpu
      r b w   swap  free  re  mf pi po fr de sr s0 s1 s2 s3   in   sy   cs us sy id
      0 0 0   1500  1228   0   2  0  1  1  0  0  0  0  1  0   52  327  102  4  2 94
      0 0 0 1421020 20556  0   4  0  0  0  0  0  0  0  0  0   31   23   18  0  1 98
      0 0 0 1421020 20556  0   0  0  0  0  0  0  0  0  1  0   29   32   20  0  0 100
      0 0 0 1421020 20556  0   0  0  0  0  0  0  0  0  1  0   36   22   17  0  2 98

         NOTE: free  free memory in Kbytes
               swap  amount of swap in Kbytes, this is virtual swap. different
                     from the sar output.
               us    Percentage of user time
               sy    Percentage of system time
               id    Percentage of idle time
               r     the number of kernel threads in the dispatch(run) queue.
                     number of runnable processes not running
               b     The number of blocked kernel threads waiting for resources
                     I/o paging. The number of processes waiting for I/O to complete.
               cs    CPU context switches.

3) sar

   The sar (system activity reporter) provides a number of monitoring tools:
       General data collection 16 different types:
                     1)File system and system calls
                     2)Physical memory usage,paging, swapping and
                       kernel memory
                     3)Block device activity and TTY activity
                     4)Process table status
                     5)CPU usage

                are some of the major collection activities.

       The sar command is the only performance monitor tool that provides
       usable lifetime performance data. "sar -v" is a good example of this

       $ sar -v 10 2

         SunOS suppsun3 5.6 Generic_105181-14 sun4m    04/14/00

         15:18:40  proc-sz    ov  inod-sz    ov  file-sz    ov   lock-sz
         15:18:50   62/4314    0 20179/20179    0  415/415     0    0/0  
         15:19:00   62/4314    0 20179/20179    0  415/415     0    0/0

                  proc-sz   the number of process entries currently being used
                            compared to the maximum# of process allocated(max_nprocs)

            sar -r is a good place to start
                sar -c for system call info
                sar -u for CPU utilization
                sar -q run queue length
                sar -w reports system swapping

         $ sar -r -o sar.txt 10 2

           SunOS suppsun3 5.6 Generic_105181-14 sun4m    04/14/00

           15:08:59 freemem freeswap
           15:09:09    5044  2832949
           15:09:19    5049  2835776

           Average     5046  2834362

          NOTE: FREEMEM   This is free memory in pages(8k pages usually)
                FREESWAP  This is free swap in blocks, unallocated physical

       *** If you start sar with just "sar -<switch>" you will get the following

            $ sar -r
            sar: can't open /var/adm/sa/sa14

            No such file or directory

4) mpstat

     The mpstat (multiprocessor statistics) command provides information for individual
     CPU's. Gives CPU utilization and frequency of interrupts, page faults, and locking.
     Not usually used for day to day monitoring but can be useful for
     unusual behaviour in monitoring the source of the problem

     Does not show info on processor activity

      $ mpstat 2
      CPU minf mjf xcal  intr ithr  csw icsw migr smtx  srw syscl  usr sys  wt idl
       0    2   0    0   152   52  102    5    0    0    0   327    4   2   1  93
       0    4   0    0   124   24   15    0    0    0    0    19    0   0   0 100
       0    0   0    0   159   59   24    0    0    0    0    27    0  10   2  88
       0    0   0    0   132   32   16    0    0    0    0    10    0   0   0 100  

          Main things to look at:
                 csw   context switches
                icsw   Involuntary context switches. If this is high
                       then there is alot of pre-empted processes(Processes
                       cannot get CPU slots to do work)

5) netstat

      The netstat(network statistics) command reports network utilization
      info , including socket usage, Dynamic Host Configuration Protocol(DHCP)
      and traffic utility.
      the output can be difficult to interpret for a system with many network

              netstat -i Used to show the number of packets transmitted
                         and received by each interface.    
              netstat -s Detailed counts for every low_level TCP, User Datagram
              netstat -a Shows state of all sockets
              netstat -d Shows all Interfaces under DHCP control
              netstat -g Multicast group memberships
              netstat -k Show kernel memory allocation (NOT DOCUMENTED)
              netstat -m Show stream statistics
              netstat -n Show network addresses as numbers not names
              netstat -r Show the routing tables

        $ netstat -I hme0 2
        input   hme0      output           input  (Total)    output
    packets errs  packets errs  colls  packets errs  packets errs  colls
    0       0     0       0     0      44958833 5287771 32954520 1     32100
    0       0     0       0     0      7       3     2       0     0    
    0       0     0       0     0      4       1     2       0     0    
    0       0     0       0     0      7       4     2       0     0  

6) nfsstat

      The nfsstat (NFS statistics) command has six options to show system
      NFS activity. Provides host and client info. Remote Procedure Call info
      is also provided for RDBMS issues.

      Can be used to re-initialize statistical info about RPC calls to the kernel.
      If no options are given, the default command is nfsstat -cnrs, which displays
      everything and re-initializes nothing.

            nfsstat -c Shows client info only
            nfsstat -m Shows NFS mount options
            nfsstat -n Shows NFS info both client and server
            nfsstat -r Show RPC info
            nfsstat -s show server info only

7) adb

      There is a kernel utility called "adb" that enables you to look at and
        alter the values of most kernel parameters. This is not very user
        friendly but can let a user inspect a running system.

      The adb utility makes changes to a running system
      For example: The adb utility can be used to alter the memory parameter

            % adb -k
                  lotsfree/W 0t<new_lotsfree>
              lotsfree/D -----> to see the change
             $q ------>to quit

          To change the "maxusers" parameter

                % adb -kw
                  maxusers/W 0t<new_maxusers>


Author Comment

ID: 17057674
Thank you all for your input, but specially schwertner for taking the time to make it so detailed.  

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Cursors in Oracle: A cursor is used to process individual rows returned by database system for a query. In oracle every SQL statement executed by the oracle server has a private area. This area contains information about the SQL statement and theā€¦
From implementing a password expiration date, to datatype conversions and file export options, these are some useful settings I've found in Jasper Server.
This video explains at a high level about the four available data types in Oracle and how dates can be manipulated by the user to get data into and out of the database.
This video explains what a user managed backup is and shows how to take one, providing a couple of simple example scripts.
Suggested Courses

927 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question