cancel
Showing results for 
Search instead for 
Did you mean: 

how to start ASE?

Former Member
0 Kudos

I reboot ASE 12.5 on CentOS by reboot command.

After that, I then want to start Sybase ASE by the script like RUN_ASEServer, but got the error:

....

00:00000:00000:2014/04/02 15:20:59.29 kernel  os_create_region: shmget(0xf402f68e): No space left on device                                                                                                                                 

00:00000:00000:2014/04/02 15:20:59.29 kernel  kbcreate: couldn't create kernel region.

00:00000:00000:2014/04/02 15:20:59.29 kernel  kistartup: could not create shared memory

Not sure why.

How to resolve it?

Former Member
0 Kudos

What I did:

1. change max shared memory:

vi /etc/sysctl.conf

2. run /sbin/sysctl -w kernel.shmmax=10179869184

3. Change sybase Max Memory

then I reboot linux by reboot.

As I it failed, I put all back:

1. vi /etc/sysctl.conf

2. /sbin/sysctl -p

3. vi ASEServer.cfg in /sybase/ASE-12_5/ to change max memory back

then reboot linux and start sybase, get same error.  Not sure why. How to put everything back? help please. thanks.

Accepted Solutions (1)

Accepted Solutions (1)

kevin_sherlock
Contributor
0 Kudos

you need to have your max shared mem setting set in /etc/sysctl.conf

# grep "kernel.shmmax" /etc/sysctl.conf

If the above doesn't return a line from the file, or if the setting is too low -

Add a line at the bottom of the /etc/sysctl.conf file (substituting your memory setting):

kernel.shmmax=<bytes of shared memory you want reserved for ASE>

To permanently save the setting for next boot, run:

# /sbin/sysctl -p


Former Member
0 Kudos

Hi Kevin,

I did all above except not shutdown ASE before reboot Linux. After reboot it, got about error. Then I roll all change back and reboot Linux again and still able to start ASE. (See detail in the post above for Mark). I am not sure why.


kevin_sherlock
Contributor
0 Kudos

How much physical memory is on your box?

What _exactly_ is your setting for kernel.shmmax?

What _exactly_ is your ASE setting for "max memory"?

former_member182259
Contributor
0 Kudos

Actually, can you post your /etc/sysctl - there are a few other VM settings for ASE - such as randomize_va_space and exec_shield that may be factors here.  Also post the max memory line from the ASE .cfg file.

Former Member
0 Kudos

I put ASE .cfg file back to backup file and now I am able to start the ASE, but the starting process is in waiting. I even can't login with isql.

Check error log and got the message on tempdb:

00:00000:00001:2014/04/07 09:32:11.34 server  Device 'tempdb_data' (with physical name '/db/tempdb/tempdb_data.dat', and virtual device number 3) has not been correctly activated at startup time.  Please contact a user with System Administrator (SA) role.

00:00000:00001:2014/04/07 09:32:11.34 server  Error: 1619, Severity: 21, State: 1

00:00000:00001:2014/04/07 09:32:11.34 server  Could not open TEMPDB, unable to continue.

here is the meomory from free -m cmd:

             total       used       free     shared    buffers     cached

Mem:         17668       7792       9875          0        140       7533

-/+ buffers/cache:        119      17548

Swap:         4094          0       4094

here is the out put from df -h cmd about tempdb device:

tmpfs                 2.1G     0  2.1G   0% /db/tempdb

former_member182259
Contributor
0 Kudos

Why are you messing around with tmpfs????    But, if you are going to use it, you must TOUCH the device file in the file system....e.g.  '/db/tempdb/tempdb_data.dat' - doesn't EXIST in /db/tempdb until you first touch and create the file.   ASE is not going to do that for you as it already created the device once and now thinks you have had a HW failure and the device is missing.    Remember, tmpfs is not persistent, so you will need to touch the file after *every* OS reboot.

Former Member
0 Kudos

tempfs should be linux ramdisk. how to fix it? from command df -h, I can see the ramdisk is available, but the 2 files tempdb_data.dat and tempdb_data.log in /db/tempdb is missing after reboot. How to put it back?

former_member182259
Contributor
0 Kudos

Are you familiar with UNIX???   Are you familiar with the TOUCH command???   you need to "TOUCH" the filenames to recreate the files.

Former Member
0 Kudos

I don't know touch command. If I want to create a file tempdb_data.dat with 1.5G size under tempdb folder on tempfs, how to run the command with proper parameters? thanks.

former_member182259
Contributor
0 Kudos

do a man on touch.   All you need to do is create the file - ASE will reset the size.  

Former Member
0 Kudos

thanks. I have create the files. but I still can't login with isql. I want to stop ASE and restart it again see if is fine. because I can't use isql, so I can't issue shutdown for ASE. How to stop it?

here is the out put from showserver:

F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD

0 T sybase    6546  6536  0  75   0 - 2022870 finish 09:32 pts/0  00:00:00 /opt/sybase/ASE-12_5/bin/dataserver -ONLINE:1,0,0xfffffffff402f74d, 0x2a95b68000, 0x1e8480000, 0x1159

0 T sybase    6536  6383  0  76   0 - 2028048 finish 09:31 pts/0  00:00:20 /opt/sybase/ASE-12_5/bin/dataserver -d/db/system/data/master.dat -e/db/oe/system/logs/my.log -c/opt/sybase/ASE-12_5/my.cfg -M/opt/sybase/ASE-12_5 -smy -m

former_member182259
Contributor
0 Kudos

Use kill  or kill -9 - and make sure you have all your HW and OS stuff figured out BEFORE you try to restart ASE.

Former Member
0 Kudos


thank you very much for help.  Now I am able to start sybase. Another interesting is:

after start sybase, then I login with isql from command line, at first time using isql is okay. if I quit from isql and then login in with isql again, I can't login it anymore. I get the message:

CT-LIBRARY error:

        ct_connect(): network packet layer: internal net library error: Net-Library operation terminated due to disconnect

in console(in errorlog), get following error:

01:00000:00012:2014/04/07 13:20:19.75 server  Unable to read in login record.

If I kill ASE process and start ASE again, then I only able to use isql to login for one time.

I try to connect ASE with powerbuilder, it is fine.

Confused. how to figure it out?

madhvi_pai
Advisor
Advisor
0 Kudos


Hi Kent,

Regarding the issue with repeated isql attempts failing, is the ASE being started in single-user mode by any chance?

Thanks,

Madhvi Pai

SAP AGS

Former Member
0 Kudos

thanks for the help from you guys. It's resolved. Because of shared memory setting is not right. then max memory for sybase also not right.

Answers (0)