首页 > 解决方案 > Laravel 没有将 oracle 设置为连接

问题描述

我在为 laravel 设置 oracle 连接时遇到了一些麻烦。这就是我所做的:

  1. 使用正确的设置修改 .env,将其删除DB_CONNECTION="mysql"并替换为ORACLE_CONNECTION="oracle"

  2. 使用正确设置修改 database.php:

    'default' => env('ORACLE_CONNECTION', 'oracle'),
    

    '连接' => [

    'mysql' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_NAME', 'simone'),
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'prefix_indexes' => true,
        'strict' => true,
        'engine' => null,
    ],
    
    'oracle' => [
        'driver' => 'oracle',
        'host' => env('ORACLE_HOST', ''),
        'port' => env('ORACLE_PORT', '1521'),
        'database' => env('ORACLE_DATABASE', ''),
        'service_name' => env('ORACLE_SERVICE_NAME', ''),
        'username' => env('ORACLE_USERNAME', ''),
        'password' => env('ORACLE_PASSWORD', ''),
        'charset' => 'utf8',
    ],
    

    ],

  3. 运行 php artisan config:cache 但没有结果,除了这个:

在此处输入图像描述

或者,如果我从 mysql 中删除:

在此处输入图像描述

因此,即使未指定,它也始终针对 mysql 连接。是否有任何其他缓存文件需要考虑或类似的东西?

标签: databaselaraveloracleconfig

解决方案


我认为您不需要不需要将 DB_CONNECTION 更改为 ORACLE_CONNECTION。

DB_CONNECTION=oracle
DB_TNS=magrathea
DB_PORT=3306
DB_DATABASE=heartofgold
DB_USERNAME=marvin
DB_PASSWORD=fortytw0

请查看完整说明,希望您能从中得到帮助。 http://broncodev.com/2017-06-18-laravel5-oracle/


推荐阅读