Проблема установки драйвера SQLSRV в 32-битной системе Ubuntu 16.04

Вы можете определить (в /etc/profile) функцию, названную alias, которая делает требуемую проверку (возможно, используя type -p) (ведь «команды по умолчанию Ubuntu» являются «исполняемыми файлами в $PATH») перед вызовом встроенный alias, НО, как указывали другие, ваши пользователи могут обойти это. Почему бы не получить другой набор пользователей или не обучить их («Определение alias, которое отменяет команду, является очень хорошим способом съемки в ногу и вызывает путаницу (например, почему ls запрашивает мой пароль ?))?

0
задан 13 August 2017 в 14:51

4 ответа

Вы должны следовать официальным инструкциям по установке из Microsoft.

См. Установка драйвера Microsoft ODBC для SQL Server в Linux и macOS (также в формате PDF).

Следующие шаги скопированы из руководства:

Шаг 1. Установите PHP

sudo su apt-get update apt-get -y install php7.0 mcrypt php7.0-mcrypt php-mbstring php-pear php7.0-dev php7.0-xml

Шаг 2. Установите предварительные условия

sudo su curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list exit sudo apt-get update sudo ACCEPT_EULA=Y apt-get install msodbcsql mssql-tools sudo apt-get install unixodbc-dev echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc

Шаг 3. Установите драйверы PHP для Microsoft SQL Server

sudo pear config-set php_ini `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"` system sudo pecl install sqlsrv sudo pecl install pdo_sqlsrv
3
ответ дан 18 July 2018 в 08:40

Ответ выше работает, если вы добавите следующее:

измените 7.x следующим образом на текущую версию ls / etc / php /, чтобы найти его

echo "extension = sqlsrv.so ">> /etc/php/7.x/apache2/php.ini echo" extension = pdo_sqlsrv.so ">> /etc/php/7.x/apache2/php.ini

0
ответ дан 18 July 2018 в 08:40

Вы должны следовать официальным инструкциям по установке из Microsoft.

См. Установка драйвера Microsoft ODBC для SQL Server в Linux и macOS (также в формате PDF).

Следующие шаги скопированы из руководства:

Шаг 1. Установите PHP

sudo su apt-get update apt-get -y install php7.0 mcrypt php7.0-mcrypt php-mbstring php-pear php7.0-dev php7.0-xml

Шаг 2. Установите предварительные условия

sudo su curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list exit sudo apt-get update sudo ACCEPT_EULA=Y apt-get install msodbcsql mssql-tools sudo apt-get install unixodbc-dev echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc

Шаг 3. Установите драйверы PHP для Microsoft SQL Server

sudo pear config-set php_ini `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"` system sudo pecl install sqlsrv sudo pecl install pdo_sqlsrv
3
ответ дан 24 July 2018 в 19:08
  • 1
    когда я пытаюсь выполнить эту команду «sudo ACCEPT_EULA = Y apt-get install msodbcsql mssql-tools», эти ошибки появятся, E: Не удалось найти пакет msodbcsql E: Не удалось найти пакет mssql-tools – shijin 14 August 2017 в 19:25
  • 2
    @shijin, пожалуйста, проверьте правильность добавления репозитория. – Andrea Lazzarotto 14 August 2017 в 22:25
  • 3
    Я следую вашим шагам, Step1 находится в новейших версиях, но на шаге 2 мне не удалось выполнить эту команду: «sudo ACCEPT_EULA = Y apt-get install msodbcsql mssql-tools». Эти ошибки выглядят так: E: Не удалось найти пакет msodbcsql E: Не удалось найти пакет mssql-tools – shijin 18 August 2017 в 19:28
  • 4
    @shijin OK, но проверьте правильность добавления репозитория с помощью команд curl, написанных до команды сбоя. – Andrea Lazzarotto 18 August 2017 в 20:01
  • 5
    @ Andrea Lazzarotto, Да, команды curl работают отлично. Out of first of curl operation - 'Dload Upload Total Spent Left Speed ​​100 983 100 983 0 0 660 0 0:00:01 0:00:01 -: -: - 660 OK', а второй - второй curl operation - -% Total% Received% Xferd Средняя скорость Время Время Время Текущая загрузка Dload Общая потерянная левая скорость 100 79 100 79 0 0 60 0 0:00:01 0:00:01 -: -: - 60 ' – shijin 18 August 2017 в 20:29

Ответ выше работает, если вы добавите следующее:

измените 7.x следующим образом на текущую версию ls / etc / php /, чтобы найти его

echo "extension = sqlsrv.so ">> /etc/php/7.x/apache2/php.ini echo" extension = pdo_sqlsrv.so ">> /etc/php/7.x/apache2/php.ini

0
ответ дан 24 July 2018 в 19:08

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

Похожие вопросы: