zoukankan      html  css  js  c++  java
  • php7.2 sqlsrv 扩展 ubuntu Homestead centOs

    PHP 7.2.9-1+ubuntu18.04.1 安装 sqlsrv 扩展

    参考文章,感谢作者(建议先看,不看也可以https://serverpilot.io/docs/how-to-install-the-php-sqlsrv-extension

    最全的官方安装ODBC,各种环境下的都有。(一定要看https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017

    centOs环境 直接跳去这里看这篇文章https://blog.csdn.net/gdali/article/details/82912542(亲测可用[服务器是CentOs,所以也搭建了!]

    (注意 我的php目录是“/etc/php/7.2”, 凡是用到php 的地方记得替换成自己的目录)

    curl -s https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
    
    sudo bash -c "curl -s https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list"
    
    sudo apt-get update
    如果遇到这样的错误。没有错误的可以跳过

     (这里是时间过期了)执行命令 date -s 12/14/2018 && date -s 20:19:00 && sudo hwclock --systohc 注意改成当前时间即可

     

    sudo ACCEPT_EULA=Y apt-get -y install msodbcsql17 mssql-tools
    
    sudo apt-get -y install unixodbc-dev
    
    sudo apt-get -y install gcc g++ make autoconf libc-dev pkg-config
    
    sudo pecl install sqlsrv
    
    sudo pecl install pdo_sqlsrv
    
    (pecl command not found )
    (如果pecl执行不成功先执行以下2条命令)
    (sudo apt-get install php-pear php-dev)
    
    (/etc/php/conf.d 代表的是你本机的php安装路径)
    sudo bash -c "echo extension=sqlsrv.so > /etc/php/conf.d/sqlsrv.ini" sudo bash -c "echo extension=pdo_sqlsrv.so > /etc/php/conf.d/pdo_sqlsrv.ini" sudo service php-fpm restart 

    在 phpinfo 中有在 php -m 中没有,在 phpinfo 中有在 php -i 中没有

    phpinfo 用的是fpm模式 查看这个字段 Loaded Configuration File 定位php.ini 的位置

    php -m 或者 php -i   使用的是cli模式

    php -i | grep php.ini  查看cli模式下的 php.ini 的位置

    所以后面需要这样配置(conf.d 中有文件了,就不需要再php.ini里配置了。)

    (注意后面的为你自己的php目录)
    bash -c "echo extension=sqlsrv.so > /etc/php/7.2/cli/conf.d/sqlsrv.ini"
    
    bash -c "echo extension=pdo_sqlsrv.so > /etc/php/7.2/cli/conf.d/pdo_sqlsrv.ini"
    
    bash -c "echo extension=sqlsrv.so > /etc/php/7.2/fpm/conf.d/sqlsrv.ini"
    
    bash -c "echo extension=pdo_sqlsrv.so > /etc/php/7.2/fpm/conf.d/pdo_sqlsrv.ini"

     检验是否安装完成

    php -i | grep -i sqlsrv

    显示的大致是一下内容,说明安装成功

    phpinfo 中也有了

     综合安装代码

    sudo date -s 12/14/2018 && sudo date -s 20:19:00 && sudo hwclock --systohc (注意换成自己当前时间)
    
    curl -s https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - && sudo bash -c "curl -s https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list" && sudo apt-get update && sudo ACCEPT_EULA=Y apt-get -y install msodbcsql17 mssql-tools && sudo apt-get -y install unixodbc-dev && sudo apt-get -y install gcc g++ make autoconf libc-dev pkg-config && sudo apt-get install php-pear php-dev && sudo pecl install sqlsrv && sudo pecl install pdo_sqlsrv && bash -c "echo extension=sqlsrv.so > /etc/php/7.2/cli/conf.d/sqlsrv.ini" && bash -c "echo extension=pdo_sqlsrv.so > /etc/php/7.2/cli/conf.d/pdo_sqlsrv.ini" && bash -c "echo extension=sqlsrv.so > /etc/php/7.2/fpm/conf.d/sqlsrv.ini" && bash -c "echo extension=pdo_sqlsrv.so > /etc/php/7.2/fpm/conf.d/pdo_sqlsrv.ini" && sudo service php7.2-fpm restart
    View Code

    卸载

    sudo rm /etc/php/7.2/cli/conf.d/sqlsrv.ini
    sudo rm /etc/php/7.2/fpm/conf.d/sqlsrv.ini
    sudo rm /etc/php/7.2/cli/conf.d/pdo_sqlsrv.ini
    sudo rm /etc/php/7.2/fpm/conf.d/pdo_sqlsrv.ini
    sudo peclX.Y-sp uninstall sqlsrv
    sudo peclX.Y-sp uninstall pdo_sqlsrv
    sudo service php7.2-fpm restart
  • 相关阅读:
    django的路由系统
    django配置
    边工作边刷题:70天一遍leetcode: day 2
    边工作边刷题:70天一遍leetcode: day 5
    边工作边刷题:70天一遍leetcode: day 5
    边工作边刷题:70天一遍leetcode: day 5
    边工作边刷题:70天一遍leetcode: day 6
    边工作边刷题:70天一遍leetcode: day 6
    边工作边刷题:70天一遍leetcode: day 6
    边工作边刷题:70天一遍leetcode: day 6
  • 原文地址:https://www.cnblogs.com/zhaoyang-1989/p/10121429.html
Copyright © 2011-2022 走看看