You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

yajra/laravel-oci8无法连接Oracle数据库问题求助

解决Laravel连接Oracle时"Undefined constant 'Yajra\Pdo\OCI_DEFAULT'"错误

修复步骤

1. 确认Yajra OCI8包的安装与版本匹配

  • 确保安装了适配当前Laravel版本的Yajra OCI8扩展包,执行对应版本的安装命令(比如Laravel 10对应^10.0版本):
    composer require yajra/laravel-oci8:^10.0
    
  • 若已安装,更新到稳定兼容版:
    composer update yajra/laravel-oci8
    

2. 清理Laravel缓存

  • 清除配置和应用缓存,确保新配置生效:
    php artisan config:clear
    php artisan cache:clear
    
  • 重启本地开发服务器(如php artisan serve或Valet)。

3. 检查数据库配置

  • 打开config/database.php,确认Oracle连接配置使用Yajra驱动:
    'oracle' => [
        'driver' => 'oracle',
        'tns' => env('DB_TNS', ''),
        'host' => env('DB_HOST', ''),
        'port' => env('DB_PORT', '1521'),
        'database' => env('DB_DATABASE', ''),
        'username' => env('DB_USERNAME', ''),
        'password' => env('DB_PASSWORD', ''),
        'charset' => env('DB_CHARSET', 'AL32UTF8'),
        'prefix' => env('DB_PREFIX', ''),
        'prefix_schema' => env('DB_SCHEMA_PREFIX', ''),
    ],
    
  • 确保.env文件中DB_CONNECTION设置为oracle。

4. 验证PHP环境变量一致性

  • 检查CLI的Oracle环境变量是否加载:
    php -i | grep ORACLE_HOME
    
  • 重启终端和Web服务器,确保服务器进程能读取到zshrc中配置的Oracle路径。

5. 重新安装依赖

  • 若以上步骤无效,删除依赖目录和锁文件后重新安装:
    rm -rf vendor composer.lock
    composer install
    

内容的提问来源于stack exchange,提问作者Almas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 20:23:14