Register Login

Create manual shared memory dump on UNIX/Linux platforms

Updated May 18, 2018

How to create a manual shared memory dump on UNIX/Linux platforms?


Via command prompt with environment settings.

1) First start the sybmon utility:

  • $SYBASE/ASE-15_0/bin/dataserver -X –Pquine

2) Now please set the directory to dump the memory file.

  • > set dumpdir <my_directory>

Note: This is optional, if you not set the directory, the dump will be placed in the current directory

3) Then list the servers through which the mem dump can be taken. This list is created from .krg file by default and is located in $SYBASE/$SYBASE_ASE:

  • > shell echo $SYBASE/$SYBASE_ASE
  • > cat <dir_as_printed_above>

Note: If this list file is not located in $SYBASE/$SYBASE_ASE but resides somewhere else, then use directory where it is located :

For Example:

  • > shell echo $SYBASE/$SYBASE_ASE /opt/sybase/SUN_1503/ASE-15_0
  • > cat /opt/sybase/SUN_1503/ASE-15_0

4) Now please choose the server for which memory dump needs to be taken:

  • > attach <servername>

Now you will get a message: 'Attaching to <servername>, using shared memory id: #and prompt changes to <servername>:active>'

5) Take the memory dump

  • :active> memdump proc
    Halt all engines? (y/[n]) y

6) At last after the successful dump, exit:

  • :active> exit

Note: For reference full syntax of memdump command (* indicates default):

memdump <file name> [nocache* | cache] [halt* | nohalt] [noproc | proc*] [nounused* | unused] [full]