Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >“数据库主机数组为空。”在AWS弹性豆柄上部署Laravel项目后

“数据库主机数组为空。”在AWS弹性豆柄上部署Laravel项目后
EN

Stack Overflow用户
提问于 2019-09-11 06:32:54
回答 2查看 10.6K关注 0票数 3

我使用ElasticBean秸秆将项目部署到一个AWS EC2实例中。我在部署时使用本教程 https://www.youtube.com/watch?v=ISVaMijczKc作为参考。我正在跟踪教程中的所有内容,但是我最终出错了。

数据库主机数组为空。(SQL: select *从resource_categories)

以下是我的密码。

database.php

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php

define('RDS_HOSTNAME', $_SERVER['RED_HOSTNAME']);
define('RDS_USERNAME', $_SERVER['RED_USERNAME']);
define('RDS_PASSWORD', $_SERVER['RED_PASSWORD']);
define('RDS_DB_NAME', $_SERVER['RED_DB_NAME']);

return [

    'default' => env('DB_CONNECTION', 'mysql'),

    'connections' => [

        'sqlite' => [
            'driver' => 'sqlite',
            'database' => env('DB_DATABASE', database_path('database.sqlite')),
            'prefix' => '',
            'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true),
        ],

        'mysql' => [
            'driver' => 'mysql',
            'host' => RDS_HOSTNAME,
            'port' => env('DB_PORT', '3306'),
            'database' => RDS_DB_NAME,
            'username' => RDS_USERNAME,
            'password' => RDS_PASSWORD,
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix' => '',
            'prefix_indexes' => true,
            'strict' => false,
            'engine' => null,
            'options' => extension_loaded('pdo_mysql') ? array_filter([
                PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
            ]) : [],
        ],

        'pgsql' => [
            'driver' => 'pgsql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '5432'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'charset' => 'utf8',
            'prefix' => '',
            'prefix_indexes' => true,
            'schema' => 'public',
            'sslmode' => 'prefer',
        ],

        'sqlsrv' => [
            'driver' => 'sqlsrv',
            'host' => env('DB_HOST', 'localhost'),
            'port' => env('DB_PORT', '1433'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'charset' => 'utf8',
            'prefix' => '',
            'prefix_indexes' => true,
        ],
    ],

    'migrations' => 'migrations',

    'redis' => [

        'client' => env('REDIS_CLIENT', 'predis'),

        'options' => [
            'cluster' => env('REDIS_CLUSTER', 'predis'),
        ],

        'default' => [
            'host' => env('REDIS_HOST', '127.0.0.1'),
            'password' => env('REDIS_PASSWORD', null),
            'port' => env('REDIS_PORT', 6379),
            'database' => env('REDIS_DB', 0),
        ],

        'cache' => [
            'host' => env('REDIS_HOST', '127.0.0.1'),
            'password' => env('REDIS_PASSWORD', null),
            'port' => env('REDIS_PORT', 6379),
            'database' => env('REDIS_CACHE_DB', 1),
        ],

    ],

];

.ENV

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
APP_NAME="MyProject"
APP_ENV=development
APP_KEY=base64:FlVBd61BUEzVx6ACa6OOn3Jrp4z+VRpug+F1K1ZeJOs=
APP_DEBUG=true
APP_URL=http://localhost

LOG_CHANNEL=stack

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=myDB
DB_USERNAME=root
DB_PASSWORD=
EN

回答 2

Stack Overflow用户

发布于 2020-12-28 14:50:13

我经历了一次相似问题,MarkB帮助了我。当SSH进入实例时,必须遵循一个特定的过程。

如果你跑

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
export

您可以看到,在Linux中没有名为RDS_HOSTNAME的变量,这就是您获得错误的原因。

如果你跑

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/opt/elasticbeanstalk/bin/get-config environment

您可以看到一个具有属性列表的对象,包括该RDS_HOSTNAME。

如果你跑

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/opt/elasticbeanstalk/bin/get-config environment -k RDS_USERNAME

您将获得与该特定属性关联的值。此值需要保存在变量中并导出,以便其他命令能够识别它。

如果你跑

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
export RDS_USERNAME="value"

当你跑的时候

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
export

你可以看到这个现在是可用的。

现在,如果您运行所需的命令,它可能会正常工作(您可能需要对RDS_USERNAME、RDS_PASSWORD和RDS_DB_NAME重复此操作)。

注意:如果这不起作用,那么您的问题可能与这一个类似。

票数 2
EN

Stack Overflow用户

发布于 2019-09-11 11:12:13

这是一个错误报告,可能与此问题有关。,long和short是,如果ConnectionFactory被传递给一个NULL值,它将(错误地)触发该错误。我怀疑所有的RDS变量都是空的。

若要设置这些值,请使用你可以按照这里的指示

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57891470

复制
相关文章
Laravel项目部署后,出现 file_put_contents ()
问题: 部署博客,服务器经常500 排查:查看laravel日志: file_put_contents () ,failed to open stream: No such file or directory;
陈大剩博客
2023/03/06
1.7K0
Laravel项目部署后,出现 file_put_contents ()
js -- 判断数组是否为空?
上面三种判断数组为空的方法虽然大多数情况下都可以用,但依然存在bug,比如令arr[-1] = ''时,数组不为空,但三者都返回true。
小蔚
2020/09/07
20.5K0
IOS数组为空的处理
某些情况下,后台可能由于各种原因,对某个字段返回了null值,这时我们取到的就是[NSNull null]这样一个对象,再比如说,后台可能对某一个数据取值,但取到了0个,这时返回的是一个空组,我们取到的就是@[],空组。 取到的array是一个NSNull对象。 NSNull是一个特殊的类,它和nil一样,也代表空值,但二者有区别,NSNull不接收NSArray的那些方法,它只有一个类方法: 因此判断数组是否为空,需要对各种情况都进行判断。 比如这种情况: ( "<null>", "<null>",
rectinajh
2018/05/17
3.4K0
VBA: 判断动态数组是否为空
文章背景:在VBA代码中,有时需要创建动态数组,然后对该动态数组进行操作。如果该数组为空,在使用一些函数(如Lbound,Ubound等)时,代码会报错。因此,需要事先判断动态数组是否为空。下面介绍一个判断动态数组是否为空的自定义函数。
Exploring
2022/09/20
4.9K0
在AWS云上的SAP
虽然最近亚马逊在迁离Oracle的数据库,使用Aurora PostgreSQL导致Prime Day促销日出现故障,但这似乎并不影响Amazon Aurora 数据库的推进,并且亚马逊一直在说Amazon Aurora兼容MySQL和PostgreSQL,是一种将数据库迁移到云的优秀工具。可见其要脱离Oracle的决心。而SAP也做出了同样的事情,在以前的SAP ERP系统里,SAP一直使用着别人的数据库,比如Oracle,后来SAP推出了HANA内存数据库,在S/4 HANA系列版本中,成功的使用了自己研发的数据库。可以看出这两家企业都想离开Oracle,所以合作是必然的事。
matinal
2019/01/04
2.3K0
在AWS云上的SAP
使用 Envoy 部署 Laravel 项目
我们的项目是基于 Git 托管,每次部署项目的时候都是登录服务器手动拉取,感觉很繁琐。
hedeqiang
2019/12/17
8130
laravel使用aws笔记
一、引入composer "aws/aws-sdk-php": "^3.137", "league/flysystem-aws-s3-v3": "^1.0" 二、添加配置 's3' => [ 'driver' => 's3', 'key' => env('AWS_ACCESS_KEY_ID'), #key 'secret' => env('AWS_SECRET_ACCESS_KEY'), #秘钥 're
苦咖啡
2020/05/12
1.2K0
【PHP】Largon 快速部署 Laravel 项目
Largon部署Laravel非常简单,只要对于PHP的一些组件进行相关了解即可:
阿东
2022/12/21
3.1K0
【PHP】Largon 快速部署 Laravel 项目
在Windows上安装Docker并部署Node项目
为啥要在Windows上装Docker呢?在Windows上又不能发挥Docker的优势!!
码客说
2021/03/23
4.1K0
腾讯云-云主机弹性伸缩
本文提供视频讲解,详细见地址:https://www.bilibili.com/video/BV1iv411v7xm
研究僧
2020/08/15
34.9K0
创建Django项目并将其部署在腾讯云上
这段时间在做scrapy爬虫,对爬出来的数据基于Django做了统计与可视化,本想部署在腾讯云上玩玩,但是因为以前没有经验遇到了一些问题,在这里记录一下:
py3study
2020/01/19
4.1K0
创建Django项目并将其部署在腾讯云上
关于Linux服务器部署laravel项目
关于Linux服务器部署laravel项目 这篇说下在Linux Ubuntu服务器中部署laravel项目吧 下载laravel5.5最新版(推荐使用composer) composer create-project --prefer-dist laravel/laravel laravel-wechat 我这里的laravel-wechat是我的项目名,你可以随便定义 接下来配置一个站点 sudo cp /etc/nginx/sites-available/default /etc/nginx/site
hedeqiang
2019/12/18
1.8K0
Oracle ASM diskgroup在主机重启后启动失败
环境:RHEL 6.4 + Oracle 11.2.0.3 + ASM单实例 1.重启主机后,+DATA diskgroup启动不成功,现象如下: [grid@JY-DB ~]$ crsctl stat res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE
Alfred Zhao
2019/05/24
1.5K0
在Laravel中使用数据库事务以及捕获事务失败后的异常
在Laravel中要想在数据库事务中运行一组操作,则可以在 DB facade 中使用 transaction 方法。如果在事务的闭包内抛出异常,事务将会被自动还原。如果闭包运行成功,事务将被自动提交。你不需要担心在使用 transaction 方法时还需要亲自去手动还原或提交事务:
全栈程序员站长
2022/07/08
1.3K0
在Laravel中使用数据库事务以及捕获事务失败后的异常
刷新页面后this.$route.params 为空
深入学习 vue-router时,按官方文档的教程看下来,结果发现刷新页面后,打印的this.$route.params 为空
赤蓝紫
2023/01/05
9560
刷新页面后this.$route.params 为空
Serverless无服务器架构详解
Serverless: 无服务器架构,即在无需管理服务器等底层资源的情况下完成应用的开发和运行,是云原生架构的核心组成部分。
zhayujie
2020/08/03
4.5K0
Serverless无服务器架构详解
js判断元素在不在数组中_js判断数组是否为空
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/180608.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/27
15.9K0
jq 判断是否为空,为空隐藏指定 div
<style>.mydiv{ width:300px; height:300px; background:red;}</style> <div class="mydiv">     <div class="content">          这是一句话,删除的话会让 mydiv display:none;          </div> </div> <script src="https://lib.baomitu.com/jquery/3.4.1/jquery.min.js"></script> <sc
Savalone
2020/02/11
7.1K0
点击加载更多

相似问题

AWS弹性豆柄-部署困境

23

AWS弹性豆柄部署令

11

AWS弹性豆柄部署失败

52

AWS弹性豆柄后部署脚本

12

在AWS弹性豆柄上部署Python

35
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文