Что я не дописываю в файле .env при подключении sqlsrv?

Ссылка скопирована
14 января 2026 1 ответ

Здравствуйте, хочу подключить БД с помощью sqlsrv, я понимаю что это прописывается в файле .env, но у меня возникает такая ошибка:

Что я не дописываю в файле .env при подключении sqlsrv?

Вот файл database.php:

'sqlsrv' => [             'driver' => 'sqlsrv',             'url' => env('DATABASE_URL'),             'host' => env('DB_HOST', 'localhost'),             'port' => env('DB_PORT', '1433'),             'database' => env('DB_DATABASE', 'forge'),             'username' => env('DB_USERNAME', 'forge'),             'password' => env('DB_PASSWORD', ''),             'charset' => 'utf8',             'prefix' => '',             'prefix_indexes' => true,         ],

'sqlsrv' => [ 'driver' => 'sqlsrv', 'url' => env('DATABASE_URL'), 'host' => env('DB_HOST', 'localhost'), 'port' => env('DB_PORT', '1433'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'charset' => 'utf8', 'prefix' => '', 'prefix_indexes' => true, ],

вот файл .env:

DB_CONNECTION=sqlsrv DB_HOST=127.0.0.1 DB_PORT=1433 DB_DATABASE=forge DB_USERNAME=forge DB_PASSWORD=

DB_CONNECTION=sqlsrv DB_HOST=127.0.0.1 DB_PORT=1433 DB_DATABASE=forge DB_USERNAME=forge DB_PASSWORD=

Что я делаю не так? Заранее спасибо

Дополнительно:

Это значит что не установлен драйвер mysql в php, это не связано с .env, .env это просто параметры существующего ПО

Нужно установить в системе sqlsrv:

pecl install sqlsrv      && echo "extension=sqlsrv.so" >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:s*||"`/30-sqlsrv.ini

pecl install sqlsrv && echo "extension=sqlsrv.so" >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:s*||"`/30-sqlsrv.ini

  • Здравствуйте, а куда я ее должна вставить? заранее спасибо
  • Виктория Кабишова,
    Почитайте про установку модулей https://www.php.net/manual/ru/install.pecl.windows.php

    потом загрузите модуль sqlsrv отсюда https://windows.php.net/downloads/pecl/releases/sqlsrv/

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Антон С. Ответ

При подключении к SQL Server с использованием драйвера sqlsrv в PHP, в файле .env вы должны указать следующие параметры:

1. DB_CONNECTION: Укажите здесь значение "sqlsrv", чтобы указать, что вы используете драйвер sqlsrv для подключения к SQL Server.

2. DB_HOST: Укажите хост SQL Server, к которому вы хотите подключиться. Обычно это будет либо IP-адрес сервера, либо его доменное имя.

3. DB_PORT: Укажите порт SQL Server, на котором он слушает подключения. По умолчанию это 1433.

4. DB_DATABASE: Укажите название базы данных, к которой вы хотите подключиться.

5. DB_USERNAME: Укажите имя пользователя SQL Server, который имеет права на подключение к указанной базе данных.

6. DB_PASSWORD: Укажите пароль пользователя SQL Server для подключения к базе данных.

Пример заполнения .env файла для подключения к SQL Server с использованием драйвера sqlsrv:

DB_CONNECTION=sqlsrv
DB_HOST=127.0.0.1
DB_PORT=1433
DB_DATABASE=my_database
DB_USERNAME=my_username
DB_PASSWORD=my_password

DB_CONNECTION=sqlsrv DB_HOST=127.0.0.1 DB_PORT=1433 DB_DATABASE=my_database DB_USERNAME=my_username DB_PASSWORD=my_password

Убедитесь, что все параметры заполнены корректно и что у вас есть необходимые права доступа к указанной базе данных. После этого вы сможете успешно подключиться к SQL Server с помощью драйвера sqlsrv в PHP.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно