lumen框架,本地配置php链接oralce扩展
配置环境:
- windows10
- PHP Version 7.2.16,建议PHP版本7.2.*
- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
安装pdo_oci扩展
如果你已经安装OK了oci扩展,那么仅需要将extension=php_pdo_oci.dll打开。
安装oci扩展
https://www.php.net/manual/zh/oci8.installation.php php官方说明
1.装oralce Instant Client,下载连接。自己选择环境版本,不要搞错操作系统位数就行,我选择的是11.2 basic 版本。
2.将自己下载的Instant Client,放到自己的软件目录里。然后在环境变量的PATH里面加入Instant Client的路径。重启电脑使环境变量生效。
3.打开extension=php_oci8.dll。
4.重启服务,测试连接oracle数据库。
配置lumen
1. 安装扩展 https://packagist.org/packages/yajra/laravel-oci8#dev-master
在lumen项目使用cmd窗口执行: composer require yajra/laravel-oci8:^7
2. 配置 config/app.php(bootstrap->app.php)
添加:
$app->register(Yajra\Oci8\Oci8ServiceProvider::class);
3. 配置数据库
lumen/vendor/laravel/lumen-framework/config/database.php
增加配置:
'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', 'UTF8'),
'prefix' => env('DB_PREFIX', ''),
'prefix_schema' => env('DB_SCHEMA_PREFIX', ''),
'edition' => env('DB_EDITION', 'ora$base'),
],
4. 扩展配置(选配)
使用oracle时,由于oracle查询默认区分大小写,因此在身份验证时可能会遇到问题。通过使用此oracle用户提供
程序,我们现在可以避免由于区分大小写搜索而登录并造成忘记密码失败时的用户问题。
要使用,只需更新 auth.php 配置并将驱动程序设置为 oracle
增加:
'providers' => [
'users' => [
'driver' => 'oracle',
'model' => App \ User :: class,
],
],
5. 在 .env 文件中定义数据库连接方式
一定要主义账号密码是否配置正确
附:配置tp5的oracle环境有问题的小伙伴可以一起探讨啊,372866420