Это классическая проблема c, которая запускается при запуске базы данных, а служба прослушивания - нет. Ничего страшного, приведенная ниже команда может помочь вам проверить, активен ли ваш слушатель.
lsnrctl status
Если это говорит о том, что слушатель не слушает, добавьте ниже 2 файлов .ora и перезапустите слушатель.
$ORACLE_HOME/network/admin/listener.ora
$ORACLE_HOME/network/admin/tnsnames.ora
Команды прослушивателя
lsnrctl start
lsnrctl stop
lsnrctl status
Также вставка примеров файлов .ora для облегчения вашей работы.
listener.ora
LISTENER =
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)))
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_DBNAME=dev)
(SID_NAME=dev)
(ORACLE_HOME=/u01/app/oracle/product/12.2.0.1/db_1)
#PRESPAWN CONFIG
(PRESPAWN_MAX=20)
(PRESPAWN_LIST=
(PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1))
)
)
)
tnsnames.ora
dev=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = dev)
)
)
Убедитесь, что вы внесли соответствующие изменения в GLOBAL_DBNAME
, SID_NAME
, ORACLE_HOME
& SERVICE_NAME
в обоих вышеуказанных файлах. Также, если вы хотите sh сделать эту базу данных доступной по сети, настройте параметр HOST
в качестве IP-адреса вашего компьютера вместо localhost
.