Невозможно получить доступ к контейнеру докера базы данных с родительского хоста

Мне удалось успешно запустить Docker-контейнер базы данных Oracle. Я вижу информацию о порте для доступа к базе данных в пользовательском интерфейсе Kitematic. Также я могу пропинговать IP-адрес (192.168.99.100) контейнера Docker. Но когда я пытаюсь получить доступ к базе данных с помощью SQL или Plus, я получаю ошибки

Вот как я пробовал в sqlplus

sqlplus system/oracle@192.168.99.100:1521:xe

Я получил ошибку, как показано ниже

ORA-12545: Connect failed because target host or object does not exist

Я также пытался получить доступ sqlplus system/oracle@192.168.99.100:1521/xe но я получил ошибку, как показано ниже

ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

Глядя на эту ошибку, я вижу, что что-то не так с слушателем оракула TNS. Но как мне это исправить в случае запуска докера?

1 ответ

Поскольку ответ был дан ОП в качестве комментария, он приходит как ответ:

Я узнал основную причину всех этих проблем. Я запускал базу данных оракула внутри контейнера Docker. Контейнер работает поверх виртуальной коробки Oracle. Размер виртуального диска по умолчанию был 20 ГБ, и он почти заполнен. Oracle не удалось записать журналы при запуске сервера. Когда я увеличиваю размер своего виртуального диска, все эти проблемы устраняются.

— бабс84

Другие вопросы по тегам