Форум OlegON > Программы и оборудование для автоматизации торговли > Системы автоматизации торговли > Супермаг Плюс (Супермаг 2000)

ORA-01034 при подключение к БД на сервере OL : Супермаг Плюс (Супермаг 2000)

22.02.2025 6:43


01.02.2025 16:31
Добрый день.
Столкнулся с интересной и, думаю, не самой обычной проблемой.
Есть сервер Oracle на ОС Oracle Linux 8. Создана БД, она пустая, находится в статусе Open, слушатель работает, tnsping есть, все ок.
Второй сервер - Супермаг, на ОС Windows Server 2008. С него также есть tnsping, через переключатель БД увидел саму базу, мне кажется тоже все ок. При попытке запустить генератор БД после ввода названия БД и пароля SYS получаю следующую ошибку:

2025.02.01 (Saturday) 16:56:58 1.51.0.0 sp0 Sm.DbInit
----- Прерывание работы программы -----
сообщение: "Ошибка соединения с БД.
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Additional information: 4376
Additional information: 1218549707"
исключение: Sm.Core.BaseException
источник: Sm.Server
метод: Void Connect()
at Sm.Server.Database.OracleDb.Connect()
at Sm.Server.Database.OracleDb..ctor(String connectionString, String sessionId, Boolean doConnect)
at Sm.DbInit.DbInfo.LoadInfo()
at Sm.DbInit.WizardPages.DbInitPageDbSelect.Sm.DbInit.IDbInitWizardPage.SaveData()
----- Причина исключения, уровень вложения 1 -----
сообщение: "ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Additional information: 4376
Additional information: 1218549707"
исключение: Oracle.ManagedDataAccess.Client.OracleException
источник: Oracle Data Provider for .NET, Managed Driver
метод: PR Get(OracleInternal.ConnectionPool.ConnectionString, Boolean, OracleInternal.ConnectionPool.CriteriaCtx, System.String, Boolean)
at OracleInternal.ConnectionPool.PoolManager`3.Get(ConnectionString csWithDiffOrNewPwd, Boolean bGetForApp, CriteriaCtx criteriaCtx, String affinityInstanceName, Boolean bForceMatch)
at OracleInternal.ConnectionPool.OraclePoolManager.Get(ConnectionString csWithNewPassword, Boolean bGetForApp, CriteriaCtx criteriaCtx, String affinityInstanceName, Boolean bForceMatch)
at OracleInternal.ConnectionPool.OracleConnectionDispenser`3.Get(ConnectionString cs, PM conPM, ConnectionString pmCS, SecureString securedPassword, SecureString securedProxyPassword, CriteriaCtx criteriaCtx)
at Oracle.ManagedDataAccess.Client.OracleConnection.Open()
at Sm.Server.Database.OracleDb.Connect()

Возможно, кто-то сможет подсказать, в чем проблема? Немного смущает строка " Linux-x86_64 Error: 2: No such file or directory", но в таком случае, наверное, должна была бы проблема и на самом сервере Oracle.
01.02.2025 17:51
предполагаю простую и банальную проблему невнимательности, либо с тем, что ты запустил не ту базу, либо подключаешься к какой-то старой базе, либо на клиенте несколько home, в каком-то не поправил tnsnames.ora

когда ты говоришь, что "все ок", мы тебе верим, но все же принято приводить доказательства, как ты это проверял, в этом тоже могут быть ошибки.
03.02.2025 10:30
Цитата:
OlegON предполагаю простую и банальную проблему невнимательности, либо с тем, что ты запустил не ту базу, либо подключаешься к какой-то старой базе, либо на клиенте несколько home, в каком-то не поправил tnsnames.ora

когда ты говоришь, что "все ок", мы тебе верим, но все же принято приводить доказательства, как ты это проверял, в этом тоже могут быть ошибки.
PATH: C:\Program Files\ukm-common-files\bin;C:\Program Files\ukm-common-files;C:\SM2000\Bin;C:\Program Files (x86)\Common Files\Borland Shared\BDE;D:\oracle_s\dbhome_1\BIN;C:\ora112\client_1\BIN;C:\orant\bin;D:\oracle\bin;C:\ora102\bin;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\PROGRA~2\COMMON~1\BORLAN~1\BDE;D:\1.Install\SERVER SOFT\BACKUP\MySQL_BACKUP\gzip\bin;C:\Program Files (x86)\Intel\UCRT\;C:\Program Files\Intel\UCRT\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT

TNS: # tnsnames.ora Network Configuration File: D:\oracle\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

DABA01 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.67)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = daba01)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

не совсем понял про старую базу - подразумевается, разные версии oracle сервера и клиента?
03.02.2025 11:24
>>> D:\oracle_s\dbhome_1\BIN;C:\ora112\client_1\BIN;C:\orant\bin;D:\oracle\bin;

Вот об этом речь идет. Зоопарк ОраклХоумов.

СМ цепляет первую подходящую по разрядности OCI.

Намеренно ничего не разъясняю.

Вам для обучения надо начать с чистой винды.
03.02.2025 15:28
Цитата:
DMaslov >>> D:\oracle_s\dbhome_1\BIN;C:\ora112\client_1\BIN;C:\orant\bin;D:\oracle\bin;

Вот об этом речь идет. Зоопарк ОраклХоумов.

СМ цепляет первую подходящую по разрядности OCI.

Намеренно ничего не разъясняю.

Вам для обучения надо начать с чистой винды.
Да, действительно. Попробовал на "чистом" ПК, на этом этапе получилось, поехал дальше. Спасибо.
Часовой пояс GMT +3, время: 06:43.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.