Ubuntu 22.04 ,php8.1操作sqlserver2016数据库

Ubuntu 22.04 默认仓库提供的是 PHP 8.1,而非 PHP 8.0。
您需要安装适用于 PHP 8.1 的开发包(php8.1-dev)或通过第三方仓库安装旧版本。
解决方案一:使用 PHP 8.1 替代 PHP 8.0
以下是适用于 Ubuntu 22.04 的完整流程:

步骤 1:安装 PHP 8.1 环境
bash
# 安装 PHP 8.1 及必要扩展  宝塔安装 此步骤忽略
#sudo apt update
#sudo apt install -y php8.1 php8.1-fpm php8.1-dev php-pear
步骤 2:安装其他依赖
bash
# 安装 UnixODBC 和微软 ODBC 驱动
sudo apt install -y unixodbc unixodbc-dev

# 添加 Microsoft 官方仓库
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl https://packages.microsoft.com/config/ubuntu/22.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
sudo apt update

# 安装 ODBC 驱动(接受许可协议)
sudo ACCEPT_EULA=Y apt install -y msodbcsql17
步骤 3:安装 SQLSRV 扩展
bash
# 使用 PECL 安装扩展
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv


php.ini
extension=sqlsrv
extension=pdo_sqlsrv

sqlserver2016以上可以连接


 

### 安装 GCC 8.1 的方法 在 Ubuntu 22.04 中默认安装的 GCC 版本可能较高,如果需要安装特定版本(如 GCC 8.1),可以通过以下方式完成。 #### 方法一:通过 PPA 添加软件源并安装 PPA 是 Personal Package Archive 的缩写,可以用来扩展官方仓库中的可用包列表。以下是具体操作1. **更新系统包** 更新当前系统的包索引以确保获取最新信息。 ```bash sudo apt update && sudo apt upgrade -y ``` 2. **添加第三方 PPA 源** 使用 `add-apt-repository` 工具来添加包含旧版 GCC 的 PPA 软件源[^4]。 ```bash sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt update ``` 3. **安装 GCC 和 G++ 8.1** 执行以下命令安装指定版本的 GCC 和 G++ 编译器。 ```bash sudo apt install gcc-8 g++-8 ``` 4. **验证安装** 确认 GCC 是否已正确安装以及其版本号是否为预期值。 ```bash gcc-8 --version g++-8 --version ``` #### 方法二:手动编译安装 当无法找到合适的预构建二进制文件时,可以选择从源代码自行编译 GCC 8.11. **下载 GCC 源码** 访问 GNU 官方网站或其他可信镜像站点下载目标版本的压缩包。 ```bash wget https://ftp.gnu.org/gnu/gcc/gcc-8.1.0/gcc-8.1.0.tar.gz tar -xf gcc-8.1.0.tar.gz cd gcc-8.1.0 ``` 2. **安装必要的依赖项** 自动化脚本会检测缺失组件提示用户补全;也可以提前准备好这些工具链支持库。 ```bash sudo apt install build-essential libmpc-dev libmpfr-dev libgmp-dev \ texinfo zlib1g-dev libc6-dev-i386 flex bison git ./contrib/download_prerequisites ``` 3. **配置与构建环境变量设置** 创建独立目录存放最终产物避免污染全局路径,并调整参数适应主机架构特性。 ```bash mkdir ../gcc-build-dir; cd ../gcc-build-dir ../gcc-8.1.0/configure --prefix=/opt/gcc-8.1 --enable-languages=c,c++,fortran,go --disable-multilib make -j$(nproc) sudo make install ``` 4. **创建软链接方便调用** 如果希望临时切换至新版本,则可通过修改 PATH 或者建立快捷方式解决兼容性问题。 ```bash export PATH="/opt/gcc-8.1/bin:$PATH" which gcc gcc --version ``` 以上两种途径均能达成目的,推荐优先考虑简便易行的第一种方案除非特殊需求才采取第二种复杂流程处理情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值