2013-04-24 59 views
1

我正在使用Red Hat 5.5,並試圖運行Sybase ASE 12.5.4。Sybase初始化但未運行

昨天我試圖使用命令「service sybase start」,控制檯顯示sybase反覆嘗試初始化,但失敗,主數據庫服務器。

UPDATE:

我使用下面的命令初始化一個數據庫/ ims_systemdb /主:

dataserver -d /ims_systemdb/master -z 2k -b 51204 -c $SYBASE/ims.cfg -e db_error.log 
chmod a=rwx /ims_systemdb/master 
ls -al /ims_systemdb/master 

,它給了我一個很好的數據庫中/ ims_systemdb /主大小爲104865792個字節( 2048x51240)。

但是當我在/logs/sybase_error.log運行

service sybase start 

錯誤日誌是這樣的:

00:00000:00000:2013/04/26 16:11:45.18 kernel Using config area from primary master device. 
00:00000:00000:2013/04/26 16:11:45.19 kernel Detected 1 physical CPU 
00:00000:00000:2013/04/26 16:11:45.19 kernel os_create_region: can't allocate 11534336000 bytes 
00:00000:00000:2013/04/26 16:11:45.19 kernel kbcreate: couldn't create kernel region. 
00:00000:00000:2013/04/26 16:11:45.19 kernel kistartup: could not create shared memory 

我讀 「os_create_region」 是正常的,如果你沒有設置SHMMAX在sysctl足夠高,所以我把它設置爲16000000000000,但我仍然得到這個錯誤。有時,當我玩弄的cfg文件,我收到此錯誤消息,而不是:

00:00000:00000:2013/04/25 14:04:08.28 kernel Using config area from primary master device. 
00:00000:00000:2013/04/25 14:04:08.29 kernel Detected 1 physical CPU 
00:00000:00000:2013/04/25 14:04:08.85 server The size of each partitioned pool must have atleast 512K. With the '16' partitions we cannot configure this value f 

爲什麼會出現這兩種錯誤,我能做些什麼呢?

UPDATE:

目前,我看到的第一個錯誤消息(OS無法分配字節)。是/etc/sysctl.conf文件的內容如下:

kernel.shmmax = 4294967295 
kernel.shmall = 1048576 
kernel.shmmni = 4096 

但日誌報表早期狀態

os_create_region: can't allocate 11534336000 bytes 

那麼,爲什麼區是試圖分配這麼大,和放哪兒那會被設置?

+0

您運行的是什麼Sybase產品?假設它是ASE,那麼Sybase ASE Log會說什麼?通常它位於〜/ ASE - ?? _ ??/install/NAME_OF_DB_SERVER.log下的安裝目錄中。問號與您正在運行的ASE的版本(15_0,15_5,15_7等)相對應。 – 2013-04-25 02:15:27

+0

嗨邁克爾。我查看了ASE-12_5/install,但沒有找到任何日誌語句。但是,我確實在/logs/sybase_error.log中找到了一些相關信息,我在上面發佈了這些信息。我還設法使用dataserver命令初始化數據庫,如果您有興趣,我可以在這裏發佈輸出。 – stephen 2013-04-25 23:11:32

+0

查看安裝目錄,應該有一個與dataserver的名稱相對應的文件,其前綴爲RUN_,而不是運行dataserver,請嘗試運行ASE_12-5/install/startserver -f RUN_NAME_OF_DB_SERVER。在嘗試啓動它之前,請確保沒有其他實例正在運行(./install/showserver)。在運行該命令後,從sybase錯誤日誌中發佈條目。 – 2013-04-26 01:27:01

回答

0

解決方案:

當你收到這樣的消息「os_create_region:無法分配11534336000個字節」,它的意思是,Sybase的配置文件請求內核創建超過shmmax的可變區域/etc/sysctl.conf

要做的主要事情是更改ims.conf(或您正在使用的任何配置文件)。然後,更改物理內存部分中的最大內存變量。

[Physical Memory] 
    max memory = 64000 
    additional network memory = 10485760 
    shared memory starting address = DEFAULT 
    allocate max shared memory = 1 

爲了您的信息,我的/etc/sysctl.conf文件有以下三行結束:

kernel.shmmax = 16000000000 
kernel.shmall = 16000000000 
kernel.shmmni = 8192 

而一旦做到這一點,鍵入「showserver」揭示進程正在運行什麼。

有關更多信息,請參閱前面的註釋中的「Sybase系統管理員指南,第2卷」和Michael Gardner的指向Red Hat內存管理的鏈接。