#linux #laravel #oracle #ubuntu #vbox
Вопрос:
Моя операционная система-Linux Mint. Я установил на него Laravel (версия 8.52) со всеми необходимыми предпосылками для работы с базой данных oracle (например, oci8, instantclient, библиотека яджры).
Моя база данных Oracle работает на виртуальной коробке (я только что импортировал Oracle Developer Day, загруженный с сайта Oracle).
Я также установил Oracle SQL Developer на хост-ОС (Mint) и успешно подключил его к базе данных. Параметры подключения, используемые в SQL Developer, приведены ниже:
Database Connection Name: Mint
username: hr
password: oracle
hostname: 127.0.0.1
port: 1521
service name: orcl --> Note: We use service name instead of SID
Проблема заключается в файле laravel .env, касающемся параметров подключения к базе данных. Я перепробовал множество комбинаций, но безуспешно. Например, я отредактировал .env как
DB_CONNECTION=oracle
DB_HOST=127.0.0.1
DB_PORT=1521
DB_DATABASE=127.0.0.1/orcl
DB_SID_ALIAS=orclcdb --> this is the SID of database used on virtual machine
DB_USERNAME=hr
DB_PASSWORD=oracle
DB_CHARSET=AL32UTF8
или
DB_CONNECTION=oracle
DB_HOST=127.0.0.1
DB_PORT=1521
DB_DATABASE=orcl
DB_SID_ALIAS=127.0.0.1/orclcdb
DB_USERNAME=hr
DB_PASSWORD=oracle
DB_CHARSET=AL32UTF8
или
DB_CONNECTION=oracle
DB_HOST=localhost
DB_PORT=1521
DB_DATABASE=orcl
DB_SID_ALIAS=127.0.0.1/orclcdb
DB_USERNAME=hr
DB_PASSWORD=oracle
DB_CHARSET=AL32UTF8
и многие другие. Во всех случаях я получаю ошибку (ORA-12505: TNS:прослушиватель в настоящее время не знает SID, указанного в дескрипторе подключения).
Не могли бы вы мне помочь, пожалуйста?